sysmon安装配置及其使用,EDR一些防御case肯定是要看的
原文:https://www.jianshu.com/p/43bf5aadfd28
我自己安装成功以后,可以看到采集的日志,运行powershell以后生成的日志:

sysmon安装配置及其使用

22021.09.15 11:11:09字数 900阅读 1,366
sysmon是微软团队出品的一款日志搜集工具,这里记录下其安装配置使用方法
环境
- Windows 10 64位
软件下载
进入到微软官方下载地址点击链接下载sysmon
:

sysmon下载
软件安装
下载好的软件进行解压,解压完成后如图所示:

解压后的sysmon
在电脑开始菜单输入cmd
搜索,选择以管理员身份运行
(一定要选择管理员权限运行,否则后续安装会报错):

打开cmd
在cmd
命令窗口输入命令安装sysmon
(该路径为sysmon
存放路径):
C:\Users\User\Downloads\Sysmon\Sysmon64.exe -i
然后就能看到出现了安装界面:

安装界面
点击agree
,安装完成:

安装完成
软件配置
配置文件参考博客编写即可,编写完成后在命令行窗口输入命令配置sysmon
:
C:\Users\User\Downloads\Sysmon\Sysmon64.exe -c <config.xml文件路径>
由于这里不需要配置规则,保持默认配置即可:
C:\Users\User\Downloads\Sysmon\Sysmon64.exe -c --

修改为默认配置
软件使用
键盘同时按下win
+r
,在弹出的窗口输入eventvwr.msc
打开事件查看器:

打开事件查看器
在打开的事件查看器中依次选择应用程序和服务日志
>Microsoft
>Windows
>Sysmon
:

事件查看器
在sysmon
日志中选取信息,点击详细信息即可查看到详细日志信息:

日志信息查看
这里给出事件ID对应的事件类型:
EventType | 译文 | EventId |
---|---|---|
Sysmon Service Status Changed | sysmon服务状态改变 | 0 |
ProcessCreate | 进程创建 | 1 |
FileCreateTime | 文件创建时间更改 | 2 |
NetworkConnect | 网络连接 | 3 |
Service State Change | 服务状态改变 | 4 |
ProcessTerminate | 进程终止 | 5 |
DriverLoad | 驱动程序加载 | 6 |
ImageLoad | 镜像加载 | 7 |
CreateRemoteThread | 创立远程线程 | 8 |
RawAccessRead | 检测到原始访问读取 | 9 |
ProcessAccess | 已访问的进程 | 10 |
FileCreate | 文件创建 | 11 |
Registry object added or deleted | 添加或删除注册表对象 | 12 |
Registry Create | 注册表值设置 | 13 |
Registry Rename | 注册表对象重命名 | 14 |
FileCreateStreamHash | 已创建文件流 | 15 |
Sysmon Config Change | sysmon配置更改 | 16 |
Named Pipe Create | 命名管道创建 | 17 |
Named Pipe Connected | 命名管道连接 | 18 |
WMI Event Filter | 检测到WMI Event Filter活动 | 19 |
WMI Event Consumer | 检测到WMI Event Consumer活动 | 20 |
WMI Consumer to Filter | 检测到WMI Consumer to Filter活动 | 21 |
DNS Query | DNS查询 | 22 |
File Delete | 文件删除 | 23 |
Clipboard Capture | 剪贴板捕获 | 24 |
Process Tampering | 进程篡改 | 25 |
File Delete Detected | 检测到文件删除 | 26 |
Error | 错误 | 255 |
关于Event ID
更详细的介绍见Github
日志导出
如果想要将日志信息导出,则可按照以下流程进行。
首先,下载大佬的脚本
然后打开powershell
,运行命令导入脚本:
Import-Module .\Export-WinEvents.ps1
其中,空格后面的部分为要引入的脚本路径(本句表示脚本在当前目录下),注意此处为反斜杠表示分隔符
然后,运行命令清空当前的sysmon
日志:
@('Microsoft-Windows-Sysmon/Operational') | Clear-WinEvents
最后,运行命令导出日志:
$FromDate = get-date;
@('Microsoft-Windows-Sysmon/Operational') | Export-WinEvents -EndDate $FromDate -OutputPath "SecurityDataset_$(get-date -format yyyy-MM-ddTHHmmssff).json" -Verbose
其中,@()
内的代表日志的类型,可以为多个;而-OutputPath
后引号内的参数为导出的日志文件的路径和名称
参考资料
本文参考了以下文档,可自行拓展查看:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」
2021-04-19 致远OA漏洞——本质上是先url编码+gzip压缩来绕过检测
2019-04-19 回文的范围——算法面试刷题2(for google),考察前缀和
2019-04-19 最长绝对文件路径——算法面试刷题1(google),字符串处理,使用tree遍历dfs类似思路
2019-04-19 端口扫描系统实践心得
2019-04-19 Gradient Boosting, Decision Trees and XGBoost with CUDA ——GPU加速5-6倍
2017-04-19 赴美生子怀孕前和怀孕后保险——备孕前2年可以买备孕险,怀孕生产意外或者孩子意外可以买孕中险
2017-04-19 美国诚实签经验——我准备了家庭预算表 和 保险,麻烦您看下,谢谢