Hacker News new | past | comments | ask | show | jobs | submit login

Only if you have Remote Desktop Connection (RDS) enabled and exposed to the open internet. Which you shouldn't.

To quote the CVE:

> Disable Remote Desktop Services if they are not required.


> Block TCP port 3389 at the enterprise perimeter firewall

If you're using a VPN or RD Gateway which have been best practice for tens of years, you're already insulated. I'd still patch but outside of business hours.

Almost every Windows computer in the fortune 500 company I work for has RDP enabled and if it wasn't production would grind to a halt.

To make matters worse I can't even run Windows updates on my laptop because the IT department has blocked it. I can only run updates at home.

Are they exposed to the internet or do you have to connect to a VPN first?

Oh yeah there are all kinds of firewalls, but you know there is always a hole somewhere. (Officially they've contracted with Amazon Workspaces to provide remote access which actually works pretty good, albeit slow.)

I know people do that, what with cloud based VMs and all, but still... I don't get it.

It should be noted that AWS and other Cloud providers let you set up Security Groups containing specific IP addresses or ranges (i.e. just whitelist your static IP for SSH/RDS access).

It isn't as secure as a VPN (and not as convenient), but definitely a stop-gap if you don't want to pay for Client VPN.

It’s usually to run some old, proprietary software that only has a Windows version.

"Old, proprietary software" describes something like 80% of all the software keeping the modern world going.

Some of it is new software. South Korean love of ActiveX for example, a technology dead for at least 10 years. Still getting new stuff written.

On the contrary, most critical software is plenty new - things like MS Office. Still bound to Windows.

The remaining systems rely on truly custom software and should be either airgapped (so no RDP) or rewritten. I'm thinking industrial - they should've planned for this many years beforehand. There were instances back when Windows XP was the main driver.

Why has RDP been so vulnerable to exploits for so long? It seems Microsoft should require credentials sent before processing any complex graphics rendering stuff, yet even to this day, it is possible to view a remote logon screen, get remote audio, etc. all unauthenticated!

While internet facing servers may be the most common attack vector you assume the vulnerability couldn't come from inside the network.

If they're attacking you from an internal vector they likely already have code execution within that internal context, making this bug largely redundant. The more common case is gaining entry to a poorly secured edge or cloud server, rather than a bad actor sitting on your LAN.

But sure, I suppose, that niche edge case (local context without local code execution) could hypothetically exist somewhere, but patching this won't make you secure.

The internal remote hole can be thought of as a force multiplier. An attacker that bypasses the edge in any way gets every machine in your network. It takes any other remote bug or anyone getting to any badness on the Internet. And then if your domain controller is owned, it's everything...

A simple virus could even do it. It takes only one instance for this bug to completely take over your network if you're Windows based. Remember Windows XP time? That's how it is.

Unless you completely cut off internal network everywhere. Good luck with that policy.

You wouldn't even know you have been owned completely and expect only a router issue if the breach is from there. Or not even spot anything out of ordinary.

About the only real way is to presume internal network is compromised and keep diversity and backups to reduce impact. Compartmentalize, do not centralize, no matter how much money you'd save that way. If a man has to go to fix an issue instead of remote login, so be it.

It's not a niche edge case, there is an entire industry that revolves around securing BYOD devices. If I bring a compromised device on your network and it uses some rdp flaw to access another machine it's gotten a foothold in the network where it could spread further. I don't need code execution from an existing internal resource.

And yes, security is a layered approach. That's why we recognize that the internet isn't the only threat vector out there.

Edit: Why wouldn't you patch internal servers for this anyway? Let's say there is an existing threat with code execution like you say. Now he can trivially access all machines on the network because they share a common vulnerability. At least make him work for it.

> If I bring a compromised device on your network

Then I'm in real trouble with or without this. A compromised device can sniff the network, masquerade, inject network traffic (inc. DNS), and can attack every other device on that same segment.

> I don't need code execution from an existing internal resource.

If you cannot execute code in an internal context then you cannot exploit this bug, you'd effectively be an external attacker. Your own example had you running code on a locally connected "BYOD" device. Therefore you're already executing code in that context.

> Why wouldn't you patch internal servers for this anyway?

Nobody suggested that. In fact quite to the contrary.

By the way while we're discussing niche edge cases, what's your strategy to protect against Van Eck phreaking? Seems about as concrete as the attack vector you're proposing (local network access with no way to execute code).

Okay I think I've either poorly communicated or you've misconstrued what I meant. All I was trying to imply was that threats can surface within the network. I'm not saying some magic will take advantage of the exploit with no connection to the target's network. You said

"If they're attacking you from an internal vector they likely already have code execution within that internal context, making this bug largely redundant."

I was disagreeing that this is redundant. This vulnerability is a remote code exploit that could give an attacker control over the target just by sending a specially crafted packet. It is not some Apache misconfiguration affecting a couple servers, it's baked into all versions of Windows.

Applications are open for YC Winter 2020

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact