【2022争霸赛*干货满满】Windows主机入侵痕迹排查办法
  

李会斌 1355

{{ttag.title}}
本帖最后由 李会斌 于 2022-10-21 12:24 编辑

Windows主机入侵痕迹排查办法
一、排查思路
在攻防演练保障期间,一线工程师在实施主机入侵痕迹排查服务时可能面临时间紧、任务急、需要排查的主机数量众多情况。为了确保实施人员在有限的时间范围内,可以高效且保证质量的前提下完成主机入侵痕迹排查工作,本人总结了自己的一些经验,下面的内容特此分享主机入侵痕迹排查服务中重点、关键的排查项,仅作为参考使用。
1.1初步筛选排查资产
     一般情况下,客户资产都比较多,想要对所有的资产主机进行入侵痕迹排查基本不太现实,等你全部都排查完了,攻击者该做的事早就做完了,想要的目的也早就达到了。那么针对客户资产量大的情况,我们应该怎么处理?首先,在排查前,作为项目经理,应该与客户沟通好,取得授权,确认排查范围和排查方案和办法,客户若是没有授意或者同意,那么下面的操作都是违规操作,甚至有的还违法。取得客户同意后,我们再从资产面临的风险等级、资产的重要程度、攻击者的攻击思路、手法及目标选择倾向几个方面去初步筛选出排查资产。这里建议从以下资产范围选取:①曾失陷资产:在以前的红蓝对抗、攻防演练、或者真实的黑客攻击事件中被攻陷的主机,曾失陷资产应作为排查的重点对象。②互联网暴露脆弱资产:从互联网暴露资产中筛选出使用了高危漏洞频发的组件/应用(组件如Weblogic、JBoss、Fastjson、Shiro、Struts2等)。还有一个点需要注意,就是客户是否具有有效的资产管理,是否能够清晰明确识别出哪些资产用了什么组件,如果不能的话,只能通过之前的渗透测试结果来筛选出脆弱资产。③关键资产:如域控等可以导致大量主机失陷的集权类资产。
1.2确定排查资产
     主机入侵痕迹排查工作建议在一周内对数量控制在20台以内的主机进行排查。经过初步筛选的资产数量如果远远大于20台主机,需要从资产里面进行二次筛选,如果存在曾失陷资产,排查主机范围可以定为曾失陷资产;如果不存在曾失陷资产,排查主机范围可以定为脆弱资产,具体可以根据客户自身实际情况调整。需要注意是,如果排查资产中包含曾失陷资产的话,需要向客户索要历史攻防演练/应急等报告,在排查时需结合历史报告和指导手册内容一起进行排查,需要特别留意历史报告中攻击者的入侵痕迹是否已经完全清理。
1.3入侵痕迹排查
      在实际情况下,攻击者在进行攻击时使用的攻击手法、攻击思路、行为等各有差异,无论是考虑实现成本还是效率问题,都难以通过很精细很全面的排查项去实施主机入侵痕迹排查,但是我们可以从攻击中可能会产生的一些比较共性的行为特征、关键的项进行排查。对于主机的入侵痕迹排查,主要从网络连接、进程信息、后门账号、计划任务、登录日志、自启动项、文件等方面进行排查。比如,如果存在存活后门,主机可能会向C2发起网络连接,因此可以从网络连接排查入手,如果存在异常的网络连接,则必然说明存在恶意的进程正在运行,则可以通过网络连接定位到对应进程,再根据进程定位到恶意文件。如果攻击者企图维持主机控制权限的话,则可能会通过添加后门账号、修改自启动项,或者添加计划任务等方式来维持权限,对应的我们可以通过排查账号、自启动项、计划任务来发现相应的入侵痕迹。
二、排查内容
2.1windows主机攻击者一般使用 attrib <程序> +s +h 命令隐藏恶意程序,故在排查痕迹前需打开“工具—文件夹选项—查看”。按照下图中的设置,即可显示所有文件。
2.1.1网络连接排查步骤:在CMD中执行 netstat -ano 查看目前的网络连接。
这种情况一般都比较正常,只有80和443端口,一般都是正常业务开放端口。分析方法:如果网络连接出现以下情况,则当前主机可能已经失陷:1、主机存在对内网网段大量主机的某些端口(常见如22,445,3389,6379等端口)或者全端口发起网络连接尝试,这种情况一般是当前主机被攻击者当作跳板机对内网实施端口扫描或者口令暴力破解等攻击。
2、主机和外网IP已经建立连接(ESTABLISHED状态)或者尝试建立连接(SYN_SENT状态),可以先查询IP所属地,如果IP为国外IP或者归属各种云厂商,则需要重点关注。进一步可以通过威胁情报(https://x.threatbook.cn/等)查询IP是否已经被标注为恶意IP。
3、如果无法直接从网络连接情况判断是否为异常连接,可以根据网络连接找到对应的进程ID,判断进程是否异常。如果不能从进程判断,可以进一步找到进程对应文件,将对应文件上传至virustotal(https://www.virustotal.com)进行检测。如上面截图中对内网扫描的进程ID是2144,在任务管理器中发现对应的文件是svchost.exe。上传至virustotal检测的结果为恶意文件。若在排查网络连接中,任务管理器只能看到有命令行工具(如powershell、cmd)powershell进程与外联IP建立会话,无法看到进程对应的运行参数。此时可借助Process Explorer进一步观察powershell的运行参数。如下在Process Explorer中发现powershell执行了cobalt strike脚本的痕迹。
2.1.2敏感目录排查步骤:查看攻击方常喜欢上传的目录是否有可疑文件。分析方法:1、各个盘符下的临时目录,如C:\TEMP、C:\Windows\Temp等。
2、%APPDATA%,在文件夹窗口地址栏输入%APPDATA%,回车即可打开当前用户的appdata目录
如Administrator用户对应的%APPDATA%目录C:\Users\Administrator\AppData\Roaming。可以按照修改日期排序筛选出比较临近时间有变更的文件。
3、浏览器的下载目录
4、用户最近文件%UserProfile%\Recent,如Administrator对应的目录为C:\Users\Administrator\Recent
5、回收站,如C盘下回收站CRecycle.Bin对于脚本文件可直接查看内容判定是否为恶意,若是遇到exe可执行文件,可将对应文件上传至virustotal(https://www.virustotal.com)进行检测。
2.1.3后门文件
分析方法:1、查看粘滞键exe查看C:\Windows\System32\下的sethc.exe文件的创建、修改时间是否正常,如下图,一般情况下,系统文件的创建时间与修改时间应相同,sethc的创建时间与修改时间不同,可确定sethc已被替换成后门文件。由于攻击者可修改文件时间,上述简单粗暴的判断方式可能不靠谱,可将sethc拷贝出来、上传至VT检测危害。
2、查看注册表中映像的键值检查注册表“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options”下所有exe项中是否有debugger键,若有debugger键,将其键值对应的程序上传至VT检测。如下图,攻击者利用该映像劫持的攻击者方式,在sethc.exe项中新建debugger键值指向artifact.exe,攻击效果为当连续按5下shift键后,不会执行sethc.exe,而是转而执行劫持后的artifact.exe文件。于是在排查中发现有debugger键值,均可认为指定的文件为后门文件,待上传VT后确认其危害。




这里没有debugger键,下面的图是有的
:
2.1.4后门账号排查步骤:
分析方法:查看注册表中HKLM\SAM\SAM\Domains\Account\Users\Names中是否有多余的账号(可询问客户运维人员以确定账号存在的必要性)。正常情况下,上述路径的SAM权限仅system用户可查看,需要给administrator用户授权才能打开完整路径。对SAM右键、给administator用户添加完全控制权限(下图的权限操作方法适用于win7及以上操作系统):
win2003、XP等低版本系统的操作方法请使用下图的流程给administrators组添加权限。
带有$符号的账号特指隐藏账号(如aaaa$),正常业务中不需要创建隐藏账号,可判断带有$符号的均为后门账号。然后在客户运维的协助下排查其他的异常账号。如下图中,除了aaaa$可直接判断外,root账号为高度关注对象。(注:aaaa$中的键值0x3ea表示该账号与Users表中相应数值的表相对应,在删除账号时需一起删除)
注:异常账号删除后需要将之前授权的administrator移除SAM权限。查看administrators组中是否存在赋权异常的账号。比如正常情况下guest用户处于禁用状态、普通应用账户(weblogic、apache、mysql)不需要在administrators组中。如下图,执行命令net user guest查看guest账号的信息,如果guest账号被启用,且在管理员组成员中有guest用户,需要询问客户运维人员该guest账户启用的必要性以及加入管理组是否有必要,否则可认为攻击者将系统自带用户guest启用并提权至管理员组后作为后门账号使用。
执行net localgroup Administrators关注管理员组别是否存在异常账号:
2.1.5自启动项排查步骤:
分析方法:1、使用Autoruns:使用工具能较全面地查看系统中的自启动项。在得到客户授权,能够在可能失陷的主机上传排查工具时,可使用Autoruns工具进行详细的自启动项排查。排查中主要关注粉色条目,建议与客户运维人员一同查看,以及时排除业务所需的正常自启项。如下图,在Everything栏中,查看粉色的条目中发现常见的sethc被劫持为cmd,Command Processor键值(默认为空)关联到名为windowsupdate.exe(效果为启动cmd时,被关联的程序会静默运行)。sethc的劫持可确认为入侵痕迹,Command Processor键值的关联程序需要找客户进一步确认是否业务所需,或将windowsupdate.exe上传VT检测。
另外,这个工具很好用 ,特别小,可以直接上传文件到VT进行检测。2、查看组策略:在无法使用工具、只能手工排查的情况下,可查看常见的自启项是否有异常文件。打开gpedit.msc—计算机配置/用户配置—Windows设置—脚本,在此处可设置服务器启动/关机或者用户登录/注销时执行的脚本。下图1、2两处的脚本均需要查看是否添加有脚本。
2.1.6日志工程师基本都会看日志,windows日志也就那些内容,比较简单,我就不细述,主要写一下几个比较重要的点,基本上就可以排查出是否有异常登录了。


2699863520f51e46ef.png (123.77 KB, 下载次数: 18)

2699863520f51e46ef.png

1799163520facec6ba.png (145.59 KB, 下载次数: 22)

1799163520facec6ba.png

40898635210fc38ff7.png (183.99 KB, 下载次数: 20)

40898635210fc38ff7.png

打赏鼓励作者,期待更多好文!

打赏
1人已打赏

339015 发表于 2022-10-22 03:59
  
感谢楼主分享,文章详细介绍了windows被入侵的痕迹检索思路,非常详尽,具备可参考性,期待更多分享
新手719320 发表于 2022-10-31 11:15
  
学习一下,感谢楼主分享!!!!
小鱼儿 发表于 2023-3-31 12:11
  

学习一下,感谢楼主分享!!!!
蔺嘉宾 发表于 2023-3-31 12:11
  

学习一下,感谢楼主分享!!!!
朱墩2 发表于 2023-3-31 12:11
  

学习一下,感谢楼主分享!!!!
唐三平 发表于 2023-3-31 12:11
  

学习一下,感谢楼主分享!!!!
小德 发表于 2023-3-31 12:19
  

学习一下,感谢楼主分享!!!!
小西北 发表于 2023-3-31 12:19
  

学习一下,感谢楼主分享!!!!
梦境人生 发表于 2023-3-31 12:19
  

学习一下,感谢楼主分享!!!!
发表新帖
热门标签
全部标签>
每日一问
技术盲盒
干货满满
技术笔记
新版本体验
产品连连看
2023技术争霸赛专题
技术咨询
GIF动图学习
功能体验
标准化排查
信服课堂视频
自助服务平台操作指引
社区帮助指南
通用技术
秒懂零信任
答题自测
安装部署配置
上网策略
SANGFOR资讯
技术晨报
项目案例
深信服技术支持平台
畅聊IT
专家问答
技术圆桌
在线直播
MVP
网络基础知识
升级
安全攻防
测试报告
日志审计
问题分析处理
流量管理
每日一记
运维工具
云计算知识
用户认证
原创分享
解决方案
sangfor周刊
VPN 对接
专家分享
技术顾问
信服故事
SDP百科
功能咨询
终端接入
授权
设备维护
资源访问
地址转换
虚拟机
存储
迁移
加速技术
排障笔记本
产品预警公告
玩转零信任
信服圈儿
S豆商城资讯
技术争霸赛
「智能机器人」
追光者计划
答题榜单公布
纪元平台
卧龙计划
华北区拉练
天逸直播
以战代练
山东区技术晨报
文档捉虫活动
齐鲁TV
华北区交付直播
每周精选

本版版主

12
185
6

发帖

粉丝

关注

本版达人

LoveTec...

本周分享达人

新手24116...

本周提问达人