windows应急响应溯源流程Part1

一、账号,服务,端口

注意:溯源取证和维权对抗是相互的,本次只是从蓝队和溯源方向总结。比如ETW的篡改方法很多,后续会不断从rt角度更新补充。

  1. 查看服务器,主机是否存在可疑账号、新增账号。

本地用户组查看Cmd 打开 lusrmgr.msc:

 

 

查看是否有新增/可疑的账号,如有管理员群组的(Administrators)里的新增账户,如有,请立即禁用或删除掉。

Net user查看

2. 影子用户对抗

影子用户顾名思义就是一个隐藏用户,只能通过注册表查看这个用户,其它方式是找不到这个用户的信息的

在用户名后面加一个$可以创建一个匿名用户,创建完毕后我们再把这个用户添加到administrator组

创建一个测试的匿名账号:

net user  malware$ malware  /add

添加到用户组:

net localgroup administrators malware$ /add、

 此时使用net user 看不到用户,但是本地用户组还是可以看到:

 

 Regedit打开注册表:HKEY_LOCAL_MACHINE\SAM\SAM,修改权限

重启注册表就能看到下面目录:

 把管理员f值对应的数据到处保存:

 

 

 把管理员的F值赋值到 malware账号:

 把创建的账号删掉:

 

这样用户组和命令行都看不到了:

 

对抗方法就是取证不能过于依赖本地用户组信息,还要去查看注册表用户信息。

HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users

3.寻找可疑端口,进程和服务

先用netstat -a 罗列当前活跃端口  -ano 命令:

可以根据pid定位进程名:

获取全部路径:

wmic process where processid=2208 get processid,executablepath,name

 

 可以借助第三方工具查看进程信息,活跃端口等:(pchunter,火绒剑等)

 也可以使用系统自带的msinfo32

寻找可疑服务:services.msc

或者

 注意:可疑服务的对抗方式还需要单独详细整理一篇。比如通信流量解密审查等。

二、事件查看器,日志分析

控制面板->管理工具:

 

 

日志保存路径

  1. 系统日志

记录操作系统组件产生的事件,主要包括驱动程序、系统组件和应用软件的崩溃以及数据丢失错误等。系统日志中记录的时间类型由Windows NT/2000操作系统预先定义。

默认位置: %SystemRoot%\System32\Winevt\Logs\System.evtx

  1. 应用程序日志

包含由应用程序或系统程序记录的事件,主要记录程序运行方面的事件,例如数据库程序可以在应用程序日志中记录文件错误,程序开发人员可以自行决定监视哪些事件。如果某个应用程序出现崩溃情况,那么我们可以从程序事件日志中找到相应的记录,也许会有助于你解决问题。

默认位置:%SystemRoot%\System32\Winevt\Logs\Application.evtx

  1. 安全日志

记录系统的安全审计事件,包含各种类型的登录日志、对象访问日志、进程追踪日志、特权使用、帐号管理、策略变更、系统事件。安全日志也是调查取证中最常用到的日志。默认设置下,安全性日志是关闭的,管理员可以使用组策略来启动安全性日志,或者在注册表中设置审核策略,以便当安全性日志满后使系统停止响应。

默认位置:%SystemRoot%\System32\Winevt\Logs\Security.evtx

​ 系统和应用程序日志存储着故障排除信息,对于系统管理员更为有用。 安全日志记录着事件审计信息,包括用户验证(登录、远程访问等)和特定用户在认证后对系统做了什么,对于调查人员而言,更有帮助。

也可以使用微软官方的LogParser进行分析,因为日志的存储是关系型数据库:

 

https://www.microsoft.com/en-us/download/details.aspx?id=24659

详细信息窗格

打开事件查看器时,“详细信息”窗格将显示“概述”和“摘要”。我们将讨论摘要视图之后。从导航窗格中选择一个项目以查看事件列表

默认情况下,事件条目按时间顺序列出,最新事件位于顶部。单击任何列标题以按该字段以升序或降序对事件进行排序。在同一列标题中再次单击会反转排序顺序。例如,单击级别按严重程度排序。插入符号^符号或反向插入符号表示排序字段和排序方向。

每个事件都有一个严重级别

信息消息表明操作成功。

警告消息表明发生的事件可能会成为问题。

错误消息表明发生了重大问题。

严重消息表明发生了严重问题。

审计成功与安全事件相关联。

审计失败与安全事件相关。

显示错误和警告的事件查看器详细信息窗格:

 

 

三、自启动项、计划任务

对于攻击者后渗透阶段的提权和维持阶段,方法有很多,在实际应急中无法排查所有情况,有些也需要根据具体样本分析判断其维持方法,比如CLR劫持,office拦截,白利用侧加载启动等。但是基本的维持手段要排查到,其他的windows提权和维持见另一篇整理的文章。

可以根据任务管理器,或者msconfig查看非微软启动项:

 

注册表排查一般启动项目录:

%HOMEPATH%\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup

对应的注册表位置:

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\ShellFolders]  Startup=\”%Directory%\”

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User ShellFolders] Startup=\”%Directory%\”

其中“%Directory%”为启动文件夹位置。

RunServicesOnce注册键用来启动服务程序,启动时间在用户登录之前,而且先于其他通过注册键启动的程序。

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce,

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServicesOnce。

RunServices注册键指定的程序紧接RunServicesOnce指定的程序之后运行,但两者都在用户登录之前。

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunServices

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices

RunOnce注册键

安装程序通常用RunOnce键自动运行程序。

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce。

Run是自动运行程序最常用的注册键。

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run。

Windows目录下system.dat和user.dat里存储的是注册表信息。

排查所有计划可疑计划任务:

四、系统相关信息(补丁)

通过systeminfo查看系统版本和补丁信息:

 

参考链接:

  1. https://www.loggly.com/ultimate-guide/windows-logging-basics/
  2. https://bu1.github.io/2021/10/30/Windows%E5%9F%BA%E7%A1%80(%E4%B8%89)%EF%BC%9A%E6%B3%A8%E5%86%8C%E8%A1%A8%E4%B8%8E%E8%87%AA%E5%90%AF%E5%8A%A8/
  3. https://bypass007.github.io/Emergency-Response-Notes/Summary/%E7%AC%AC1%E7%AF%87%EF%BC%9AWindow%E5%85%A5%E4%BE%B5%E6%8E%92%E6%9F%A5.html
  4. https://xz.aliyun.com/t/6461#toc-14
  5. http://www.4k8k.xyz/article/qq_38684504/103152214

关注作者

后期文章不定时更新并同步分享到公众号:

 

 

 

 

 

 

 

Windows系统中进行应急响应时,通常需要遵循一套标准化的流程,以确保能够快速、准确地识别和处理安全事件。应急响应流程通常包括以下几个关键阶段: 1. **准备阶段**:在事件发生前,确保系统已配置了适当的日志记录、监控工具和自动化响应机制。日志分析是溯源的核心手段,需熟练掌握各种日志位置和分析技巧[^1]。此外,应预先部署必要的应急工具,如进程分析工具(如Autoruns、PCHunter、ProcessExplorer、火绒剑等)[^2]。 2. **检测与分析阶段**:当安全事件发生时,首先通过日志分析和系统监控工具识别异常行为。使用自动化工具(如D盾、Burp Suite等)进行初步检测,并结合手动验证以确认是否存在恶意活动[^1]。同时,应收集系统信息,包括当前运行的进程、网络连接、注册表项等,以辅助分析。 3. **遏制阶段**:在确认事件后,立即采取措施防止攻击扩散。例如,隔离受感染的主机、断开异常网络连接、暂停可疑进程等。此阶段的目标是控制事件影响范围,避免进一步损害。 4. **根除与恢复阶段**:清除攻击者留下的后门、恶意代码或配置更改。使用进程分析工具定位并终止恶意进程,必要时进行系统还原或重新安装受影响的组件。同时,应修补系统漏洞,防止类似事件再次发生。 5. **事后分析与总结阶段**:完成应急响应后,进行时间线重建,理解攻击过程至关重要。通过日志、内存转储等信息还原攻击路径,总结经验教训,并优化现有的安全策略和响应流程。 ### 最佳实践 - **日志分析**:Windows系统中,事件查看器(Event Viewer)是分析系统日志的重要工具。重点关注安全日志(Security Log)中的登录事件、账户管理事件等。 - **进程与内存分析**:使用工具如Process Explorer和火绒剑可以深入分析进程行为,识别隐藏的恶意进程;使用ProcessDump可以导出可疑进程的内存进行进一步分析。 - **网络连接监控**:使用Netstat和TCPView等工具监控当前网络连接,识别异常的外部通信。 - **自动化与手动结合**:虽然自动化工具可以提高响应效率,但手动验证仍然是确保准确性的关键步骤。 ```powershell # 示例:使用PowerShell查看当前运行的进程 Get-Process | Select-Object Name, Id, CPU, StartTime # 查看当前网络连接 Get-NetTCPConnection | Select-Object LocalAddress, LocalPort, RemoteAddress, RemotePort, State ``` ### 相关问题 1. Windows系统中常用的日志分析工具有哪些? 2. 如何使用Process Explorer分析可疑进程? 3. 应急响应中如何有效进行时间线重建? 4. Windows系统中如何识别和清除持久化后门? 5. 常见的应急响应自动化工具及其使用场景有哪些?
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值