Slashdot Mirror


New Attack Tool Exploits SSL Renegotiation Bug

Trailrunner7 writes "A group of researchers has released a tool that they say implements a denial-of-service attack against SSL servers by triggering a huge number of SSL renegotiations, eventually consuming all of the server's resources and making it unavailable. The tool exploits a widely known issue with the way that SSL connections work. The attack tool, released by a group called The Hacker's Choice, is meant to exploit the fact that it takes a lot of server resources to handle SSL handshakes at the beginning of a session, and that if a client or series of clients sends enough session requests to a given server, the server will at some point fail. The condition can be worsened when SSL renegotiation is enabled on a server. SSL renegotiation is used in a number of scenarios, but most commonly when there is a need for a client-side certificate. The authors of the tool say that the attack will work on servers without SSL renegotiation enabled, but with some modifications."

47 comments

  1. Gray list update by Anonymous Coward · · Score: 0

    Another thing to add to fail2ban... And then grey list the source ... Should only impact sites that can't be agile.

    -
      Help save SOA on Direct TV http://goo.gl/4ZLEa

    1. Re:Gray list update by yakatz · · Score: 1

      Great idea. Submit your regex back so that everyone can use it.
      https://github.com/fail2ban/fail2ban

  2. NON ISSUE by Anonymous Coward · · Score: 5, Informative

    This is like the 3rd or 4th SSL renegotation bug. The last one had only one fix: disable SSL renegotiation altogether. Firefox helped speed it along, but marking ssl servers that allowed renegotiation as insecure. And openssl released an updated version to drop support for it.

    So pretty much every SSL server has renegotiation disabled.

    IIRC it was this bug: CVE-2009-3555

    1. Re:NON ISSUE by BagOCrap · · Score: 1

      I recently noticed that myself. Had to re-enable SSL renegotiation via about:config so I could login to various secure websites with my smartcard.

      --
      -- Chaos, panic, pandemonium... My job here is done!
    2. Re:NON ISSUE by HTH+NE1 · · Score: 1

      Speaking of you, doesn't Woot! invite this kind of attack at least once a month?

      --
      Oh, say does that Star-Spangled Banner entwine / The myrtle of Venus with Bacchus's vine?
  3. Re:1st off... it's not SSL, it's TLS you dolts. by Anonymous Coward · · Score: 0

    The attack described isn't a problem with a specific cipher or hash. How is your encryption system's ability to change ciphers and hashes relevant?

  4. SSL renegotiation not required by CanEHdian · · Score: 2

    From what I have read, the renegotiation part only made the tool more effective, such that under optimal conditions a single laptop on ADSL was enough to bring down a server on a 30 gigabit connection. An SSL handshake still requires server resources, so perhaps we'll see this used in DDoS tools like LOIC.

    --
    When the copyright term is "forever minus a day", live every day like it's the last.
    1. Re:SSL renegotiation not required by d4fseeker · · Score: 2

      LOIC DDOS' mostly relies on large bandwiths to disable their target - regardless of the server's processing capacity.
      This issue can be tackled with 3 lines of iptables (ratelimit connections/time and concurrent connections), at least for low capacities.
      Most clients are perfectly capable of HTTP keep-alive and thus we can set the limit significantly lower on HTTPS than on HTTP; all we need is a reverse proxy between Apache and the clients or apache mpm_event.

  5. Facebook API now requires SSL/TLS by crazybit · · Score: 2

    Considering Facebook API now requires SSL/TLS for Facebook Apps, many servers had to turn on HTTPS just for this. It's just a matter of time until we see this widely exploited.

    --
    - Human knowledge belongs to the world
    1. Re:Facebook API now requires SSL/TLS by Anonymous Coward · · Score: 0

      Nov. 5?

    2. Re:Facebook API now requires SSL/TLS by Anonymous Coward · · Score: 0

      Wait - you're complaining that they're forcing the migration to HTTPS?

  6. Re:1st off... it's not SSL, it's TLS you dolts. by Anonymous Coward · · Score: 1

    2ndly, that crap's just plain broken. Look, when I heard MD5 (and later SHA1) MIGHT be vulnerable to some kinds of attacks, I just upgraded to a better hash with no known exploits.

    The sooner we adopt IPv6 & DNSSEC the better. Oh, it's expensive? Well, who's fault is it that your companies didn't PLAN TO UPGRADE... EVER!?

    Just for the hell of it I wrote an encryption system & protocol for my game's network protocol that's extensible to whatever block length you want, and accepts any cipher -- even "ONE WAY" ciphers (hashes) -- resulting in PSK + PKI reversible encryption and identity services. Right now it's running on SHA256, and I just drop in a SHA512 algorithm's function pointer when I want to upgrade. The protocol auto negotiates down to the "minimum allowed" -- Wait -- What I mean is: THIS SHIT'S NOT HARD, FIX THE DAMN THING YOU CHEAP BASTARDS.

    Cry me a river, I've got a bridge to test out.

    Oh my bajeebus! You figured out howto use dependency injection and delegates! Get this person a gold star and a green gumball! Now get this to work outside of your walled garden, across multiple Arch's, OS's, and software in a way that equally benefits all, write the rfc and get it promoted into a standard.

  7. Is it a Bug? by allo · · Score: 3, Interesting

    Sounds more like a protocol flaw than a bug.

    1. Re:Is it a Bug? by Anonymous Coward · · Score: 0

      Is it a protocol flaw that you can make as many HTTP requests as you want in a keepalive connection? Save of course, optional server-side forced closures.

  8. Apache Server Settings by triemer · · Score: 4, Informative

    #1 - this has been a topic of conversation for a while #2 - per documentation at apache (Yes, I dare say a majority of web servers are running apache) There is a flag that can turn renegotiation on/off http://httpd.apache.org/docs/2.0/mod/mod_ssl.html Available in httpd 2.0.64 and later, if using OpenSSL 0.9.8m or later The default setting is: SSLInsecureRenegotiation off #3 - which leads to the conclusion that this is overhyped.

    1. Re:Apache Server Settings by Anonymous Coward · · Score: 0

      how can a real DoS attacks that affects a significant percentage of the web servers be considered overhyped? your facebook might be unaffected but all sites using client-side certificates such as your bank and your corporate website are

    2. Re:Apache Server Settings by Anonymous Coward · · Score: 1

      how can a real DoS attacks that affects a significant percentage of the web servers be considered overhyped?

      Here is how:

      #2 - per documentation at apache (Yes, I dare say a majority of web servers are running apache) There is a flag that can turn renegotiation on/off http://httpd.apache.org/docs/2.0/mod/mod_ssl.html [apache.org] Available in httpd 2.0.64 and later, if using OpenSSL 0.9.8m or later The default setting is: SSLInsecureRenegotiation off #3 - which leads to the conclusion that this is overhyped.

      Or since you obviously didn't get it the first time- this is old news, old exploit, old old old. The only news here is that somebody released a new tool to do it for you. Or in other words, the haxxors are using slashdot as a marketing platform again.

    3. Re:Apache Server Settings by Anonymous Coward · · Score: 0

      You're wrong, wrong and wrong. Everything in your post is about an older SSL issue, which has nothing to do with this current DoS one. You can't even disable SSL renegotiations with that setting, you can only disable INSECURE renegotiations.

    4. Re:Apache Server Settings by Anonymous Coward · · Score: 0

      #2 is invalid. Even if you turn re-negoation off you are still vulnerable simply by using SSL.

  9. This was released few days ago by Anonymous Coward · · Score: 0

    I've already had my fun with it. It took out over 1/2 of the stuff I hit with it.

  10. Who needs tools when we have wget? by Mereel · · Score: 2

    for i in {1..10}; do (while true; do wget https://poor.server; done)& done

    A dedicated tool may be even more efficient, but bash and wget do the trick too.

  11. Analysis of this from TLS WG Chair by cullenfluffyjennings · · Score: 1

    Good analysis of this at
    http://www.educatedguesswork.org/2011/10/ssltls_and_computational_dos.html

    As far as I can tell, Rescorla is trying to polity say this attack is crap. Shocking, yet another low grade hack trying to up publicity.

    1. Re:Analysis of this from TLS WG Chair by Mysteray · · Score: 1

      It's a real attack and a real DoS vector. SSL/TLS is definitely weak in this regard.

      But it's not new and it doesn't have much to do with renegotiation.

  12. yawn by Anonymous Coward · · Score: 0

    yawn yawn

  13. https not the only thing to test by jroysdon · · Score: 1

    pop3s, imaps, smtps, etc. anything that uses ssl should be tested and is probably vuln (quick dovecot & sendmail tests were). I'd really like to see the "private" code that works w/o renegotiation in order to test against https.

  14. !New by Anonymous Coward · · Score: 0

    This isn't new, hell, I made a nearly identical tool as part of my final year project for my IT Security degree. Not hard to identify a system's most resource intensive procedure and cause the system to repeat it as much as possible, whether is be a search frontend to a SQL database which executes a particularly intensive query or file descriptor exhaustion. Identify the limitations and weaknesses which cause a fail state and exploit them, tada, DoS.

    1. Re:!New by gl4ss · · Score: 1

      how come there's no flood protection?

      per ip it would cause some big natted networks(looking at you cellphone operators) to get blacklisted I suppose but still..

      --
      world was created 5 seconds before this post as it is.
  15. It worked for the wrong reason. by WaffleMonster · · Score: 2

    This tool excels in finding bugs and session cache synchronization deadlocks in the latest daily snapshots of openssl.. I found two within 2 minutes..

    1. Re:It worked for the wrong reason. by Tomato42 · · Score: 1

      Oh, so it's like siege, but for SSL? neat!

  16. ..Researchers, Hackers, Authors. Now who? by Barryke · · Score: 1

    ..Researchers, Hackers, Authors. Sounds like lots of people are involved, or are they all hackers (since they simply released it in the wild, i wouldn't say researchers)

    "A group of researchers has released a tool that they say implements a denial-of-service attack against SSL servers by triggering a huge number of SSL renegotiations, eventually consuming all of the server's resources and making it unavailable. The tool exploits a widely known issue with the way that SSL connections work. The attack tool, released by a group called The Hacker's Choice, is meant to exploit the fact that it takes a lot of server resources to handle SSL handshakes at the beginning of a session, and that if a client or series of clients sends enough session requests to a given server, the server will at some point fail. The condition can be worsened when SSL renegotiation is enabled on a server. SSL renegotiation is used in a number of scenarios, but most commonly when there is a need for a client-side certificate. The authors of the tool say that the attack will work on servers without SSL renegotiation enabled, but with some modifications."

    --
    Hivemind harvest in progress..
    1. Re:..Researchers, Hackers, Authors. Now who? by Anonymous Coward · · Score: 0

      Coincidentally these Hackers happen to do Research and Author software as a result of that research...

  17. iptables by ls671 · · Score: 3, Informative

    INTIF2=vmnet1
    PORTFWIP2=192.168.4.38

    $IPTABLES -A rule_j14 -m limit --limit 120/minute --limit-burst 50 -j ACCEPT
    $IPTABLES -A rule_j14 -m limit --limit 1/minute -j LOG --log-prefix "wharf"
    $IPTABLES -A rule_j14 -j DROP

    let i=0
    while [ $i -lt $EXTIF_LIST_SIZE ]
    do
    for redirport in 25 587 995 21 113 22 563 119
    do

    $IPTABLES -A INPUT -i ${EXTIF_LIST[i]} -p tcp --dport ${redirport} \
    -m state --state NEW -m limit --limit 1/minute \
    -j LOG --log-prefix "wharf wharf"

    $IPTABLES -A INPUT -i ${EXTIF_LIST[i]} -p tcp --dport ${redirport} \
    -m state --state NEW -j DROP
    $IPTABLES -A FORWARD -i ${EXTIF_LIST[i]} -o $INTIF2 -d ${MAIL_FW_IP[i]} -p tcp \
    --dport $redirport -m state --state NEW -j rule_j14

    $IPTABLES -A FORWARD -i ${EXTIF_LIST[i]} -o $INTIF2 -d ${MAIL_FW_IP[i]} -p tcp \
    --dport $redirport -m state --state ESTABLISHED,RELATED -j ACCEPT

    $IPTABLES -A PREROUTING -t nat -p tcp -d ${EXTIP_LIST[i]} --dport $redirport \
    -m state --state NEW -m hashlimit --hashlimit 60/hour --hashlimit-burst 15 \
    --hashlimit-htable-expire 3600000 --hashlimit-mode srcip,dstport \
    --hashlimit-name j14-${redirport} \
    -j DNAT --to ${MAIL_FW_IP[i]}:$redirport

    done
    let i=$i+1
    done

    --
    Everything I write is lies, read between the lines.
    1. Re:iptables by Anonymous Coward · · Score: 0

      My eyes are bleeding - why is iptables still so damn fugly? I mean, by now the developers have seen IPFW and PF, amongst others, yet they still keep a tool that looks like a cat was dancing on the keyboard whilst the perl interpreter was running.

      Fix it now!

    2. Re:iptables by Anonymous Coward · · Score: 0

      Fix it you and illuminate all of us.
      Put up or shut up.

    3. Re:iptables by higuita · · Score: 1

      hey, you can always post the same script in IPFW/PF so we can compare...

      just in case you didnt read. that is (part of) a script, full of long variable names... yes, their names could be better, the rule_j14 is weird name, the multi-line makes it harder to read... bug again, this is clearly just a small part of s bigger script and the user ls671 didnt wanted to clean it up... simply because the idea is there, adapt that for your own use.

      --
      Higuita
    4. Re:iptables by sgt+scrub · · Score: 1

      for redirport in 25 587 995 21 113 22 563 119

      Not allowing any 443 (HTTPS) traffic should do the trick :P IMHO I would rethink allowing ftp and ssh from the outside world.

      --
      Having to work for a living is the root of all evil.
    5. Re:iptables by Anonymous Coward · · Score: 0

      My eyes are bleeding - why is iptables still so damn fugly? I mean, by now the developers have seen IPFW and PF, amongst others, yet they still keep a tool that looks like a cat was dancing on the keyboard whilst the perl interpreter was running.

      Fix it now!

      Translation: I'm too lazy to get off my ass and learn iptables. There are pretty GUIs included with most linux distributions you might be happier with.

    6. Re:iptables by Anonymous Coward · · Score: 0

      Translation: I know FreeBSD or similar and have used a good but easy to configure firewall. Why in the hell would I want to run Linux and use iptables?

      Let's see... FreeBSD, OpenBSD, NetBSD, DragonFly BSD, MidnightBSD, MirBSD and Mac OS X all have firewalls that are easier to use.

    7. Re:iptables by Anonymous Coward · · Score: 0

      Try Shorewall. Using IPtables directly is rather low-level and indeed very ugly. C++-with-Perl-Regex ugly.

  18. hmmmm by sgt+scrub · · Score: 1

    Don't SSL renegotiations have, or follow, packets with the PSH flag set? I'll have to check it out; but, I seem to remember it looks like one or the other. If someone knows off the top of their head it would be helpful.

    --
    Having to work for a living is the root of all evil.
    1. Re:hmmmm by sgt+scrub · · Score: 1

      It looks like PSH is set ON the renegotiation packet.

      08:54:25.852659 IP localhost.localdomain.51515 > localhost.localdomain.6060: Flags [P.], seq 1:62, ack 1, win 513, options [nop,nop,TS val 19313608 ecr 19313608], length 61
      08:54:25.852793 IP localhost.localdomain.51516 > localhost.localdomain.6060: Flags [P.], seq 1:62, ack 1, win 513, options [nop,nop,TS val 19313609 ecr 19313609], length 61

      --
      Having to work for a living is the root of all evil.
  19. Releasing this so called tool by Stan92057 · · Score: 1

    Releasing this so called tool is just a hand out for the criminals that will use it. Why release such a dangerous tool to the public?

    --
    Jack of all trades,master of none
    1. Re:Releasing this so called tool by Anonymous Coward · · Score: 0

      Releasing this so called tool is just a hand out for the criminals that will use it. Why release such a dangerous tool to the public?

      Because shining a light on security flaws and potential attack vectors is one of the best motivators for the community as a whole to address the problem.

  20. I'm the guy who found CVE-2009-3555 renego bug by Mysteray · · Score: 1

    This is not a bug. We fixed renegotiation with the RFC 5746 RI extension! That said, SSL has long been known to impose more work on the server than on the client and renegotiations are no different than initial handshakes in this respect.

    Servers that accept client-initiated renegotiation make things slightly more efficient for the DoS attacker, it saves him maybe three packets. More significantly, it may bypass mitigations that are only looking for TCP SYN packets. But the attacker's mileage will vary.

    Eric Rescorla (SSL/TLS RFC author) has a good blog post about the issue. http://www.educatedguesswork.org/2011/10/ssltls_and_computational_dos.html