Jump to content

Nytro

Administrators
  • Posts

    18801
  • Joined

  • Last visited

  • Days Won

    745

Everything posted by Nytro

  1. Attack of the week: POODLE Believe it or not, there's a new attack on SSL. Yes, I know you're thunderstruck. Let's get a few things out of the way quickly. First, this is not another Heartbleed. It's bad, but it's not going to destroy the Internet. Also, it applies only to SSLv3, which is (in theory) an obsolete protocol that we all should have ditched a long time ago. Unfortunately, we didn't. Anyway, enough with the good news. Let's get to the bad. The attack is called POODLE, and it was developed by Bodo Möller, Thai Duong and Krzysztof Kotowicz of Google. To paraphrase Bruce Schneier, attacks only get better -- they never get worse. The fact that this attack is called POODLE also tells us that attack names do get worse. But I digress. The rough summary of POODLE is this: it allows a clever attacker who can (a) control the Internet connection between your browser and the server, and ( run some code (e.g., script) in your browser to potentially decrypt authentication cookies for sites such as Google, Yahoo and your bank. This is obviously not a good thing, and unfortunately the attack is more practical than you might think. You should probably disable SSLv3 everywhere you can. Sadly, that's not so easy for the average end user. To explain the details, I'm going to use the usual 'fun' question and answer format I employ for attacks like these. What is SSL? SSL is probably the most important security protocol on the Internet. It's used to encrypt connections between two different endpoints, most commonly your web browser and a web server. We mostly refer to SSL by the dual moniker SSL/TLS, since the protocol suite known as Secure Sockets Layer was upgraded and renamed to Transport Layer Security back in 1999. This bug has nothing to do with TLS, however. It's purely a bug in the old pre-1999 SSL, and specifically version 3 -- something we should have ditched a long time ago. Unfortunately, for legacy reasons many browsers and servers still support SSLv3 in their configurations. It turns out that when you try to turn this option off, a good portion of the Internet stops working correctly, thanks to older browsers and crappy load balancers, etc. As a result, many modern browsers and servers continue to support SSLv3 as an option. The worst part of this is that in many cases an active attacker can actually trigger a fallback. That is, even if both the server and client support more modern protocols, as long as they're willing to support SSLv3, an active attacker can force them to use this old, terrible protocol. In many cases this fallback is transparent to the user. What's the matter with SSL v3? So many things it hurts to talk about. For our purposes we need focus on just one. This has to do with the structure of encryption padding used when encrypting with the CBC mode ciphersuites of SSLv3. SSL data is sent in 'record' structures, where each record is first authenticated using a MAC. It's subsequently enciphered using a block cipher (like 3DES or AES) in CBC mode. This MAC-then-encrypt design has been the cause of much heartache in the past. It's also responsible for the problems now. Here's the thing: CBC mode encryption requires that the input plaintext length be equal to a multiple of the cipher's block size (8 bytes in the case of 3DES, 16 bytes for AES). To make sure this is the case, SSL implementations add 'padding' to the plaintext before encrypting it. The padding can be up to one cipher block in length, is not covered by the MAC, and always ends with a single byte denoting the length of the padding that was added. In SSLv3, the contents of the rest of the padding is unspecified. This is the problem that will vex us here. How does the attack work? Let's imagine that I'm an active attacker who is able to obtain a CBC-encrypted record containing an interesting message like a cookie. I want to learn a single byte of this cookie -- and I'm willing to make the assumption that this byte happens to live at the end of a cipher block boundary. (Don't worry about how I know that the byte I want to learn is in this position. Just accept this as a given for now.) Imagine further that the final block of the record in question contains a full block of padding. If we're using AES as our cipher, this means that the last byte of the plaintext of the final block contains a '15' value, since there are 15 bytes of padding. The preceding 15 bytes of said block contain arbitrary values that the server will basically strip off and ignore upon decryption, since SSLv3 doesn't specify what they should contain. (NB: TLS does, which prevents this issue.) The attack works like this. Since I control the Internet connection, I can identify the enciphered block that I want to learn within an encrypted record. I can then substitute (i.e., move) this block in place of the final block that should contain only padding. When the server receives this new enciphered record, it will go ahead and attempt to decrypt the final block (which I'll call C_n) using the CBC decryption equation, which looks like this: Decrypted final block := Decipher(C_n) XOR C_{n-1} Note that C_{n-1} is the second-to-last block of the encrypted record. If the decrypted final block does not contain a '15' in the final position, the server will assume either that the block is bogus (too much padding) or that there's less padding in the message than we intended. In the former case it will simply barf. In the latter case it will assume that the meaningful message is longer than it actually is, which should trigger an error in decryption since MAC verification will fail. This should also terminate the SSL connection. Indeed, this is by far the most likely outcome of our experiment, since the deciphered last byte is essentially random -- thus failure will typically occur 255 out of every 256 times we try this experiment. In this case we have to renegotiate the handshake and try again. Every once in a while we'll get lucky. In 1/256 of the cases, the deciphered final block will contain a 15 byte at the final position, and the server will accept this as as a valid padding length. The preceding fifteen bytes have also probably been changed, but the server will then strip off and ignore those values -- since SSLv3 doesn't care about the contents of the padding. No other parts of the ciphertext have been altered, so decryption will work perfectly and the server should report no errors. This case is deeply meaningful to us. If this happens, we know that the decipherment of the final byte of C_n, XORed with the final byte of the preceding ciphertext block, is equal to '15'. From this knowledge we can easily determine the actual plaintext value of the original byte we wanted to learn. We can recover this valueby XORing it with the final byte of the preceding ciphertext block, then XOR that with the last byte of the ciphertext block that precedes the original block we targeted. Voila, in this case -- which occurs with probability 1/256 -- we've decrypted a single byte of the cookie. The important thing to know is that if at first we don't succeed, we can try, try again. That's because each time we fail, we can re-run the SSL handshake (which changes the encryption key) and try the attack again. As long as the cookie byte we're attacking stays in the same position, we can continue our attempts until we get lucky. The expected number of attempts needed for success is 256. We've got one byte, how do we get the rest? The ability to recover a single byte doesn't seem so useful, but in fact it's all we need to decipher the entire cookie -- if we're able to control the cookie's alignment and location within the enciphered record. In this case, we can simply move one byte after another into that critical final-byte-of-the-cipher-block location and run the attack described above. One way to do this is to trick the victim's browser into running some Javascript we control. This script will make SSL POST requests to a secure site like Google. Each time it does so, it will transmit a request path first, followed by an HTTP cookie and other headers, followed by a payload it controls. [TABLE=class: tr-caption-container, align: center] [TR] [TD=align: center][/TD] [/TR] [TR] [TD=class: tr-caption, align: center]Source: Möller et al.[/TD] [/TR] [/TABLE] Since the script controls the path and payload, by varying these values and knowing the size of the intermediate headers, the script can systematically align each specific byte of the cookie to any location it wants. It can also adjust the padding length to ensure that the final block of the record contains 16 bytes of padding. This means that our attack can now be used to decrypt an entire cookie, with an average of 256 requests per cookie byte. That's not bad at all. So should we move to West Virginia and stock up on canned goods? Maybe. But I'm not so sure. For a few answers on what to do next, see Adam Langley and Rob Graham's blog posts on this question. Note that this entire vulnerability stems from the fact that SSLv3 is older than Methuselah. In fact, there are voting-age children who are younger than SSLv3. And that's worrying. The obvious and correct solution to this problem is find and kill SSLv3 anywhere it lurks. In fact, this is something we should have done in the early 2000s, if not sooner. We can do it now, and this whole problem goes away. The problem with the obvious solution is that our aging Internet infrastructure is still loaded with crappy browsers and servers that can't function without SSLv3 support. Browser vendors don't want their customers to hit a blank wall anytime they access a server or load balancer that only supports SSLv3, so they enable fallback. Servers administrators don't want to lock out the critical IE6 market, so they also support SSLv3. And we all suffer. Hopefully this will be the straw that breaks the camel's back and gets us to abandon obsolete protocols like SSLv3. But nobody every went bankrupt betting on insecurity. It's possible that ten years from now we'll still be talking about ways to work around POODLE and its virulent flesh-eating offspring. All we can do is hope that reason will prevail. Posted by Matthew Green at 8:26 PM Sursa: A Few Thoughts on Cryptographic Engineering: Attack of the week: POODLE
  2. Mda, am vrea noi Poate pe blackmarket-urile rusesti la ceva sute de mii de dolari.
  3. Microsoft Patches 3 Zero-day Vulnerabilities actively being Exploited in the Wild Wednesday, October 15, 2014 Swati Khandelwal As part of monthly patch update, Microsoft released eight security bulletins on Tuesday that address dozens of vulnerabilities including a zero-day flaw reportedly being exploited by Russian hackers to target NATO computers and a pair of zero-day Windows vulnerabilities that attackers have been exploiting to penetrate major corporations' networks. Just a day before yesterday, our team reported you about a Zero-day vulnerability discovered by the cyber intelligence firm iSight Partners affecting all supported versions of Microsoft Windows and is being exploited in a five-year old cyber-espionage campaign against the Ukrainian government and U.S organisations. Researchers at FireEye found two zero-day flaws, used in separate, unrelated attacks involving exploitation of Windows kernel, just a day after iSight partners disclosed zero-day in Windows. The pair of zero-day vulnerabilities could allow an attacker to access a victim's entire system. According to the researchers at FireEye, the two of three so-called zero-day flaws are being actively exploited in the wild by hackers and are being used as "part of limited, targeted attacks against some major corporations." Microsoft updates for the month of October 2014 Patch Tuesday address several vulnerabilities in all currently supported versions of Windows, Internet Explorer, Office, Sharepoint Server and the .Net framework. Three of the bulletins are marked "critical" and rest are "important" in severity. Systems administrators are recommended to apply the patches immediately for the critical updates. The zero-day flaw (CVE-2014-4114) discovered by iSight partners in all supported versions of Microsoft Windows and Windows Server 2008 and 2012 that is being exploited in the "Sandworm" cyberattack, are patched as part of MS14-060. Microsoft rated Bulletin MS14-060 as important rather than critical because it requires a user to open a Microsoft Office file to initiate the remote code execution. "The vulnerability [exists in Windows OLE] could allow remote code execution if a user opens a Microsoft Office file that contains a specially crafted OLE object," Microsoft warned in its bulletin. "An attacker who successfully exploited this vulnerability could run arbitrary code in the context of the current user." (OLE is Microsoft technology for creating complex documents that contain a combination of text, sound, video and other elements.) However, the two zero-days discovered by FireEye are patched as part of MS14-058 and are marked critical. They are designated CVE-2014-4148 and CVE-2014-4113. "We have no evidence of these exploits being used by the same actors. Instead, we have only observed each exploit being used separately, in unrelated attacks," FireEye explained. CVE-2014-4148 exploits a vulnerability in TrueType Font (TTF) processing. TTF processing is performed in kernel mode as part of the GDI and has been the source of critical vulnerabilities in the past as well. The vulnerability affects Windows 8.1/Windows Server 2012 R2, Windows 8/Windows Server 2012, Windows 7/Windows Server 2008 R2 (Service Pack 0 and 1) and Windows XP Service Pack 3. It affects both 32-bit and 64-bit versions of the Operating System, but the attacks have only been observed against 32-bit systems. However, CVE-2014-4113 is a local Elevation of Privilege (EoP) vulnerability that affects all versions of Windows including Windows 7, Vista, XP, Windows 2000, Windows Server 2003/R2, Windows Server 2008/R2, Windows 8.x and Windows Server 2012/R2. Out of remaining bulletins, two are rated critical, both address remote code execution vulnerability in Internet Explorer and Microsoft .NET Framework respectively. Remaining bulletins are rated important in severity, include elevation of privilege bugs, Security Feature Bypass, and a remote code execution flaw. Sursa: Microsoft Patches 3 Zero-day Vulnerabilities actively being Exploited in the Wild Faceti update!
  4. I-am contactat pe cei de la Arrow Electronics si: "this company is not affiliated with Arrow in any way and our legal team has taken steps to have our name removed from their website. thank you for alerting us of this issue."
  5. Dorian Prodan - 15 oct 2014 2014 nu a fost un an prea grozav din punct de vedere al securit??ii, acesta fiind marcat de descoperirea unor bre?e majore de securitate precum Heartbleed sau Shellshock ?i compromiterea repetat? a datelor private ale utilizatorilor. Pe lista ve?tilor nepl?cute se mai adaug? o noutate, un grup de trei cercet?tori din cadrul Google anun?ând ieri descoperirea unei noi bre?e de securitate în cadrul protocolului de criptare SSLv3 care poate fi exploatat? pentru sustragerea datelor personale din toate browsere-le Web prezente pe pia??. Protocolul de criptare SSL nu este pentru prima oar? subiectul unor astfel de ?tiri, o parte din echipa de cercetare Google care a descoperit noua vulnerabilitate având meritul de a fi descoperit ?i alte dou? metode de exploatare a vulnerabilit??ilor din acela?i protocol în 2011 ?i 2012: BEAST ?i CRIME. Denumit? POODLE, adic? Padding Oracle On Downgraded Legacy Encryption, noua metod? de atac vizeaz? protocolul de criptare SSLv3 ?i permite organizarea unui atac de tip Man-in-the-middle prin care se pot sustrage datele utilizatorilor care sunt transferate securizat prin HTTPS. SSLv3 este, din punct de vedere tehnologic, o antichitate care a fost înlocuit? de mult? vreme de TLS (1.0, 1.1 sau 1.2). În mod normal, atunci când un serviciu Web ?i un browser negociaz? parametrii stabilirii unei conexiuni securizate HTTPS, acestea aleg cea mai puternic? criptare disponibil? pe care ambele o pot în?elege. În cele mai multe cazuri, este vorba de TLS, îns? unele browsere sau servicii Web vechi nu implementeaz? deloc acest protocol sau au o implementare defectuoas?, iar SSL este urm?toarea solu?ie aleas?. Pentru a p?stra aceast? compatibilitate, chiar ?i browser-ele moderne includ în continuare compatibilitatea cu vechiul protocol SSL, iar cercet?torii au exploatat tocmai prezen?a acesteia pentru a pune la punct atacul POODLE. Putând fi ini?iat, de pild?, pe un punct de acces wireless, atacul p?c?le?te într-o prim? faz? serviciul Web ?i-l face s? cread? c? protocolul de criptare TLS este indisponibil. Dup? ce protocolul SSLv3 este selectat ca solu?ie alternativ?, atacatorii încep s? modifice pachetele HTTPS ?i, prin încerc?ri repetate care au o rat? de succes de 1:256, ob?in bit cu bit întregul fi?ier cookie securizat al sesiunii. Odat? afla?i în posesia acestuia, atacatorii pot impersona utilizatorul legitim ?i ob?ine acces deplin la serviciul online ?i la datele utilizatorilor. Deoarece SSLv3 este implementat atât la nivelul clien?ilor cât ?i al serverelor, singura rezolvare este renun?area treptat? la suportul pentru acesta. CloudFlare a anun?at deja c? va elimina suportul SSLv3 de pe serverelor lor, iar Google ?i Mozilla au anun?at c?-l vor elimina din browser-ele lor în lunile urm?toare. Pân? atunci, utilizatorii pot dezactiva complet suportul din browser-ele Internet Explorer, Mozilla Firefox sau Google Chrome (instruc?iuni aici ?i aici). Aceast? eliminare a suportului SSLv3 va afecta utilizatorii browser-elelor vechi precum Internet Explorer 6, îns? CloudFlare afirm? c? traficul SSLv3 reprezint? doar 0,65 din cel global, deci impactul s-ar putea dovedi a fi mult mai mic decât am fi crezut la o prim? vedere. Sursa: POODLE: un protocol de criptare antic pune în pericol browser-ele moderne
  6. [h=1]Black Hat USA 2014 - Windows: Windows Kernel Graphics Driver Attack Surface[/h]
  7. [h=1]Black Hat USA 2014 - Windows: Abusing Microsoft Kerberos Sorry You Guys Don't Get It[/h]
  8. [h=1]Black Hat USA 2014 - SCADA: Why Control System Cyber Security Sucks[/h]
  9. [h=1]Black Hat USA 2014 - SCADA: Bringing Software Defined Radio to the Penetration Testing Community[/h]
  10. [h=1]Black Hat USA 2014 - Reverse Engineering: SATCOM Terminals Hacking by Air, Sea, and Land[/h]
  11. [h=1]Black Hat USA 2014 - Reverse Engineering: Reverse Engineering Flash Memory for Fun and Benefit[/h]
  12. [h=1]Black Hat USA 2014 - Reverse Engineering: Capstone Next Generation Disassembly Framework[/h]
  13. [h=1]Black Hat USA 2014 - Policy: Nobody is Listening to Your Phone Calls Really A Debate & Discussion[/h]
  14. [h=1]Black Hat USA 2014 - Policy: Governments As Malware Authors The Next Generation[/h]
  15. [h=1]Black Hat USA 2014 - Network: Multipath TCP Breaking Today's Networks with Tomorrow's Protocols[/h]
  16. [h=1]Black Hat USA 2014 - Network: Internet Scanning Current State and Lessons Learned[/h]
  17. [h=1]Black Hat USA 2014 - Network: 802.1x and Beyond![/h]
  18. [h=1]Black Hat USA 2014 - Mobile: Unwrapping the Truth Analysis of Mobile Application Wrapping Solutions[/h]
  19. [h=1]Black Hat USA 2014 - Mobile: Researching Android Device Security with the Help of a Droid Army[/h]
  20. [h=1]Black Hat USA 2014 - Mobile: Mission mPOSsible[/h]
  21. [h=1]Black Hat USA 2014 - Mobile: Cellular Exploitation on a Global Scale The Rise & Fall of the Control[/h]
  22. [h=1]Black Hat USA 2014 - Malware: One Packer to Rule Them All Empirical Identification, Comparison[/h]
  23. [h=1]Black Hat USA 2014 - Malware: Exposing Bootkits with BIOS Emulation[/h]
  24. [h=1]Black Hat USA 2014 - Keynote: PWNIE Awards[/h]
  25. [h=1]Black Hat USA 2014 - Hardware: A Journey to Protect Points of Sale[/h]
×
×
  • Create New...