抱歉,如果之前有人问过这个问题,但是我查看了其他问题,没有找到匹配项。
我的 Win Server 2008 VPS 遭受了很多登录类型 2 和 3 攻击(来自不同的 IP)。我一直在想处理这些问题的最佳方法是什么?
我还注意到攻击者使用新创建的管理员用户名(而不是默认的“管理员”),因此他们以某种方式从我的 VPS Active Directory 中获取此信息。我确实启用了 RDP 访问权限(但不是通过标准 RDP 端口)。我知道这是一个安全问题,但我需要访问权限。
附注:使用 ShieldsUp 我发现端口 135(DCOM 服务控制管理器)和 445(Microsoft 目录服务)向全世界开放。这可能是攻击者获取我的帐户名的方式吗?关闭这些端口而不将自己锁定在 VPS 之外是否安全?
谢谢您的任何提示。
更新:我使用自定义防火墙规则阻止了端口 135 和 445。我还在机器上创建了一个新的测试帐户,以查看攻击者是否仍在获取 AD 数据。正如 @syneticon-dj 所建议的,我还关闭了文件和打印机共享。现在我正在等待,看看事件日志中是否出现任何新内容。
更新2:运行此配置几天后,我没有注意到事件日志中有任何新攻击。所以我猜端口阻止 + 禁用共享起了作用!
答案1
用户和共享列表确实已通过 SMB 供匿名用户使用。但这已经是很久以前的事了 -Windows NT 已修复能够保留这些信息,这是从 Windows Server 2003 开始的默认行为。如果您仍然能够匿名查询共享或用户列表,则您的服务器可能配置错误。
除此之外,如果你的公共 IP 上没有需要 SMB 访问的客户端,你应该用防火墙将它们隔离开来,或者更好的是,解除“Microsoft 网络的文件和打印共享”的绑定从面向互联网的界面:
如果你需要RDP,考虑在你的服务器上安装 IIS(如果你还没有),启用终端服务网关角色并设置证书/创建访问规则以仅允许通过 HTTPS 进行 RDP 隧道(无直接 RDP 访问)。这样,您就可以降低 RDP 堆栈中最终出现问题的风险,因为身份验证必须在交换 RDP 相关信息之前完成。此外,您还可以保护自己免受可能的针对终端服务的 MITM 攻击通过使用可验证的证书。
只要您的服务器提供需要向开放互联网进行身份验证的服务,就没有什么可以阻止世界各地的任何用户尝试用户名/密码组合。但如果您的服务器配置为仅提供必要的服务不会泄露信息,具有最新的安全更新,并且所有用户帐户都设置了强密码,因此没有什么可担心的(除此之外也不可能做太多事情)。