![黑客攻防与电脑安全从新手到高手(微视频+火力升级版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/864/26542864/b_26542864.jpg)
2.3 RPC服务远程漏洞的防护策略
RPC协议是Windows操作系统使用的一种协议,提供了系统中进程之间的交互通信,允许在远程主机上运行任意程序。在Windows操作系统中使用的RPC协议,包括Microsoft其他一些特定的扩展,系统大多数的功能和服务都依赖于它,它是操作系统中极为重要的一个服务。
2.3.1 什么是RPC服务远程漏洞
![](https://epubservercos.yuewen.com/0BD71E/15056704604178906/epubprivate/OEBPS/Images/Figure-P27_1.jpg?sign=1739278706-2qifxRGLkJ4LiIDXxWbYGqCPByyXeAtm-0-63289ce1a6df24f52b92238dd5fa0485)
RPC全称是Remote Procedure Call,在操作系统中,它默认是开启的,为各种网络通信和管理提供了极大的方便,但也是危害极为严重的漏洞攻击点,曾经的冲击波、震荡波等大规模攻击和蠕虫病毒都是Windows操作系统的RPC服务漏洞造成的。可以说,每一次的RPC服务漏洞的出现且被攻击,都会给网络系统带来一场灾难。
启动RPC服务的具体操作步骤如下。
Step 01 在Windows操作界面中选择“开始”→“Windows系统”→“控制面板”→“管理工具”选项,打开“管理工具”窗口。
![](https://epubservercos.yuewen.com/0BD71E/15056704604178906/epubprivate/OEBPS/Images/Figure-P27_2.jpg?sign=1739278706-3tRW7Zt9MxUfHBEWd3JUoDvRqXj7bWYL-0-931438261e0203bc212c0187e28b3bfc)
Step 02 在“管理工具”窗口中双击“服务”图标,打开“服务”窗口。
![](https://epubservercos.yuewen.com/0BD71E/15056704604178906/epubprivate/OEBPS/Images/Figure-P27_3.jpg?sign=1739278706-h0AIAL7O8LlRECbgQ8H7NeYBewmynenE-0-23f26242ebaca92ffda88752430e795f)
Step 03 在服务(本地)列表中双击“Remote Procedure Call(RPC)”选项,打开“Remote Procedure Call(RPC)的属性(本地计算机)”对话框,在“常规”选项卡中可以查看该协议的启动类型。
![](https://epubservercos.yuewen.com/0BD71E/15056704604178906/epubprivate/OEBPS/Images/Figure-P27_4.jpg?sign=1739278706-8T6U9zHa4ApACAhk3xSMJ3JI9OXKMrRq-0-897db40df1f6c1c45217fe80439af07e)
Step 04 选择“依存关系”选项卡,在显示的界面中可以查看一些服务的依赖关系。
![](https://epubservercos.yuewen.com/0BD71E/15056704604178906/epubprivate/OEBPS/Images/Figure-P27_5.jpg?sign=1739278706-hHHdFkqIWslJV3KKRqx2V7qcWUbXbDBz-0-aa4a2786438a6af4010a1db2a7a50ab4)
分析:从上图的显示服务可以看出,受其影响的系统组件有很多,其中包括了DCOM接口服务,这个接口用于处理由客户端机器发送给服务器的DCOM对象激活请求(如UNC路径)。攻击者若成功利用此漏洞则可以以本地系统权限执行任意指令,还可以在系统上执行任意操作,如安装程序,查看、更改或删除数据,建立系统管理员权限的账户等。
若想对DCOM接口进行相应的配置,其具体操作步骤如下。
Step 01 执行“开始”→“运行”命令,在弹出的“运行”对话框中输入Dcomcnfg命令。
![](https://epubservercos.yuewen.com/0BD71E/15056704604178906/epubprivate/OEBPS/Images/Figure-P28_1.jpg?sign=1739278706-gb45DS0YuqfTjd6d5DYBacPqLmYlk2GJ-0-7de9b87faea0857991b8230764e8c79d)
Step 02 单击“确定”按钮,弹出“组件服务”窗口,单击“组件服务”前面的“”号,依次展开各项,直到出现“DCOM配置”选项为止,即可查看DCOM中各个配置对象。
![](https://epubservercos.yuewen.com/0BD71E/15056704604178906/epubprivate/OEBPS/Images/Figure-P28_2.jpg?sign=1739278706-KP7CeKbXKG5PxSlQCdMSIXhFltIma8QB-0-9422ff780a4ce382359709029422c6b6)
Step 03 根据需要选择DCOM配置的对象,如AxLogin,并单击鼠标右键,从弹出的快捷菜单中选择“属性”菜单命令,打开“AxLogin属性”对话框,在“身份验证级别”下拉列表中根据需要选择相应的选项。
![](https://epubservercos.yuewen.com/0BD71E/15056704604178906/epubprivate/OEBPS/Images/Figure-P28_3.jpg?sign=1739278706-IfMmAATvEHv8XweB6zH5LboYTzQDxX3z-0-59c541292ed5237f7c9bd1c065b4a722)
Step 04 选择“位置”选项卡,在打开的界面中对AxLogin对象进行位置的设置。
![](https://epubservercos.yuewen.com/0BD71E/15056704604178906/epubprivate/OEBPS/Images/Figure-P28_4.jpg?sign=1739278706-D7KqnXTiaoDxUjzV8eFc6jtKobH9nkov-0-6b0a2df6ad6993e8ba06a142eeb3a519)
Step 05 选择“安全”选项卡,在打开的界面中对AxLogin对象的启动和激活权限、访问权限和配置权限进行设置。
![](https://epubservercos.yuewen.com/0BD71E/15056704604178906/epubprivate/OEBPS/Images/Figure-P28_5.jpg?sign=1739278706-FQqHgXaakSPt0X72qidfgj0tjn1XN3NW-0-319c857afa30d2a07f2698d8dbccc052)
Step 06 选择“终结点”选项卡,在打开的界面中对AxLogin对象进行终结点的设置。
![](https://epubservercos.yuewen.com/0BD71E/15056704604178906/epubprivate/OEBPS/Images/Figure-P29_2.jpg?sign=1739278706-nGlFE3Ocal7Q5L4njHNlu7HOoPlh4ClF-0-49f2f8afaab31a0fb04fb652ed572db0)
![](https://epubservercos.yuewen.com/0BD71E/15056704604178906/epubprivate/OEBPS/Images/Figure-P29_1.jpg?sign=1739278706-ZaAhceb30eMdBTqmyOCYwIMmHsdmZiaz-0-5c092df98b4f3c81bb60a67a9ca22d4a)
Step 07 选择“标识”选项卡,在打开的界面中对AxLogin对象进行标识的设置,选择运行此应用程序的用户账户。设置完成后,单击“确定”按钮即可。
![](https://epubservercos.yuewen.com/0BD71E/15056704604178906/epubprivate/OEBPS/Images/Figure-P29_3.jpg?sign=1739278706-Bv36Ky5XCqHuX0GdfYMa1YGuZ76RvX7B-0-45668bbb485c5d7483d3fc88d136a82a)
由于DCOM可以远程操作其他计算机中的DCOM程序,而技术使用的是用于调用其他计算机所具有的函数的RPC(远程过程调用),因此,利用这个漏洞,攻击者只需要发送特殊形式的请求到远程计算机上的135端口,轻则可以造成拒绝服务攻击,重则可以以本地管理员权限执行任何操作。
2.3.2 RPC服务远程漏洞入侵演示
DcomRpc接口漏洞对Windows操作系统乃至整个网络安全的影响,可以说超过了以往任何一个系统漏洞。其主要原因是DCOM是目前几乎各种版本的Windows系统的基础组件,应用比较广泛。下面就以DComRpc接口漏洞的溢出为例,为大家详细讲解溢出的方法。
Step 01 将下载好的DComRpc.xpn插件复制到X-Scan的plugins文件夹中,作为X-Scan插件。
![](https://epubservercos.yuewen.com/0BD71E/15056704604178906/epubprivate/OEBPS/Images/Figure-P29_4.jpg?sign=1739278706-UiVbktFKc9fFBC9dnBKko5rUrHi1WOYn-0-c8a92d1ae5904d5502515bdb86607bdc)
Step 02 运行X-Scan扫描工具,选择“设置”→“扫描参数”选项,打开“扫描参数”对话框,再选择“全局设置”→“扫描模块”选项,即可看到添加的“DComRpc溢出漏洞”模块。
![](https://epubservercos.yuewen.com/0BD71E/15056704604178906/epubprivate/OEBPS/Images/Figure-P29_5.jpg?sign=1739278706-ioouoTkL9PwhGRYQVOaccL7XJ8YnFREs-0-f848cc40f945a0f9975cfb9f91072936)
Step 03 在使用X-Scan扫描到具有DComRpc接口漏洞的主机时,可以看到在X-Scan中有明显的提示信息,并给出相应的HTML格式的扫描报告。
![](https://epubservercos.yuewen.com/0BD71E/15056704604178906/epubprivate/OEBPS/Images/Figure-P30_1.jpg?sign=1739278706-fKoXUcgOzmVknMbMVS7qi7EjlXe4I5bU-0-f4a170c05b0ccd22c403469449686230)
Step 04 如果使用RpcDcom.exe专用DcomRpC溢出漏洞扫描工具,则可先打开“命令提示符”窗口,进入RpcDcom.exe所在文件夹,执行“rpcdcom -d 192.168.0.130”命令后开始扫描并会给出最终的扫描结果。
![](https://epubservercos.yuewen.com/0BD71E/15056704604178906/epubprivate/OEBPS/Images/Figure-P30_2.jpg?sign=1739278706-5cZjmhNjeFhFuY8tIVgWcGDFprdWEWKU-0-3e4b9f2c2a0e1942769b78530b115464)
2.3.3 RPC服务远程漏洞的防御
RPC服务远程漏洞可以说是Windows操作系统中最为严重的一个系统漏洞,下面介绍几个RPC服务远程漏洞的防御方法,以使用户的计算机或系统处于相对安全的状态。
1. 及时为系统打补丁
防御系统出现漏洞最直接、有效的方法是打补丁,对于RPC服务远程溢出漏洞的防御也是如此。不过在对系统打补丁时,务必要注意补丁相应的系统版本。
2. 关闭RPC服务
关闭RPC服务也是防范DcomRpc漏洞攻击的方法之一,而且效果非常彻底。其具体的方法为:选择“开始”→“设置”→“控制面板”→“管理工具”选项,在打开的“管理工具”窗口中双击“服务”图标,打开“服务”窗口。在其中双击“Remote Procedure Call(RPC)”服务项,打开其属性窗口。在属性窗口中将启动类型设置为“禁用”,这样自下次开机开始RPC将不再启动。
![](https://epubservercos.yuewen.com/0BD71E/15056704604178906/epubprivate/OEBPS/Images/Figure-P30_3.jpg?sign=1739278706-xYkavKWfNHEbUHtMNmITuZd2Kt8Dfa1N-0-659a92cbc5c6a744e61061df6fdff51e)
另外,还可以在注册表编辑器中将HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RpcSs的Start值由4变成2,重新启动计算机。
![](https://epubservercos.yuewen.com/0BD71E/15056704604178906/epubprivate/OEBPS/Images/Figure-P30_5.jpg?sign=1739278706-bPKabGZmgZiM780Y1oHYFjZE6kJdNQjk-0-a449ef2aa74ec45c5d4575aaec9cb0f0)
![](https://epubservercos.yuewen.com/0BD71E/15056704604178906/epubprivate/OEBPS/Images/Figure-P30_4.jpg?sign=1739278706-yxvXcYCPjUY2GJVvWxWjeCzGQs4Pafwd-0-2daf75172566dff97bba699e59ac55d0)
不过,进行这种设置后,将会给Windows的运行带来很大的影响,例如从登录Windows 10系统到显示桌面,要等待相当长的时间。这是因为Windows的很多服务都依赖于RPC,在将RPC设置为无效后,这些服务将无法正常启动。这种方式的弊端非常大,一般不能采取这种关闭RPC服务的方式。
3. 手动为计算机启用(或禁用)DCOM
针对具体的RPC服务组件,用户还可以采用具体的方法进行防御。例如禁用RPC服务组件中的DCOM服务,这里以Windows 10操作系统为例,其具体的操作步骤如下。
Step 01 选择“开始”→“运行”选项,打开“运行”对话框,输入Dcomcnfg命令,单击“确定”按钮,打开“组件服务”窗口,选择“控制台根节点”→“组件服务”→“计算机”→“我的电脑”选项,进入“我的电脑”文件夹,若针对于本地计算机,则需要右击“我的电脑”选项,从弹出的快捷菜单中选择“属性”选项。
![](https://epubservercos.yuewen.com/0BD71E/15056704604178906/epubprivate/OEBPS/Images/Figure-P31_1.jpg?sign=1739278706-MCDXxRnnMTMonHAU3Qp9AyjAGgNKO8qh-0-e5d5f387b3ad895c8374256309bfefc5)
Step 02 打开“我的电脑属性”对话框,选择“默认属性”选项卡,进入“默认属性”设置界面,取消勾选“在此计算机上启用分布式COM(E)”复选框,然后单击“确定”按钮即可。
![](https://epubservercos.yuewen.com/0BD71E/15056704604178906/epubprivate/OEBPS/Images/Figure-P31_3.jpg?sign=1739278706-AVAETww2v0w75IfbntpBRWPviniO9QkM-0-4686fedd176c96597d99163500cb64b3)
![](https://epubservercos.yuewen.com/0BD71E/15056704604178906/epubprivate/OEBPS/Images/Figure-P31_2.jpg?sign=1739278706-Ycv0GDJj1UqRinnhwHtdyK2UqEVRPG22-0-0bc4a3f3cad993bda4b3125413bb5121)
Step 03 若针对于远程计算机,则需要右击“计算机”选项,从弹出的快捷菜单中选择“新建”→“计算机”选项,打开“添加计算机”对话框。
![](https://epubservercos.yuewen.com/0BD71E/15056704604178906/epubprivate/OEBPS/Images/Figure-P31_4.jpg?sign=1739278706-AhglxLmslyVDinEvN7LfhdPtV6ihEoGh-0-1560a014a49d5d711dcaa7d248c53d29)
Step 04 在“添加计算机”对话框中,直接输入计算机名或单击右侧的“浏览”按钮来搜索计算机。
![](https://epubservercos.yuewen.com/0BD71E/15056704604178906/epubprivate/OEBPS/Images/Figure-P31_5.jpg?sign=1739278706-MEF6PdK0EMm379pkGw207ZR69LdwKB8M-0-47b20758fdf0d47eac45ab4cd15a1a81)