Window远程桌面(RDP)安全基线审计

对于IT人员和Windows用户,Windows远程桌面协议(RDP)是常用的便利工具,可以交互式使用或管理远程Windows的服务器。然而这也是一扇被有心人惦记着的大门,如果管理不当,你的系统轻则被攻陷丢失信息,文件勒索,甚者被当做肉鸡去Ddos攻击别人,当做跳板去干别的坏事。

Window远程桌面(RDP)安全基线审计

典型的APT过程

下面显示下利用RDP的途径进行一个APT (Advanced Persistent Threat, 阶持续性渗透攻击)的过程:

1、 一名HR通过与钓鱼邮件进行交互,无意中点击下载安装了邮件中钓鱼URL链接的木马程序。

2、木马利用Mimikatz等工具窃取了获取存储在内存中用于访问系统的用户帐户和密码。

Window远程桌面(RDP)安全基线审计

3、木马创建一个网络隧道,接收攻击者的命令和控制指令。

4、攻击者通过网络隧道使用泄露的账号和密码通过RDP登录到HR的电脑。

5、攻击者使用Active Directory枚举命令来探测公司域的相关信息和系统。

6、攻击者使用RDP和HR员工的域帐户连接到财务部门的系统。

7、攻击者使用Mimikatz在财务系统上窃取账号信息,获取了最近登陆该系统的财务员工的账号和最近登录系统进行故障排除的IT管理员的账号。

Window远程桌面(RDP)安全基线审计

8.使用RDP,攻击者利用HR帐户,财务的帐户和IT管理员的帐户登录环境中的其他系统。

9、攻击者将数据下载到HR员工的系统上。

10、攻击者通过内置的RDP复制和粘贴功能下载这些功能。

整个过程图示如下:

Window远程桌面(RDP)安全基线审计

通过这个例子,我们应该意识到我们的有多脆弱,黑客得多可怕。那么如何防止这种攻击呢?这就是本文虫虫要给大家说的主题。

要防止和识别这类攻击最基本的做法是网络安全基线。为此,企业通过了解网络环境下的正常操作,什么是异常活动,基于这些建立基线,通过基线检测就可以识别非法的攻击活动。

企业日常IT操作调查

同样的环境,我们需要做以下调查:

1、HR或财务人员需要使用RDP工作么?

2、HR的RDP需要访问财务系统的么?

3、HR或财务员工RDP是否必须访问这些系统?

4、HR或财务部门的系统是否被用作RDP的源系统?

5、IT管理员是否从不属于IT网络部分IP来源访问RDP?

6、关键服务器是否都有来自不属于IT网络部分的源系统的登录?

7、关键服务器是否给予HR或财务人员RDP登录的权限?

8、是否要允许用户帐户不同IP来源发起RDP连接?

尽管开发一个定制流程来确定用户帐户范围、IP来源的系统以及在企业中利用RDP的安全审计系统可能不是马上就能做到。但对这些数据进行规范化和审核将使企业员工更深入地了解用户帐户行为,以及检测意外活动、以便于快速排查这类事件。

通过事件日志跟踪RDP活动

如何识别网络典型行为?首要任务和最重要的方法是启用其事件日志。RDP登录可以在通过相关来源系统和目标系统上生成日志文件,事件日志和注册表组件。 JPCERT的有一个42页的参考文献《通过跟踪事件日志检测非法活动》详细介绍了调查人员在源系统和目标系统上可能找到的许多组件。

Window远程桌面(RDP)安全基线审计

为了可扩展性,在此提出的基线方法将重点关注目标系统上记录的三个原始登

录事件:

“TerminalServices-LocalSessionManager”日志中的EID 21和EID 25,位于: “%systemroot%WindowsSystem32winevtLogsMicrosoft-TerminalServices-LocalSessionmanager%3Operational.evtx”

“安全”日志中的类型10登录的EID 4624条目,通常位于:

“%systemroot%WindowsSystem32winevtLogsSecurity.evtx”

当成功的交互式本地或远程登录事件发生时,图2中显示的EID 21条目在目标系统上创建。

当成功的交互式本地或远程登录事件发生时, EID 21记录的日志如下图所为:

Window远程桌面(RDP)安全基线审计

EID 25日志是在已经与先前建立的RDP会话系统重新连接的生成,该系统未通过正确的用户注销而终止。例如,直接关闭RDP窗口(它将生成EID 24),没有通过开始菜单注销(会生成EID 23)。

Window远程桌面(RDP)安全基线审计

EID 4624日志是在发生任何类型的登录时在目标系统上创建的。有关RDP身份验证的,我们将重点关注带有Logon Type 10的EID 4624日志,他们对应RDP身份验证,如图下所示:

Window远程桌面(RDP)安全基线审计

这些事件日志提供了通过RDP登陆一个系统的日志记录。一般来说这些事件日志数据,必须将日志转发到统一的中心聚合平台(如安全信息和事件管理(SIEM)平台),或使用审计实用程序(例如FireEye的Endpoint Security(HX))收集日志。并对其做处理和统计分析。限于篇幅本文不对此做扩展介绍,本文仅以本地单一源的日志做介绍。

对于EID 21和EID 25事件日志,用户帐户和源系统都可以在事件日志字符串中捕获。请注意,日志中记录的”来源地址”可能是主机名或IP地址。你需要对其做数据转化。系统和用户帐户或业务关系表有助于分析处理结果。如果没有这些信息,则需要首先通过资产管理数据库或者其他途径中获取。

识别异常

一旦通过分析事件日志在对你系统做RDP活动安全基线分析,安全分析人员就可以开始异常的RDP活动。请记住,区分合法与异常RDP活动可能需要一段时间积累磨合。

将IP地址映射到主机名时, DHCP日志可以提供有用的帮助,将系统和用户帐户及特定业务单元相关联的表也可以帮助审计和关联记录到的RDP活动,用来以区分是否正常登陆。需要审计与预期商业惯例不符的任何RDP活动。此外,审计活动也要关注那些虽然被认为是为正常的RDP登录。

可用指标

通过使用SIEM关联技术,我们可以按帐户,来源IP和目标系统来分析RDP活动。我们一可以使用以下指标相关的元素的数量/积加:

帐户的来源IP或者主机

帐户的登陆的目标系统

特定来源IP或者主机到目标系统路径的用户帐户

每个来源IP或者主机的用户帐户

每个目标系统的用户帐户

将系统来源IP或者主机分配给每个用户帐户的目标系统路径

每个用户帐户总RDP登录次数

每个来源IP或者主机总RDP登录次数

每个目标系统的总RDP登录数

每个来源IP或者主机目标系统

每个目标系统的来源IP或者主机

这个指标列表只是大概罗列,不是详尽的参考。如果需要,可以添加时间戳按照时间范围扩展统计。

更多安全建议

虽然基线RDP活动可能不容易识别那些经过可疑伪装和混淆过的攻击,或者采取部分合法的活动,但它将不断帮助我们更好地理解在其特定环境中正常活动,并且最终实现对所有这些未授权活动的异常情况的识别或者找到其他更好的分析指标。

最后虫虫给你对RDP的更多的安全建议,帮你更好的做安全基线分析,以及减少RDP被非法攻击和利用,

1、 禁用个人使用电脑和笔记本上的远程桌面服务,禁止在一切非必须的目标系统开启远程桌面。

2、 修改默认的RDP端口3389为其他值.

RDP的端口号通过:

HKEY_LOCAL_MACHINE/System/CurrentControlSet/Control/Terminal Server/Wds/Repwd/Tds/Tcp建修改。

或者通过以下命令:

MSTSC /v:192.168.0.150:3390。

3、 如果需要使用RDP连接,必须做访问控制VCL限制,以强制RDP连接只能从特定跳板机和VPN登陆。

4、通过防火墙(硬件、软防火墙)对RDP连接进行限制。使用基于IP设置防火墙规则:

默认拒绝入站RDP的连接。

必要时,只允许从与授权跳板机,VPN的IP地址访问RDP端口。

5、用”通过远程桌面服务拒绝登录”安全设置来防止一般用户使用RDP连接到。设置禁止主机上的特权帐户(例如域管理员,服务帐户)进行RDP链接,因为攻击者通常会利用这些类型的帐户对本地环境中的敏感系统探测和攻击。

6、通过以下方式阻止使用本地帐户使用RDP:

安装KB2871997,并通过使用组策略在 “通过远程桌面服务拒绝登录”安全设置中添加SID”S-1-5-114: NT AUTHORITYLocal account and member of Administrators group”。这可以来完成。

使用Microsoft LAPS等解决方案为终端上内置本地管理员帐户设置随机密码。

7.、确保”TerminalServices LocalSessionManager Operational”事件日志中的EID 21,EID 23,EID 24和EID 25都被记录并转发到SIEM或中央日志聚合服务器。

8、确认”安全”事件日志中的EID 4624被正常记录并转发到SIEM或中央日志聚合服务器。

9、将”TerminalServices LocalSessionManager Operational”和事件日志的最大大小增加到至少500 MB。这可以通过使用组策略首选项(GPP)修改注册表项

“HKLMSOFTWAREMicrosoftWindowsCurrentVersionWINEVTChannelsMicrosoft-Windows-TerminalServices-LocalSessionManager/Operational”

中的”MaxSize”见来进行设置。

10、将”安全”事件日志的最大大小增加到至少1 GB。

11、记录清除”Security”和”TerminalServices LocalSessionManager Operational”事件日志的事件(EID 1102)。

12、创建并定期更新将用户帐户和主机名和业务用户的关系文档。

13、确保DHCP日志已归档并易于访问,以便在登录事件发生时将源系统IP地址与其主机名相关联。