<返回更多

Windows上机取证检查

2021-08-16    白帽子黑客笔记
加入收藏

为什么要取证

Windows上机取证检查

 

附录2:取证思路

Windows上机取证检查

 

附录3:取证分析纲要

Windows上机取证检查

 

注:在上机取证的同时应该对操作的每个步骤进行截图保存,方便作为后续写报告的依据。

 

一、网络、进程检测

Windows上机取证检查

 

通过网络连接情况和程序进程对主机进行检测取证,直接定位出可疑文件。

 

1.1、网络情况查看

 

1.1.1 网络连接查看

使.NETstat -ano查看当前所有的网络连接。通过对IP地址查看定位异常请求。

Windows上机取证检查

 

通过pid定位程序位置:wmic process |findstr pid

Windows上机取证检查

 

1.1.2 木马心跳或网络请求查看

可以使用LiveTcpUdpWatch对网络情况进行查看(可后台运行半小时查看结果),该软件能记录DNS请求(用于捕捉木马心跳—非持续性连接的网络进程),网络连接等情况,通过远程连接IP(流量获取或者其他途径)定位到木马的PID,结合PChunter或任务管理器进行木马定位。

Windows上机取证检查

 

1.1.3 全局流量查看

若有需要可以使用Wireshark对当前网络流量进行监控,主要是尽可能多的收集攻击者信息和潜在的木马连接信息。

Windows上机取证检查

 

1.2 进程检测

注意点:不建议使用任务管理器进行系统进程检查,因为可供分析的维度较少,且容易被进程名欺骗,操作系统允许相同名称但不同执行路径的进程同时存在。

查看本机所有进程建议使用PCHunter进行查看,信息比较全,可以同时看到进程名称和程序路径。

Windows上机取证检查

 

若不方便使用外部工具可以使用wmic命令查看进程信息:

wmic process get caption,commandline,creationDate,executablepath,handle,handleCount

在cmd命令行中复制以上命令并回车执行。

Windows上机取证检查

 

打开C:yanlianprocess.txt,可看到6列内容,含义如下所示:

可根据进程名、进程执行参数、进程启动时间、程序执行路径判断是否存在异常,并根据异常点进行深入分析。

Windows上机取证检查

 


Windows上机取证检查

 

1. 3 DLL劫持检测

 

木马程序通过服务、dll、com均可劫持注入到程序中启动。

示例:以svchost及dll劫持为例:

svchost.exe主要作用是将动态链接库(后缀为.dll的文件)以服务的方式运行。svchost.exe对系统的正常运行非常重要,是不能被结束的。

注意点:

 

存在异常监听端口,pid指向svchost.exe程序,需检查是否存在异常。通过第三方工具ProcessExplorer(简称pe)检查svchost.exe程序。

示例:

通过检查已监听端口,发现“异常”监听,pid指向800。

Windows上机取证检查

 

打开任务管理器,发现pid 800是svchost.exe程序,由于该程序的特性,需使用第三方工具pe进行检查。

Windows上机取证检查

 

通过pe工具可发现pid 800是由服务启动,根据启动路径可发现该程序是由正常路径启动,但程序是否被替换未知,启动的服务是netsvcs(小白杀手,当初虐了我n久),该服务下挂12个子服务。

Windows上机取证检查

 

在pe中双击该程序,点击【tcp/ip】,可发现49154端口是服务schedule监听。

Windows上机取证检查

 

点击【services】,可发现schedule服务启动的动态链接库绝对路径是c:windowssystemc32schedsvc.dll,从而发现49154端口是哪个程序正在监听。

Windows上机取证检查

 

通过点击pe的功能菜单模块(下图的齿轮图标)【view handles】可显示该程序所调用的clsid。

Windows上机取证检查

 

如存在启动、点击某个程序后恶意进程重新启动的情况,则可以对com劫持进行检查。

Windows上机取证检查

 

通过点击【view dlls】可显示该程序所调用的dll文件。

Windows上机取证检查

 

也可以通过排序可直观的看到是否存在dll劫持。

Windows上机取证检查

 

1.4 进程注入检测

 

进程注入是一种广泛使用的躲避检测的技术,通常用于恶意软件或者无文件技术。其需要在另一个进程的地址空间内运行特制代码,进程注入改善了不可见性,同时一些技术也实现了持久性。

进程注入检测通常情况需要对主机的网络情况进行检测发现,可以使用livetcpudpwatch工具进行监测。

Windows上机取证检查

 

通过其异常请求的pid,利用Process Explorer对该PID进行查看,并使用将该线程内存dump出来。

使用Process Explorer查看PID进程需要等待一段时间,当木马发起网络请求时才会出现以下TCP/IP信息。

Windows上机取证检查

 

使用strings、IDA或者其他内存分析工具进行线程分析。

Windows上机取证检查

 

二、可疑用户操作检测

Windows上机取证检查

 

2. 1 用户检测

 

  1. 异常用户的创建,登陆,删除(操作留在后面单独讲解)
  2. 正常用户的异常登陆,操作。
  3. 隐藏账户检测

wmic useraccount get name,SID

可以检测出影子用户和注册表隐藏的用户(net user命令搜索容易漏过这些特殊用户):

Windows上机取证检查

 

查看管理员分组有哪些用户 net localgroup administrators:

Windows上机取证检查

 

查看xxx用户的创建时间和上⼀次登陆时间net user xxx

Windows上机取证检查

 

进入C:/Users ⽂件夹,查看哪些用户登陆了系统,以及黑客没有清理干净的恶意用户。

Windows上机取证检查

 

进入C:Users%UserName%AppDataRoamingMicrosoftWindowsRecent

文件夹,查看当前用户最近的操作记录(可执行程序的执行情况不会被记录)

Windows上机取证检查

 

2.2 登陆检测

 

1. 什么时间谁连接了被黑主机

2. 什么时间被黑主机连接了谁

注意点:主机日志默认记录20Mb,达到最大值时优先覆盖旧事件,同时网络安全法要求日志至少保存6个月以上。

分远程桌面连接和IPC连接两种方式讨论。

远程桌面连接方式:

针对要点1,可以使用WinLogView工具,会列出系统中所有曾经登陆过的主机,包含本地登陆和远程登陆,针对原有的用户需要注意用户的登陆时间段是否在工作时间段内。(LogonType:10 表示远程登陆,2 表示本地登陆)。

Windows上机取证检查

 

针对要点2,可以使用查看注册表HKEY_CURRENT_USERSoftwareMicrosoftTerminal Server ClientDefault(有空格,注意引号扩起来)展示最近10次本机成功建立的RDP连接。

Windows上机取证检查

 

IPC连接方式:

针对要点1,查看Windows安全日志,查找4624,登陆类型为3而且源网络地址不是来自于127.0.0.1的安全事件。

Windows上机取证检查

 


Windows上机取证检查

 


Windows上机取证检查

 

其实在这里登陆类型为 10 表示的是 RDP 登陆

也可以通过FullEventLogView批量加载主机日志,然后通过4624等时间ID进行日志筛选,相对主机直接查看日志更直观。

Windows上机取证检查

 

针对要点2,可以通过注册表进行查看

HKCUSoftwareMicrosoftWindowsCurrentVersionExplorerTypedPaths

Windows上机取证检查

 

2.3 文件检测

 

2.3.1 近期操作文件

  1. 近期的可执行文件操作
  2. 近期的文件操作
  3. 近期的浏览器操作

利用AppCompatCacheParser工具检查近期的可执行文件操作(由于该记录以非文本方式保存在注册表中,很多攻击者不会清理该文件夹):

Windows上机取证检查

 


Windows上机取证检查

 

根据时间倒叙,重点排查近期或者被攻击时间段的程序执行记录。

近期的文件操作可以直接使用lastactivityview方便查看,优点是收集的信息很完整,可以导出html

Windows上机取证检查

 

注意,进行C:/User/xxx/Recent目录也能看到用户最近频繁操作的一些文件,但并不是所有操作,信息不够全面

近期所有浏览器的操作记录使用BrowsingHistoryView⼀并查看,可以根据时间短对记录进行筛选。

Windows上机取证检查

 

2.3.2人工检查目录

这些路径经常作为攻击者内网渗透的临时工作目录,以及木马启动、解压路径可以重点检查。

C:Perflogs

C:Perflogsadmin

C:ProgramData

C:UsersPublic

C:Users当前用户

C:WindowsTemp

C:Users当前用户AppDataRoaming

C:Users当前用户AppDataLocalTemp

C:Users当前用户AppDataRoamingMicrosoftWindowsStart MenuProgramsStartup

C:ProgramDataMicrosoftWindowsStart MenuProgramsStartUp

 

2.3.3 黑客工具

  1. 木马文件
  2. Webshell文件
  3. 黑客工具
  4. HTTP隧道

使用恶意软件全盘扫描工具比如睿眼主机取证溯源系统【商业化产品对系统进行全盘扫描,能探测出木马文件和黑客工具的所在位置。

Windows上机取证检查

 

进入对应的文件夹查看有无其他黑客工具,注意扫描到文件的创建时间,以及该文件对应的创建者信息,可以关联出黑客的作案时间以及黑客用户。

Windows上机取证检查

 


Windows上机取证检查

 

WebShell 文件可以使用D盾Webshell查杀工具

Windows上机取证检查

 

同时记录Webshell的名称,从Web访问日志中关联是否存在HTTP隧道脚本和其他WebShell文件。

 

三、持久化检测

Windows上机取证检查

 

持久化检测主要是检测木马的启动方式等。

 

3.1 启动目录

 

C:Users当前用户AppDataRoamingMicrosoftWindowsStart MenuProgramsStartup

C:ProgramDataMicrosoftWindowsStart MenuProgramsStartUp

 

3.2 注册表启动项

 

开机启动项直接运行msconfig进行查看,简单检查有无未知启动项。

Windows上机取证检查

 

如需要导出分析,使用以下命令将自启动项导出检查。

// 导出当前用户启动项

reg export HKCUSoftwareMicrosoftWindowsCurrentVersionRun c:yanlianautorun1.reg

// 导出系统启动项

reg export HKLMSoftwareMicrosoftWindowsCurrentVersionRun c:yanlianautorun2.reg
reg export HKLMSoftwareMicrosoftWindowsCurrentVersionRunonce c:yanlianautorun3.reg

示例:

输入命令将自启动项配置文件导出。

Windows上机取证检查

 

检查导出的自启动项配置是否存在异常。

Windows上机取证检查

 

3. 3 开机启动脚本

 

运行 gpedit.msc 查看组策略:

Windows上机取证检查

 

3.4 计划任务

 

计划任务直接使用AutoRuns 进行检测,根据 ImagePath 配合 Publisher 判断是不是木马程序。

Windows上机取证检查

 

3.5 映像劫持检测(Shift后门)

 

通过AutoRuns的ImageHiJack进行检测,被替换的setch.exe 会直接显示出来。

另外可以对程序提交VT进行检测:

Windows上机取证检查

 


Windows上机取证检查

 

根据VT的评分判定是否可能是木马程序。

 

3.6 环境变量检测

 

环境变量用于将系统路径变量化,如被黑客利用则会以最高权限运行恶意程序,例如将环境变量%systemroot%变更为其他路径,同时建立system32文件夹并将恶意程序通过服务启动。

注意点:环境变量%systemroot%修改后需进行恢复,否则系统无法正常重启。使用set命令将环境变量导出检查。

示例:

输入命令将环境变量配置文件导出。

Windows上机取证检查

 

检查导出的环境变量配置是否存在异常。

Windows上机取证检查

 

3.7 系统服务检测

 

查看本机所有的服务可以使用AutoRuns ,好处比较清晰列出了进程可执行程序路径和证书信息,此外还可以联动VT ,直接云判断(点击Option-Scan Option调用VT)可执行程序是否是恶意程序。

声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>