我家里有一台 Windows 7 64 位机顶盒,我将其用作“服务器”计算机。它运行 Windows Media Center,为家里的每个房间提供电视。它还充当家庭共享存储,为 Windows 备份和我的家人想要保留副本的任何文件提供空间。
这台电脑也是我的个人电脑。我有自己的帐户,可以通过 RDP 访问。当我想使用 PC 时,我会拿起家里的笔记本电脑或我妻子的电脑,然后通过 RDP 进入这台 Windows 7 机器,访问我的帐户、桌面、应用程序等。我还可以使用我的公共 IP 地址从家外通过 RDP 进入这台机器。
最近我被黑客入侵了。RDP 日志显示有人以我的身份登录。他们打开了 Chrome 并在浏览器中找到了存储的密码。这些密码当然可以通过 Chrome 中的开发人员控制台提取。这导致我的 PayPal 和 Google 账户被盗刷了 10,000 美元,进而影响了我的支票和信用卡。
我的密码包含字母、数字和符号。怎么会有人这么做?我以后该怎么做才能加强安全性?该盒子目前处于离线状态,直到我可以运行病毒和恶意软件扫描以及 HijackThis 等。我害怕重新插入网线。我不想要真正的 Windows Server,因为我会失去 MCE,否则我实际上只会使用共享存储。
答案1
怎么会有人做出这样的事?
根据您的设置,可能有很多可能的方法。如果不查看受影响设备的日志或网络配置,回答这个问题将主要是猜测,而且范围太广,无法讨论。如果您有任何特定的日志、设置图表等,就可以确定可能的攻击点,并可能缩小答案的范围。
我可以做些什么来加强未来的安全性?
确保已启用网络级别身份验证
Windows 7 默认提供网络级别身份验证 (NLA)。最好保留此功能,因为 NLA 在建立连接之前提供了额外的身份验证级别。如果您在其他不支持 NLA 的平台上使用远程桌面客户端,则应仅将远程桌面服务器配置为允许没有 NLA 的连接。
确保您拥有最新的 Windows 更新和安全软件更新
每天都会发现新的漏洞,因此最好确保您拥有最新的 Windows 更新以及您使用的任何安全软件的更新。例如,存在如下漏洞:RDP 中的漏洞可能允许远程代码执行 (3073094)(这确实影响了您在问题中提到的 Windows 7 x64)。如果您没有安装适当的更新,有人可能会利用这些漏洞进入您的 PC。
使用防火墙限制访问
使用防火墙(可用的软件和硬件)来限制对远程桌面监听端口的访问(默认为 TCP 3389)。
限制可以使用远程桌面登录的用户
默认情况下,所有管理员都可以登录远程桌面。如果您的计算机上有多个管理员帐户,则应将远程访问限制为仅需要它的帐户。如果远程桌面不用于系统管理,请通过 RDP 删除所有管理访问权限,并仅允许需要 RDP 服务的用户帐户。对于远程管理多台计算机的用户,请从 RDP 访问中删除本地管理员帐户,并改为添加技术组。
- 点击
Start
→Programs
→Administrative Tools
→Local Security Policy
。 - 在 下
Local Policies
,单击User Rights Assignment
,转到Allow logon through Terminal Services
。或者Allow logon through Remote Desktop Services
。 - 删除管理员组并保留远程桌面用户组。
- 使用系统控制面板将用户添加到远程桌面用户组。
设置帐户锁定策略
通过设置您的计算机在多次猜测错误后锁定帐户一段时间,您将有助于防止黑客使用自动密码猜测工具访问您的系统(这称为“暴力”攻击)。要设置帐户锁定策略:
- 前往
Start
→Programs
→Administrative Tools
→Local Security Policy
。 Account Policies
点击下Account Lockout Policies
。- 为所有三个选项设置值。3 次无效尝试和 3 分钟的锁定持续时间是合理的选择。
看帐户锁定政策了解详情。
更改远程桌面的侦听端口
更改侦听端口将有助于“隐藏”远程桌面,防止黑客扫描网络以查找侦听默认远程桌面端口 (TCP 3389) 的计算机。这可以防止最新的 RDP 蠕虫,例如莫尔托。为此,请编辑以下注册表项 (警告:除非您熟悉 Windows 注册表和 TCP/IP,否则请不要尝试此操作):
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp.
将监听端口更改为3389
其他端口,并记得使用新端口更新所有防火墙规则。
请注意:虽然这种方法很有帮助,但通过隐蔽性实现安全这不是最可靠的安全方法。您应该确保还使用其他方法来加强访问。
如果可能,请使用 RDP 网关
强烈建议使用 RDP 网关。但这需要安装在服务器操作系统上。它内置于 Windows Server 2008 和 2012。它提供了一种严格限制对远程桌面端口访问的方法,同时支持通过单个“网关”服务器进行远程连接。使用 RD 网关服务器时,桌面和工作站上的所有远程桌面服务都应限制为仅允许从 RD 网关进行访问。RD 网关服务器通过 HTTPS(端口 443)侦听远程桌面请求,并将客户端连接到目标计算机上的远程桌面服务。
网上有很多关于如何配置的文档。官方文档在这里:安装 RD 网关
安装和配置角色服务大致如所述;但是,建议使用证书。使用自签名证书进行测试是可以的。
配置客户端以使用 RD 网关很简单。MS 客户端的官方文档在这里:配置远程桌面网关的远程桌面连接设置
如果可能,通过 IPSec 或 SSH 建立远程桌面连接隧道
如果无法使用 RD 网关,您可以通过 IPSec 或 SSH 隧道传输远程桌面会话,从而添加额外的身份验证和加密层。自 Windows 2000 以来,所有 Windows 操作系统都内置了 IPSec,但 Windows Vista/7/2008 的使用和管理得到了极大改进(请参阅:IPsec)。如果有 SSH 服务器,则可以使用 SSH 隧道进行远程桌面连接。请参阅使用 PuTTY 通过 SSH 隧道传输远程桌面,为远程桌面创建 SSH 隧道和如何使用 Linux 机器通过 ssh 隧道传输 Windows 远程桌面?举一些例子。
使用现有的管理工具进行 RDP 日志记录和配置
不建议使用 VNC 或 PCAnywhere 等其他组件,因为它们可能会像 RDP 一样加密会话。RDP 还具有通过 GPO 进行集中管理的优势(如果在域中使用,但您的场景可能并非如此)。尽可能使用 GPO(如果可能)或其他 Windows 配置管理工具,以确保家中所有 PC 的 RDP 配置一致且安全。
通过强制使用 RDP 网关,您还可以获得第三级审计,这比梳理目标 PC 上的所有内容更容易阅读。这种类型的日志可以更轻松地监控设置中的所有机器上 RDP 的使用方式和时间,以防发生其他事件。
如果可能,请使用双因素身份验证
考虑使用双因素身份验证方法。RD 网关确实提供了一种通过基于双因素证书的智能卡控制身份验证的简单机制。其他双因素方法需要在远程桌面主机本身上使用另一种方法,例如YubiKey,RSA。
通过网络访问保护 (NAP) 提高安全性
您还可以调查使用网络访问保护 (NAP)但是,使用 RD 网关(在服务器操作系统上),该技术和标准尚未得到很好的开发或可靠。如果强制执行,许多客户端将无法工作,尽管按照文档操作,您可以审核系统以查看它是否想客户端符合安全要求。