Slashdot Mirror


RDP Proof-of-Concept Exploit Triggers Blue Screen of Death

mask.of.sanity writes "A working proof of concept has been developed for a dangerous vulnerability in Microsoft's Remote Desktop Protocol (RDP). The hole stands out because many organizations use RDP to work from home or access cloud computing services. Only days after a patch was released, a bounty was offered for devising an exploit, and later a working proof of concept emerged. Chinese researchers were the first to reveal it, and security professionals have found it causes a blue screen of death in Microsoft Windows XP and Windows Server 2003 machines. Many organizations won't apply the patch and many suspect researchers are only days away from weaponizing the code."

40 of 128 comments (clear)

  1. Remote Death Packet... by fuzzyfuzzyfungus · · Score: 4, Funny

    I heard a rumor that if you send an SYN-ACK after SYN request from a certain IP, you die.

    It totally happened to my cousin's friend.

    1. Re:Remote Death Packet... by Ihmhi · · Score: 4, Funny

      Now now, don't be so synackal.

  2. Missed the real story by Anonymous Coward · · Score: 5, Informative

    The exploit is one thing, but the real story is that the exploit code was leaked from somewhere inside Microsoft, likely the MSRC. There's a string in the exploit that points to a folder on an internal MSRC server. This is about as bad as it gets. See here: https://twitter.com/#!/jduck1337/status/180495975377408001 and here: https://threatpost.com/en_us/blogs/ms12-020-rdp-exploit-found-researchers-say-code-may-have-leaked-security-vendor-031612

    1. Re:Missed the real story by fuzzyfuzzyfungus · · Score: 4, Funny

      It has come to our attention that some of our customers may not have purchased upgrades in a timely manner... We encourage them to remedy this situation as swiftly as their checkbooks allow.

  3. How important is this? by darkmeridian · · Score: 4, Informative

    The exploit doesn't allow unauthorized access or remote root. It only allows a denial of service against Windows XP and Windows Server 2003 products. It doesn't seem that Windows 7 and Windows Server 2008 are vulnerable. That really mitigates that risk. I have a Windows Home Server 2011 box that shouldn't be vulnerable because it's based on the WS2008R2 code base. Furthermore, there's already a patch for this bug. Therefore, if you're still running an old version of Windows that you neglected to patch, then your server might be crashed remotely. I don't think it's really that deadly or scary.

    --
    A NYC lawyer blogs. http://www.chuangblog.com/
    1. Re:How important is this? by Anonymous Coward · · Score: 4, Informative

      The sourcecode linked in the summary is just a proof-of-concept. A much more devastating payload, in principle, certainly can be delivered. MS says the vulnerability could allow arbitrary code execution https://technet.microsoft.com/en-us/security/bulletin/ms12-020

    2. Re:How important is this? by remus.cursaru · · Score: 5, Insightful

      Windows 2003 crashed remotely because you didn't applied a 3 days old patch doesn't seem scary to you? Just wait for the bean counters on the second floor to stone you to death because their stone-age old ERP crap is down. Or the DNS/DHCP server. Or the hole freaking AD.

    3. Re:How important is this? by EliSowash · · Score: 5, Informative

      That really mitigates that risk.

      I question your definition of 'mitigates' sir. You are describing systems that are not vulnerable to this particular exploit. If you're infrastucture runs on Linux or Mac or oranges with electrodes sticking out of them, you havn't mitigated dick. You just aren't vulnerable.

    4. Re:How important is this? by tom17 · · Score: 2

      My understanding is that if you fill a buffer overflow with random data (or just wrong data) it can cause the kernel to panic if it unexpectedly stumbles upon this incorrect/corrupt data and thus BSODs.

      Now, if you are more crafty, you can inject valid code/data rather than panic-inducing random data. This valid code/data could then potentially allow a thorough rooting.

    5. Re:How important is this? by Tastecicles · · Score: 5, Funny

      ... If your mission critical server is still running Windows, then you're doing it wrong...

      FTFY. :)

      (just to please up the anti-microsoft crowd...)

      --
      Operation Guillotine is in effect.
    6. Re:How important is this? by squiggleslash · · Score: 5, Informative

      It depends on what the exploit is.

      A BSoD is a sign that the kernel space has been tampered with in some way. Now, it could be that there's no way to predictably tamper with the kernel using this exploit (eg all it does is, say, to cause some kernel routine to divide by zero, and thus crash), or it could be something like a buffer overflow exploit, where you can, using this technique, set a specific part of the memory to contain specific code, and by a little finagling, cause that code to be executed.

      Now, it's a whole lot easier to demonstrate that a flaw like a buffer overflow can be used to cause a DoS situation like a BSoD than to spend days or weeks getting it to do something more "useful", so what we have here is a quick and dirty proof of concept to demonstrate there is a flaw to begin with.

      Basically, the fact the proof-of-concept causes a BSoD doesn't mean that exploits of the flaw are limited to a BSoD. If it's a buffer overflow or something similar, then in theory anyone could exploit this bug to gain remote kernel level access to a Windows computer, without you ever knowing or seeing anything out of the ordinary.

      --
      You are not alone. This is not normal. None of this is normal.
    7. Re:How important is this? by NatasRevol · · Score: 4, Insightful

      You'd be wrong. Dead wrong.

      MS shops do this.
      Shops that avoid MS at all costs and give control of it to finance/ms person, who have no clue about security do this.
      Small businesses that just don't know better do this.

      --
      There are two types of people in the world: Those who crave closure
    8. Re:How important is this? by DarkOx · · Score: 2

      Never heard of Microsoft Small Business server have you?

      --
      Repeal the 17th Amendment TODAY! Also Please Read http://www.gnu.org/philosophy/right-to-read.html
    9. Re:How important is this? by Alioth · · Score: 2

      *Yet*. The vulnerability according to the original CVE is a double free of memory that ends up calling a function pointer in the already-freed block of data. Now if the exploit can change the address to their shellcode, they have just gained unauthorized access.

      This might not be easy to do; it might not be possible on some architectures due to the NX bit, but it's possible it could result in a remote execution vulnerability.

    10. Re:How important is this? by eldorel · · Score: 2

      Small businesses who know better but can't afford the extra expense of an additional server when they barely use the resources on the primary one do this also. Holy run on sentence batman!

    11. Re:How important is this? by Alioth · · Score: 5, Informative

      With buffer overflows the way it usually works is that a buffer that is allocated on the stack (let's say, a temporary buffer where some user input goes to have something done on it) isn't properly bounds checked. Local function variables are on the stack. What is below them (on x86 and amd64) will be first the saved base pointer of the calling function, and then the return address of the next instruction in the calling function. So on a 32 bit arch, if we imagine the buffer is the first thing on the stack, the first 4 bytes of the buffer overflow will overwrite the calling function's saved %ebp register, and then the next 4 bytes you overwrite will be the return address of the calling function. When the function finishes and executes the RET statement, what happens is the address put on the stack by the CALL is popped off, and the program counter is set to this address.

      Normally, this address is the valid return address, but in this case, where you've been able to overflow the buffer, it's whatever the 4 bytes were set to in the overflowing data. In a userland program, the program will usually crash with "Segmentation fault". In kernel land, you may get a kernel panic.

      To exploit this, when the attacker overwrites the return address, if they can have this address point to their code instead, they can then gain control of the machine with whatever privilege level the process they are attacking has. Usually, the whole exploit is in the buffer that's overflowed, the attacker basically has to figure out what the address of their payload will be in the stack, and set the function's return address to this, and voila, they can execute arbitrary code.

      A number of things have been done in recent years to frustrate this: randomizing the address of the heap and stack to make it harder to predict the address your attacking code will be at, and also making the stack and heap non-executable if the CPU supports it (or using a software emulation of the NX bit) so even if you do overwrite the return address with the address of your code, the program dies with "Segmentation fault" because the processor won't allow code to execute in that memory page.

    12. Re:How important is this? by hellkyng · · Score: 2

      Windows Server 2008 64 bit is vulnerable to the POC, I've confirmed it myself.

    13. Re:How important is this? by afidel · · Score: 4, Informative

      For userland applications these type of stack smashing attacks have become much harder to exploit due to DEP and ASLR. ASLR basically randomizes where the buffers will allocated from for each run of a program while DEP marks memory pages as being either data or code and data pages are not able to execute (this is hardware enforced on modern processors). However ASLR is not implemented in XP/2003 and DEP is not available for kernel code.

      --
      There are 4 boxes to use in the defense of liberty: soap, ballot, jury, ammo. Use in that order. Starting now.
  4. Question: Virtualbox's VRDE/RDP by MickyTheIdiot · · Score: 3, Interesting

    I haven't found the answer to this yet: Virtualbox uses a flavor of RDP (or backwards compatible to RDP) called VRDE. Someone where I worked said this was a protocol problem, so exploit apply to virtualbox or is this just the implementation of RDP that Microsoft uses?

  5. Re:Is this the hole that was patched one Tuesday? by Abalamahalamatandra · · Score: 5, Informative

    Yes. The guy who discovered it reported it to both the TippingPoint Zero Day Initiative and to Microsoft, and sent them the packet that triggers the exploit. That exact same packet showed up in this exploit, meaning somebody either at ZDI or Microsoft or part of the MAPP program leaked it.

    So much for responsible disclosure! Although as soon as I saw that TippingPoint had released a signature for this on Tuesday, I figured that would be enough information for people to figure out what was up. Leaking the exact packet made things even easier and quicker, though.

    Gee, I do so love it when I get three days to deploy a critical patch throughout my entire production environment. That makes for some wonderful conversations with the admin staff, let me tell you!

  6. Re:Is this the hole that was patched one Tuesday? by Sir_Sri · · Score: 3, Interesting

    Just below your comment there's one from an AC titled "Missed the real story" indicating the exploit code was released from within MS.

    That might mean some jackass got the brilliant idea that if there's going to be an exploit soon anyway, it may as well be the original one, and that will scare people into deploying the patch *right now*.

  7. Re:M$ Windoesn't by Abalamahalamatandra · · Score: 2

    Because this one is bigger than usual - I know of quite a few small companies that use RDP as a "poor man's VPN" and open it from their internal server(s) directly to the Internet. Insanely stupid and I've never allowed any SMBs that I've set up to do it, but it definitely happens quite a bit.

    Interestingly, scanning for 3389 over the Internet has been quite prevalent for quite awhile. I'm sure there are many, many bad guys out there with big lists of system IP addresses all set to go once this (inevitably) turns into a remote code exploit rather than just a DoS.

  8. Who uses RDP without a VPN? by Kenja · · Score: 4, Insightful

    I have never seen RDP open to the world. If you do that, you're asking for issues regardless of any exploit.

    --

    "Have you ever thought about just turning off the TV, sitting down with your kids, and hitting them?"
    1. Re:Who uses RDP without a VPN? by Anonymous Coward · · Score: 2, Interesting

      Then you don't have much exposure to the MANY SMB's that are setup like this. I even know of some otherwise competent consultants that do this. Stating that the traffic is secure.

      I've closed this hole many times at new clients.

    2. Re:Who uses RDP without a VPN? by NatasRevol · · Score: 2

      This:
      for i in {1..254}; do nc -v -n -z -w 1 207.46.130.$i 3389; done
      will scan Microsoft's public IP space for RDP.

      Feel free to test it on your infrastructure.

      --
      There are two types of people in the world: Those who crave closure
    3. Re:Who uses RDP without a VPN? by parlancex · · Score: 4, Insightful

      Then you don't have much exposure to the MANY SMB's that are setup like this. I even know of some otherwise competent consultants that do this. Stating that the traffic is secure.

      I've closed this hole many times at new clients.

      Ah yes, another incompetent *nix admin with his head in the sand. Since this was posted as AC I know you're probably trolling but I'll bite. Since the RDP changes starting with Windows Vista and Server 2008 (pre-R2, even) the RDP connection handshake resembles that of TLS, SSH, and other VPN protocols, utilizing RSA, certificate based identity verification, and AES (with keys transmitted during the RSA encrypted during setup).

      If modern RDP is insecure, I have really bad news for SSH, e-commerce and the entire fucking world that uses TLS.

    4. Re:Who uses RDP without a VPN? by Abalamahalamatandra · · Score: 2

      Wow. Shill much?

      First of all, your ever-so-awesome RDP changes that started with Vista don't seem to have helped a ton here, unless you took the non-default step of turning on NLA which breaks accessing the server from XP clients that haven't had an upgrade to the RDP client.

      Secondly, given the choice between opening RDP to a Windows box or SSH to a Linux box, I'll place my bets on SSH any day of the week. OpenSSH was designed from the start to be a highly-secure protocol. It has, of course, had to evolve over the years to stay ahead of threats just as RDP has. But looking at the history of RDP and the changes that MS has had to make to the protocol, I think it's pretty clear at this point that "giving the user a remote graphical interface" was quite a bit higher of a priority than security from the beginning.

      Encryption != security. Thanks for proving my earlier point about people often making that mistake.

  9. Re:M$ Windoesn't by DigiShaman · · Score: 5, Insightful

    Insanely stupid

    Aside from this nasty RDP bug, how exactly is this "insanely stupid" any more so than leaving a web server connected to the Internet? I've seen plenty of web servers get rooted and turned into zombie spewing infected machines throwing spam and hosting fake AV advertisements.

    For over ten years now, a major exploit of RDP is a first that I can recall. And BTW, the RDP connection is encrypted. With VPN, encryption is iffy at best and may not be enabled by default depending on the client you use.

    Just because RDP provides a GUI remote desktop and looks more exposed visually doesn't mean it technically is any less secure than other protocols used.

    --
    Life is not for the lazy.
  10. Have fun by koan · · Score: 3, Informative
    --
    "If any question why we died, Tell them because our fathers lied."
    1. Re:Have fun by hellkyng · · Score: 3, Interesting

      That code is not real, it was a fake release from yesterday. Actual POC code is available in a number of places though and looks very similar.

    2. Re:Have fun by eulernet · · Score: 2

      Here is the real one:
      http://115.com/file/be27pff7

      Directly from the author's blog:
      http://aluigi.altervista.org/adv/ms12-020_leak.txt

  11. Re:M$ Windoesn't by Abalamahalamatandra · · Score: 2

    Well, for starters, because Web servers don't run as SYSTEM for quite some time now.

    And in any case, opening up port 80 from the Internet to an internal server, rather than one on a DMZ designed to do nothing but host Web content is just as insanely stupid. Same goes for port 443, even though I've lost count of the number of times people have told me 443 is okay "because it's secure!".

  12. If by purchase by Sycraft-fu · · Score: 2, Informative

    You mean "download for free" then maybe. You realize that all Windows updates for the entire life cycle of the product are included with the purchase price of the original copy, correct? They do not charge a maintenance fee. They are also very up front about life cycle and end of life. 10 years minimum for all OSes. It can be (and often is) extended, but it is never less than that.

  13. The same people who use SSH without a VPN? by Sycraft-fu · · Score: 2, Insightful

    There is no particular reason RDP needs to be behind a VPN any more than any other protocol. It is fully encrypted, does secure password exchange and all that jazz. Same as SSH. So if you run any SSH servers that are open to the world, well there's your answer.

    If you are all VPN all the time, ok, though I will caution you to carefully check your setup, VPN is often a false sense of security (particularly since in many configurations it punches through the user's NAT and host based firewall and can expose them). However if you are ok with things like SSH to your UNIX systems but not RDP to your Windows systems that just means you have a poor understanding of the protocols.

    1. Re:The same people who use SSH without a VPN? by rdebath · · Score: 2

      If you're running SSH open to the world you SHOULD be forcing keys not passwords. It only takes one user with a poor password to allow an attacker access to try a local admin exploit or use you as a 'bounce server'.

      RDP cannot be put into a key/certificate only mode.

      Add to that Microsoft's past performance with security applications (eg pptp) and I have always strongly recommended that RDP be only used within some sort of secure pipe (VPN, ssh!!, zebedee etc). or at the very least moved off the default port and given an IP address filter.

      It seems I was right.

      As for SSH, despite random number 'issues' I believe overall that it is still more trustworthy and the only protection I think it needs is to have a rate limiter so that the "skiddies" trying passwords go off and bother someone else.

  14. Re:M$ Windoesn't by Rasperin · · Score: 2, Insightful

    I'm sorry, mod parent up, so freaking right not even funny.

    Was going to post anon, but to hell with my Karma, if you can't recognize that Microsoft isn't the same company it was 12 years ago you are part of the problem and not part of the solution. Not saying they are the best at anything, that's in the eye of the beholder. I'm just saying that Windows 7 (while needing it's code optimized like KDE4 had) is a far superior OS to Windows XP and Windows XP wasn't a bad platform to start off with. In 1999 (when it was released) it was far superior to linux in many ways and it was far worst in others. Today, the same case applies, however MS is actually now contributing to the OS community, working with the development community (see Kinect, their Sony reaction only lasted a few days).

    Want to talk about Security, there are 13 known rootkits for Linux which rootkit (the application that scans for them) can't detect. There are viruses, there are kernel dumps, and worst of all there is LIBHELL, this look familiar?
    $ someapp
    Someapp can't find libboost.so.14
    $ find / -name "libboost.so.*"
    /usr/lib/libboost.so.15
    $ yes QQ
    QQ
    QQ
    QQ
    QQ
    QQ
    ^C
    $

    or my favorite one
    Couldn't find /boot perhaps run fschk without -j or -f?
    root$ ls /boot
    grub boot ...
    root$ :'(
    >)';
    Couldn't find command: :'( )':

    So yeah, Linux has it's own stability and security issues, some that make me want to throw myself off a 30floor building sometimes, but I love it too, but I think Microsoft puts out an upstanding product and so does Linux.

    I really don't know why I was so verbose, esp with the BS commands.

    --
    WTF Slashdot, why do I have to login 50 times to post?
  15. Re:Solution by MightyMartian · · Score: 2

    I can't imagine anyone with any important data leaving an X session port open balls-to-the-walls to the Internet, so why on Earth would anyone let RDP, particularly the rather weakly-protected pre-Server 2008 variants, run basically naked like that (not that I would allow a Server 2008 Terminal Server or any other RDP service from a newer OS be visible to the outside world).

    We have a Windows Terminal Server plus a few workstations that people can remote into, but they have to come in on our VPN. I closed that channel years ago when I looked on one of our DC security logs and saw a stunning number of dictionary attacks against the Terminal Server.

    --
    The world's burning. Moped Jesus spotted on I50. Details at 11.
  16. Re:Is this the hole that was patched one Tuesday? by hairyfeet · · Score: 3, Insightful

    Well in a way I honestly can't say that I blame them. Just look at how many here are pissing and moaning they are gonna have to go and deploy this patch across their system, aka doing their jobs, when we ALL know it is SOP for the script kiddies to reverse engineer every single patch MSFT releases and to use that for making easy attacks. Look at how many "ZOMFG Windows got horribly hacked!" we have seen where it was fucking patched MONTHS AGO but corps drug their feet and ended up getting pwned.

    To use a /. car analogy if you park your car on the railroad track to take a nap and someone comes along and says "hey i live around here and there is a train coming down that track, let me help you move to someplace safe" and you go "nahhh, hitting those bumps might shake loose a screw, give me time to crawl under the hood and check everything out" and you drag your feet until the train hits you? Well stupid fucking you, you deserved what you got. Its not like this isn't common knowledge, or some new thing the script kiddies are doing, its been SOP since Win9X. MSFT releases a patch, script kiddies reverse engineer, a dozen variants are out in the wild within hours of patching. If you are so damned worried about compatibility you need to be running a test bed anyway just for this scenario, and when a nasty bug is patched your ass damned well better be on the ball and ready to deploy because those script kiddies aren't gonna go "Its okay, we'll wait, just let us know when you're ready". Like it or not folks malware and exploits are a billion dollar business and with that kind of money at stake you damned well better bring your A game, anything less is your ass.

    --
    ACs don't waste your time replying, your posts are never seen by me.
  17. Re:Is this the hole that was patched one Tuesday? by jdastrup · · Score: 2

    You have 3 days to deploy this critical patch throughout production? Are you saying you have RDP exposed on the Internet, or you have in-house employees that are capable of exploiting the flaw? If it's the former, you are in the wrong field and might be better off working in retail or fastfood somewhere. If it's the latter, I truly feel sorry for you - the employees in my office can barely turn a computer on, therefore I don't have to worry much about them exploiting it until I can get around to patching.

  18. Re:Is this the hole that was patched one Tuesday? by Abalamahalamatandra · · Score: 4, Insightful

    I have employees who are allowed to come in to the VPN with their home (non-corporate-managed) machines, and no restrictions on their network traffic. I'm working on changing that but it hasn't happened as yet. Additionally, I have way too much experience with malware running on Windows machines while their installed antivirus software is happily telling anyone who asks there's nothing wrong at all.

    You need to stop thinking about internal risks in terms of deliberate actions by malicious employees (which is still a risk) and start thinking more in terms of the malware they're almost inevitably running and what actions it can take without their knowledge. This is a highly wormable exploit - think SQL Slammer. I would suggest you consider your soft center as well as your hard crunchy outside for this one.