Cryptographers Break Commonly Used RC4 Cipher
Sparrowvsrevolution writes "At the Fast Software Encryption conference in Singapore earlier this week, University of Illinois at Chicago Professor Dan Bernstein presented a method for breaking TLS and SSL web encryption when it's combined with the popular stream cipher RC4 invented by Ron Rivest in 1987. Bernstein demonstrated that when the same message is encrypted enough times--about a billion--comparing the ciphertext can allow the message to be deciphered. While that sounds impractical, Bernstein argued it can be achieved with a compromised website, a malicious ad or a hijacked router." RC4 may be long in the tooth, but it remains very widely used.
This is the cipher known as 'arcfour' in SSH. I use it regularly when speed is more important than security, which is frequently. I'm not sending a billion of the same files anywhere, so I will continue to use it.
Give me Classic Slashdot or give me death!
Many of the available PCI-type scanning tools seem to recommend it, so this is wonderful. Certainly sounds riskier than the recent BEAST vulnerability.
I'm sure this will lead to a few new entries on my gibsonindex.org cyber attack severity ranking project, as people find ways to apply this attack vector. :(
Anyone know what Cipher Suite configuration is the "safest" now? :)
Last time I checked, Gmail was negotiating RC4. For scale reasons?
I always change my message after the 999,999,999th time I send it with the same encryption key.
"Have you ever thought about just turning off the TV, sitting down with your kids, and hitting them?"
If I understood the article, the reported RC4 weakness is known since so long ago there is a RFC about it (rfc4345) that TLS implementation just ignores. SSH also uses RC4 in a non-vulnerable way, and that's why it's not broken, and it's perfectly possible to have a secure RC4 algorithm by simply discarding the first N bytes, where N>1000.
3
ab
abc
bca
I just went through my exchange server today disabling weak ciphers. Now this one will be on the list.
So, all the various PCI scanners tell you to use RC4-based crypto due to BEAST, which is pretty hard to pull off, now suddently we won't be able to able to use RC4 anymore, but TLS v1.2 and up aren't available in IE8 (XP) or older version of Firefox and I believe. So, now what?
isn't this similar to how WEP was broken?
If the LTS vendors could backport TLS 1.2, that would solve many headaches.
You can't even be sure to have Server Name Indication on a smartphone. Entry-level smartphones still come with Android 2.3, whose TLS stack lacks SNI support, and without SNI, they can't see the certificate for more than one site on port 443 of a given IPv4 address.
it implies that you need to compromise something else to be able to inject data that's repeated a billion times.
If a known plaintext is good enough, you could use an image or just the <!DOCTYPE HTML><html><head> at the beginning of every HTML5 document. Or by "inject" did you specifically refer to chosen plaintext?
now suddently we won't be able to able to use RC4 anymore, but TLS v1.2 and up aren't available in IE8 (XP)
Show users of IE on Windows XP a countdown timer in days, hours, minutes, and seconds until the planned end of support for Windows XP. "Microsoft has announced that on April 8, 2004, it will stop providing security updates for your PC's operating system. In the meantime, we recommend accessing our web site using Google Chrome or Mozilla Firefox web browser. [ Get Chrome ] [ Get Firefox ]"
I don't always catch all mistakes in preview. The correct date is just over a year from today, or April 8, 2014.
I'm just trying to do something good.
Feeding the trolls doesn't count.
Like the troll said: HAH-HAH!!
I've even been telling people to use it, in a local wiki. Oops. I docced how to make bru use a different machine's tape drive in broken-tape-drive emergencies, and suggested throwing in a "-c arcfour256" or "-c blowfish-cbc" for speed, but hadn't benchmarked which was faster so I didn't know which was best.
Now I know which one is best, I guess. (?) Not that it matters what cipher (I'd be happy to use none or rot13 in this use case) I use for an emergency backup or restore on a LAN, but ...
*sigh* Bring on the AES hardware. Not that it'll do much good with our machines from the year 2004...
If the website is compromised does the SSL connection matter anymore?
If one pass of RC4 is too weak, just run it through again to make it ultra encrypted! :)
We will be fine, they haven't broken double-ROT13 yet!
I run tests on RC4 years ago, run it thru a plain text file full of the same char repeated and then run through RC4, guess what? Oh the password is showing every 256 chars, hence the "weak" key. I developed a newer version of RC4 called RC64, uses a 64K (65536 or 256 ^ 2) key. The randomisation process is very complex and the algo was only just slightly slower than RC4, which is very fast anyway. A graphical representation of the 64K key visualized pure white-noise when the key was viewed in grey-scale. They need to start using mine me thinks :) Oh, and in a 50MB file full of the same repeated char, the password was not even hinted at and no 4 bytes were the same.
From TFA: "The gigantic number of identical messages that must be sent to break the scheme might seem reassuring. The attack in its current form takes close to 32 hours to perform. But Paterson points out that an attacker could use a malicious ad, a hijacked portion of a website, or a compromised router to feed the identical message to a user again and again unbeknownst to the victim.
NoScript is your friend, again.
Almost all parts of SSL in common use are compromised to some degree.
The BEAST attack (theoretically) compromises every common and strong SSL cypher other than RC4 and the march to newer TLS versions that offer protection for them is slow, not least in the webserver packages common Linux distros come with.
RC4 provides reasonably good security as long as you don't use it for things it wasn't meant for. (Rule#1 of RC4 club is "Never encrypt the same stuff twice".) Bernstein's attack is interesting, because he's using TLS/SSL to push RC4 to do things it wasn't meant to do.
Bill Stewart
New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
TLS 1.1 support is enabled by default in Chrome. Read about that here.
If you want TLS 1.2 in chrome, please star this bug.
As for Firefox, TLS 1.1 and 1.2 support are still not ready. If you want to help, vote for this bug, this bug, this bug, and this bug.
The bugs to get TLS 1.2 support into Firefox are this one and this one.
Both Opera and IE support TLS 1.1 and 1.2. If you want to see this in Firefox and Chrome, vote for the bugs above. But, please don't comment on the bugs. That won't help.
RC4 was useful as a workaround for BEAST. Now we need to throw out RC4, we need another workaround for BEAST
The Right Way would be to use TLS 1.1 or TLS 1.2, but they re not supported by some browsers (e.g.: Mozilla).
What about working around the problem in the web server? BEAST relies on session cookies being at a fixed offset. If I add a random length cookie that is changed on each server reply, I understand I break BEAST assumption. Am I right? Writing an Apache module to do that would be quite straightforward. Perhaps it already exists?