sysmon规则编写简介
安装
下载地址 : https://download.sysinternals.com/files/Sysmon.zip
- 1
Install: Sysmon.exe -i <configfile> # 指定配置文件安装 sysmon -accepteula –i -n # 一键安装(使用sha1进行散列的过程映像,无网络监控) sysmon -accepteula -i -h md5,sha256 -n # 使用md5和sha256进行安装创建进程并监视网络连接 sysmon -accepteula -i c\windows\config.xml # 使用配置文件安装Sysmon [-h <[sha1|md5|sha256|imphash|*],...>] [-n [<process,...>]] [-l (<process,...>)] Configure: Sysmon.exe -c <configfile> # 从文件读取修改配置信息 sysmon –c -- # 修改配置信息为默认配置 sysmon -c # 转储配置文件 [--|[-h <[sha1|md5|sha256|imphash|*],...>] [-n [<process,...>]] [-l [<process,...>]]] Uninstall: Sysmon.exe -u # 卸载 # 注 : 安装需要管理员权限 操作系统 windows 7+ 上日志会写入到 Logs/Microsoft/Windows/Sysmon/Operational 低版本windows 会写入到 system日志
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 参数说明
-d # 指定已安装设备驱动程序映像的名称。 -c # 更新或显示配置 如果没有提供其他参数,则为当前配置。可选获取配置文件。 -h # 指定hash记录的算法 -i # 安装,可用xml文件来更新配置文件 -l # 记录加载模块,可指定进程 -m # 安装事件清单 -n # 记录网络链接 -r # 检测证书是否撤销 -u # 卸载服务和驱动 -s # 打印配置架构 -? config # 查看配置文件写法
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
配置文件说明
- 官方给出的配置文件例子:
<Sysmon schemaversion="4.21"> <!-- Capture all hashes --> <HashAlgorithms>*</HashAlgorithms> <!--哈希配置(默认使用sha1) --> <EventFiltering> <!--事件筛选--> <!-- Log all drivers except if the signature --> <!-- contains Microsoft or Windows --> <DriverLoad onmatch="exclude"> <!--默认记录所有日志 除非标记 ? --> <Signature condition="contains">microsoft</Signature> <Signature condition="contains">windows</Signature> </DriverLoad> <!-- Do not log process termination --> <!--不记录进程终止--> <ProcessTerminate onmatch="include" /> <!-- Log network connection if the destination port equal 443 --> <!-- or 80, and process isn't InternetExplorer --> <NetworkConnect onmatch="include"> <DestinationPort>443</DestinationPort> <!-- 记录443 端口连接记录--> <DestinationPort>80</DestinationPort> </NetworkConnect> <NetworkConnect onmatch="exclude"> <Image condition="end with">iexplore.exe</Image> </NetworkConnect> </EventFiltering> </Sysmon> -- 配置条目直接位于Sysmon 标签下, 过滤器位于 EventFiltering 标签下
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 过滤器标签
ProcessCreate 进程创建 FileCreateTime 文件创建时间更改 NetworkConnect 检测到网络连接 ProcessTerminate 进程终止 DriverLoad 驱动程序已加载 ImageLoad 镜像加载 CreateRemoteThread 已检测到创建远程线程 RawAccessRead 检测到原始访问读取 ProcessAccess 已访问的进程 FileCreate 文件创建 RegistryEvent 添加或删除注册表对象 RegistryEvent 注册表值设置 RegistryEvent 注册表对象已重命名 FileCreateStreamHash 已创建文件流 PipeEvent 管道创建 PipeEvent 管道已连接 WmiEvent 检测到WmiEventFilter活动 -- WmiEventFilter activity detected WmiEvent 检测到WmiEventConsumer活动 -- WmiEventConsumer activity detected WmiEvent 检测到WmiEventConsumerToFilter活动 -- WmiEventConsumerToFilter activity DnsQuery DNS查询
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 标签使用说明:
使用onmacth标记配置文件中 过滤器规则 include exclude include: 仅包含include的规则配置 exclude: 除去该规则配置, 其他全包含 PS: 例如,此规则将丢弃进程创建中 IntegrityLevel 为中等的任何流程事件 <ProcessCreate onmatch="exclude"> <IntegrityLevel>Medium</IntegrityLevel> </ProcessCreate>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 过滤器标签的字段可以使用其他条件匹配该值
-------------------------------------- 注: 不区分大小写 -------------------------------------- 字段如下: is 默认值, 等于 is not 不等于 contains 包含 excludes 不包含 begin with 以此字段开始 end with 以此字段结束 less than 小于 more than 大于 image 匹配镜像路径(完整路径或仅镜像名称) 例如:lsass.exe将匹配c:\windows\system32\lsass.exe -----------------------------------------
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 规则组:
<EventFiltering> <RuleGroup name="group 1" groupRelation="and"> <!--规则组1 组关系and --> <ProcessCreate onmatch="include"> <!--进程创建--> <Image condition="contains">timeout.exe</Image> <!--进程名为 timeout.exe 且 命令行参数为100 才会生成日志文件--> <CommandLine condition="contains">100</CommandLine> </ProcessCreate> </RuleGroup> <RuleGroup groupRelation="or"><!-- 组关系or --> <ProcessTerminate onmatch="include"><!--进程退出--> <Image condition="contains">timeout.exe</Image> <!--进程为timeout.exe 或者 进程为ping.exe 结束时产生事件--> <Image condition="contains">ping.exe</Image> </ProcessTerminate> </RuleGroup> <ImageLoad onmatch="include"/> </EventFiltering>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
要让sysmon报告哪个规则匹配导致记录事件,请向规则添加名称: <NetworkConnect onmatch="exclude"> <!----> <Image name="network iexplore" condition="contains">iexplore.exe</Image> </NetworkConnect>
- 1
- 2
- 3
- 4
- 5
- 官方给出的配置文件例子:
<Sysmon schemaversion="4.21">
<!-- Capture all hashes -->
<HashAlgorithms>*</HashAlgorithms>
<CheckRevocation/>
<EventFiltering >
<RuleGroup name="" groupRelation="or">
<ProcessCreate onmatch="exclude"></ProcessCreate>
<FileCreateTime onmatch="exclude"></FileCreateTime>
<NetworkConnect onmatch="exclude"></NetworkConnect>
<ProcessTerminate onmatch="exclude"></ProcessTerminate>
<DriverLoad onmatch="exclude"></DriverLoad>
<ImageLoad onmatch="exclude"></ImageLoad>
<CreateRemoteThread onmatch="exclude"></CreateRemoteThread>
<RawAccessRead onmatch="exclude"></RawAccessRead>
<ProcessAccess onmatch="exclude"></ProcessAccess>
<FileCreate onmatch="exclude"></FileCreate>
<RegistryEvent onmatch="exclude"></RegistryEvent>
<FileCreateStreamHash onmatch="exclude"></FileCreateStreamHash>
<PipeEvent onmatch="exclude"></PipeEvent>
<DnsQuery onmatch="exclude"></DnsQuery>
</RuleGroup>
</EventFiltering>
没有评论:
发表评论