使用Microsoft-Windows-RPC监控横向渗透
0x01、背景
在局域网横向渗透中,像远程服务、远程计划任务、远程注册表、远程DCOM等方式攻击,都会通过Windows RPC协议来进行远程调用,而windows的ETW中正好有Microsoft-Windows-RPC这个etw监控点,本文就是通过Microsoft-Windows-RPC这个etw尝试监控拿到横向移动的数据
0x02、ETW相关
2.1 可以通过logman query命令查询Microsoft-Windows-RPC相关事件的信息以及输出级别
logman query providers "Microsoft-Windows-RPC"
2.2 可以通过以下logman命令,在system32目录下生成监控的ETW日志
logman -ets start some_test_log -p SomeProvider "keyword1,keyword2" win:Informational
logman -ets stop some_test_log
0x03、监控远程服务
3.1 如下图所示,远程服务会通过ncacn_np(SMB)或ncacn_ip_tcp(TCP)协议来进行远程RPC调用
3.2 使用远程服务命令进行测试
使用 Microsoft Message Analyzer 工具查看监控的some_test_log日志,使用 *Summary contains "367abb81-9844-35f1-ad32-98f038001003" 条件进行过滤
可以看到0x2(RDeleteService)和0xC(RCreateServices)
OpNum Method
12 RCreateServiceW
2 RDeleteService
具体信息为:
RCreateServiceW:
Microsoft_Windows_RPC 已启动服务器 RPC 调用。 接口 Uuid: 367abb81-9844-35f1-ad32-98f038001003 OpNum: 0x0000000C 协议: Value_2 终结点 \pipe\ntsvcs 身份验证级别 7 身份验证服务 8
RDeleteService:
Microsoft_Windows_RPC 已启动服务器 RPC 调用。 接口 Uuid: 367abb81-9844-35f1-ad32-98f038001003 OpNum: 0x00000002 协议: Value_2 终结点 \pipe\ntsvcs 身份验证级别 7 身份验证服务 8
可以看到接口Uuid为367abb81-9844-35f1-ad32-98f038001003,以及OpNum对应地操作,管道\pipe\ntsvcs信息,但是看不到远程计算机信息、服务的操作信息
0x04、远程注册表
执行远程注册表操作
使用Microsoft Message Analyzer 工具查看监控的日志
可以看到接口Uuid为338cd001-2244-31f1-aaaa-900038001003,以及OpNum为 0x6(BaseRegCreateKey)和0x11(BaseRegQueryValue),管道\pipe\winreg信息,但是看不到远程计算机信息
0x05、远程计划任务
执行计划任务
使用Microsoft Message Analyzer 工具查看监控的日志
可以看到接口Uuid为86d35949-83c9-4044-b424-db363231fd0c,以及OpNum为0x1(SchRpcRegisterTask),通过TCP协议传输,但是看不到远程计算机信息
0x06、远程DCOM/WMI
执行DCOM
可以看到接口Uuid为000001a0-0000-0000-c000-000000000046,以及OpNum为0x4(RemoteCreateInstance),通过TCP协议传输,但是看不到远程计算机信息
执行WMI,和DCOM也是一样的结果
0x07、总结
本文通过Microsoft_Windows_RPC的ETW事件,尝试监控远程服务、远程计划任务、远程注册表、远程DCOM/WMI的测试,可以通过uuid以及OpNum确定操作类型,以及操作api,但是无法获取到操作的API参数,以及来源的IP地址
posted on 2022-01-19 20:56 ciyze0101 阅读(2327) 评论(0) 编辑 收藏 举报