Window 入侵排查
- 1、文件的排查
- 1.1 开机启动有无异常文件启动
- 1.2 对系统敏感文件路径的查看
- 1.3 查看Recent
- 1.4 查看文件时间
- 1.5 webshell 文件排查
- 2、进程、端口排查
- 2.1 查看进程
- 2.2 进程排查
- 2.3 使用powershell 进行查询
- 2.4 使用WMIC 命令进行排查
- 3、检查启动项、计划任务、服务
- 3.1 检查服务器是否有异常的启动项
- 3.2 检查计划任务
- 3.3 服务自启动
- 4、系统账号排查
- 4.1 查看服务器是否有弱口令,远程管理端口是否对公网开放。
- 4.2 查看服务器是否存在可疑账号、新增账号。
- 4.3 查看安全标识符、SAM安全账户管理器
- 4.4 查看服务器是否存在隐藏账号、克隆账号
- 4.5 结合日志,查看管理员登录时间、用户名是否存在异常。
- 5、检查系统相关信息
- 5.1 查看系统版本以及补丁信息
- 5.2 查找可疑目录及文件
- 6、日志分析
- 6.1 内置的日志筛选器
- 6.2 通过PowerShell对日志进行分析
- 6.3 通过相关的日志工具进行分析查询。
- 7、相关工具
- 7.1 病毒分析
- 7.2 病毒查杀
- 7.3 病毒动态
- 7.4 在线病毒扫描网站
- 7.5 webshell查杀
1、文件的排查
在应急响应排查的过程中,由于大部分的恶意软件、木马、后门等都会在文件维度上留下痕迹,因此对文件痕迹的排查必不可少。
1.1 开机启动有无异常文件启动
开始—运行--输入msconfig(cmd输入msconfig)
1.2 对系统敏感文件路径的查看
开始—运行--输入下面命令:(win+R)
%WINDIR%
%WINDIR%\system32
%TEMP%
%LOCALAPPDATA%
%APPDATA%
%systemroot%\prefetch
%SystemRoot%\appcompat\Programs\
主要查看有无异常文件以及最新生成的.bat .exe 的文件,还要根据入侵时间来判断。
例如:
预读取文件夹查看。Prefetch是预读取文件夹,用来存放系统已访问过的文件的预读取信息,扩展名为pf。之所以自动创建Prefetch文件夹,是为了加快系统启动的进程。Windows系统利用“预读取”技术,在实际用到设备驱动程序、服务和shell程序之前装入它们。
%SystemRoot%\appcompat\Programs\Amcache.hve文件也可以查询应用程序的执行路径、上次执行的时间及SHA1值。
1.3 查看Recent
例如:Recent文件主要存储了最近运行文件的快捷方式,可通过分析最近运行的文件,排查可疑文件。
1.4 查看文件时间
查看文件创建时间、修改时间、访问时间,黑客通过Webshell连接工具改变的是修改时间,所以如果修改时间在创建时间之前明显是可疑文件。
例如:使用forfiles 命令,查询指定时间新增的文件,命令就是对2020/2/12后的exe新建文件进行搜索。
forfiles /m *.exe /d +2020/2/12 /s /p d:\ /c "cmd /c echo @path @fdate @ftime" 2>null
1.删除D:/ 下2天前的.bak的文件
forfiles /p D:\ /s /m *.bak /d -2 /c "cmd /c del /f @path"
2.列出D盘上的所有.bat文件
forfiles /p D:\ /s /m *.bat /c "cmd /c echo @file"
--如果想加上说明文字,可以改动如下:
forfiles /p D:\ /s /m *.bat /c "cmd /c echo @file is a batch file"
3.列出D盘上的所有目录
forfiles /p D:\ /s /m *.* /c "cmd /c if @isdir==true echo @file is a directory"
4.列出D盘上5天前的所有文件
forfiles /p D:\ /s /m *.* /d -5 /c "cmd /c echo @file : date >= 5 days"
5.列出D盘上2021年1月1日以前创建的文件,并显示“file is quite old!”
forfiles /p D:\ /s /m *.* /dt-01011993 /c "cmd /c echo @file file is quite old!"
6.按列格式列出D盘上所有文件的扩展名
forfiles /p D:\ /s /m *.* /c "cmd /c echo extension of @file is 0x09@ext0x09"
1.5 webshell 文件排查
在应急过程中,网站是一个关键的入侵点,对Webshell的排查可以通过上述方法进行排查后。还可以使用D盾、HwsKill、WebshellKill等工具对目录下的文件进行规则查询,以检测相关的Webshell。
webshell查杀
D盾_Web查杀:http://www.d99net.net/index.asp
河马webshell查杀:http://www.shellpub.com
深信服Webshell网站后门检测工具:http://edr.sangfor.com.cn/backdoor_detection.html
Safe3:http://www.uusec.com/webshell.zip
2、进程、端口排查
Windows系统中的进程排查,主要是找到恶意进程的PID、程序路径,有时还需要找到PPID(PID的父进程)及程序加载的DLL。
2.1 查看进程
使用netstat -ano 查看目前网络连接,定位可疑的ESTABLISHED
Netstat 显示网络连接、路由表和网络接口信息;
参数说明:
-a 显示所有网络连接、路由表和网络接口信息;
-n 以数字形式显示地址和端口号
-o 显示与每个连接相关的所属进程ID
-r 显示路由表
-s 显示按协议统计信息、默认地、显示IP
常见的状态说明
LISTENING 侦听状态
ESTABLISHED 建立连接
CLOSE_WAIT 对方主动关闭连接或者网络异常导致连接终端
2.2 进程排查
方法一:
1、根据netstat 定位出的pid,在通过tasklist 命令进行进程定位
netstat -ano | findstr ESTABLISHED
tasklist | findstr 2528
2、然后根据wmic process 获取进程的全路径
wmic process | findstr "OfficeIm.exe"
3、通过任务管理器定位进程路径
a、任务管理器--选择对应进程--右键打开文件位置
b、运行输入 wmic,cmd界面 输入 process
4、tasklist 显示运行在计算机中的所有进程
tasklist /svc 进程--PID--服务 可以显示每个进程和服务的对应情况
tasklist /m 加载DLL的恶意进程
tasklist/m ntdll.dll 可查询调用ntdll.dll模块的进程
5、查看Windows服务所对应的端口
C:\Windows\System32\drivers\etc
%system%/system32/drivers/etc/services(一般%system%就是C:\Windows)
方法二:
通过工具,查看可疑的进程及其子进程。可以通过观察以下内容:
没有签名验证信息的进程
没有描述信息的进程
进程的属主
进程的路径是否合法
CPU或内存资源占用长时间过高的进程
1、开始--运行--输入msinfo32,依次点击“软件环境→正在运行任务”就可以查看到进程的详细信息,比如进程路径、进程ID、文件创建日期、启动时间等。
2、打开D盾_web查杀工具或者火绒剑,进程查看,关注没有签名信息的进程。
3、通过微软官方提供的 Process Explorer 等工具进行排查 。
例如,查看PID为5504的进程,可使用命令【tasklist/svc/fi “PID eq 5504”】查看
2.3 使用powershell 进行查询
对于有守护进程的进程,还要确认子父进程之间的关系,可以使用PowerShell进行查看,一般PowerShell在查询时会调用Wmi对象。【Get-WmiObject Win32_Process|select Name,ProcessId,ParentProcessId,Path】命令中Get-WmiObject Win32_Process表示获取进程的所有信息,select Name,ProcessId,ParentProcessId,Path表示选择Name,ProcessId,ParentProcessId,Path 4个字段,整个命令表示显示所有进程信息中的Name,ProcessId,ParentProcessId,Path 4个字段的内容。执行后的结果如下:
Get-WmiObject Win32_Process | select Name,ProcessId,ParentProcessId,Path
2.4 使用WMIC 命令进行排查
wmic process list full /format:csv //显示所有进程
wmic process get name,parentprocessid,processid /format:csv //显示父进程和子进程
wmic process get ExecutablePath,processid /format:csv //显示进程 pid和执行路径
wmic process where processid=64408 get commandline //查询该 pid 的命令行
wmic process where processid=64408 delete //指定 pid 进行删除恶意进程
wmic process where name="powershell.exe" call terminate //删除 "powershell.exe" 的进程
指定pid查询和删除
3、检查启动项、计划任务、服务
3.1 检查服务器是否有异常的启动项
a、进入C盘查看启动目录,默认情况下此目录在是一个空目录,确认是否有非业务程序在该目录下。
C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp
b、【运行】CMD,输入 msconfig,查看是否存在命名异常的启动项目,是则取消勾选命名异常的启动项目,并到命令中显示的路径删除文件。
c、【运行】,输入 regedit,打开注册表,查看开机启动项是否正常,特别注意如下三个注册表项:
HKEY_CURRENT_USER\software\micorsoft\windows\currentversion\run
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Runonce
检查右侧是否有启动异常的项目,如有请删除,并建议安装杀毒软件进行病毒查杀,清除残留病毒或木马。
d、利用安全软件查看启动项、开机时间管理等。
e、组策略,运行gpedit.msc。查看启动项位置:用户配置 - 管理模板 - 系统 - 登录 - 在用户登录时运行这些程序
3.2 检查计划任务
a、【控制面板】>(管理工具)【任务计划程序】,查看计划任务属性,便可以发现木马文件的路径。
b、单击【开始】>【运行】;输入 cmd,然后输入at(schtasks),检查计算机与网络上的其它计算机之间的会话或计划任务,如有,则确认是否为正常连接。
3.3 服务自启动
单击【开始】>【运行】,输入services.msc,注意服务状态和启动类型,检查是否有异常服务。
4、系统账号排查
4.1 查看服务器是否有弱口令,远程管理端口是否对公网开放。
检查方法:据实际情况咨询相关服务器管理员。
4.2 查看服务器是否存在可疑账号、新增账号。
检查方法:打开 cmd 窗口,输入lusrmgr.msc命令,查看是否有新增/可疑的账号,
如有管理员群组的(Administrators)里的新增账户,如有,请立即禁用或删除掉。
4.3 查看安全标识符、SAM安全账户管理器
SID 永远都是唯一的。由计算机名,当前时间,当前用户态线程的CPU耗费时间的总和三个参数决定以保证它的唯一性
检查方法:
a、打开cmd,然后输入 wmic useraccount get name,sid
b、regedit打开注册表,进入HKEY_LOCAL_MACHINE\SAM\SAM;HKEY_LOCAL_MACHINE\SECURITY,进行查看
4.4 查看服务器是否存在隐藏账号、克隆账号
检查方法:
a、打开注册表 ,查看管理员对应键值。
使用regedit打开注册表编辑器找到[HKEY_LOCAL_MACHINE]——[SAM]——[SAM]——[Domains]——[Account]——[Users]
b、使用D盾_web查杀工具,集成了对克隆账号检测的功能。
4.5 结合日志,查看管理员登录时间、用户名是否存在异常。
a、Win+R打开运行,输入“eventvwr.msc”,回车运行,打开“事件查看器”。
b、导出Windows日志--安全,利用Log Parser进行分析。
5、检查系统相关信息
5.1 查看系统版本以及补丁信息
检查方法:单击【开始】>【运行】,输入systeminfo,查看系统信息
5.2 查找可疑目录及文件
检查方法:
a、 查看用户目录,新建账号会在这个目录生成一个用户目录,查看是否有新建用户目录。
b、单击【开始】>【运行】,输入%UserProfile%\Recent,分析最近打开分析可疑文件。
c、在服务器各个目录,可根据文件夹内文件列表时间进行排序,查找可疑文件。
d、回收站、浏览器下载目录、浏览器历史记录
e、修改时间在创建时间之前的为可疑文件
6、日志分析
在Windows系统中,日志文件包括:系统日志、安全性日志及应用程序日志,对于应急响应工程师来说这三类日志需要熟练掌握,其位置如下。
在Windows Vista/Windows 7/Windows 8/Windows 10/Windows Server 2008及以上版本系统中:
系统日志的位置为%SystemRoot%\System32\Winevt\Logs\System.evtx;
安全性日志的位置为%SystemRoot%\System32\Winevt\Logs\Security.evtx;
应用程序日志的位置为%SystemRoot%\System32\Winevt\Logs\Application.evtx。
1)系统日志。系统日志主要是指Windows系统中的各个组件在运行中产生的各种事件。这些事件一般可以分为:系统中各种驱动程序在运行中出现的重大问题、操作系统的多种组件在运行中出现的重大问题及应用软件在运行中出现的重大问题等。这些重大问题主要包括重要数据的丢失、错误,以及系统产生的崩溃行为等。
2)安全性日志。安全性日志与系统日志不同,安全性日志主要记录了各种与安全相关的事件。构成该日志的内容主要包括:各种登录与退出系统的成功或不成功的信息;对系统中各种重要资源进行的各种操作,如对系统文件进行的创建、删除、更改等操作。
3)应用程序日志。应用程序日志主要记录各种应用程序所产生的各类事件。例如,系统中SQL Server数据库程序在受到暴力破解攻击时,日志中会有相关记录,该记录中包含与对应事件相关的详细信息。
除了上述日志,Windows系统还有其他的日志,在进行应急响应和溯源时也可能用到。
win+r 输入 eventvwr 命令,打开【事件查看器】窗口
日志常用事件ID
6.1 内置的日志筛选器
实际排查中,可通过内置的日志筛选器进行分析。使用日志筛选器可以对记录时间、事件级别、任务类别、关键字等信息进行筛选
6.2 通过PowerShell对日志进行分析
用PowerShell进行日志分析时,需要有管理员权限才可以对日志进行操作。
通过PowerShell进行查询最常用的两个命令是【Get-EventLog】和【Get-WinEvent】,两者的区别是【Get-EventLog】只获取传统的事件日志,而【Get-WinEvent】是从传统的事件日志(如系统日志和应用程序日志)和新Windows事件日志技术生成的事件日志中获取事件,其还会获取Windows事件跟踪(ETW)生成的日志文件中的事件。注意,【Get-WinEvent】需要Windows Vista、Windows Server 2008或更高版本的Windows系统,还需要Microsoft .NET Framework 3.5及以上的版本。总体来说,【Get-WinEvent】功能更强大,但是对系统和.NET的版本有更多要求。
Get-EventLog Security -InstanceId 4625
Get-EventLog Security -InstanceId 4624
列出安全日志 Get-WinEvent -FilterHashtable @{logname="Security";}
列出系统日志 Get-WinEvent -FilterHashtable @{logname="System";}
列出应用程序日志 Get-WinEvent -FilterHashtable @{logname="Application";}
Get-WinEvent -FilterHashtable @{LogName='Security';ID='4625'}
6.3 通过相关的日志工具进行分析查询。
FullEventLogView:FullEventLogView是一个轻量级的日志检索工具,其是绿色版、免安装的,检索速度比Windows系统自带的检索工具要快,展示效果更好。
Event Log Explorer:Event Log Explorer是一个检测系统安全的软件,可查看、监视和分析事件记录,包括安全性、系统、应用程序和其Windows系统事件记录。
Log Parser:Log Parser是微软公司推出的日志分析工具,其功能强大,使用简单,可以分析基于文本的日志文件、XML文件、CSV(逗号分隔符)文件,以及操作系统的事件日志、注册表、文件系统、Active Directory等。其可以像使用 SQL 语句一样查询分析数据,甚至可以把分析结果以各种图表的形式展现出来。
7、相关工具
7.1 病毒分析
PCHunter:http://www.xuetr.com
火绒剑:https://www.huorong.cn
Process Explorer:https://docs.microsoft.com/zh-cn/sysinternals/downloads/process-explorer
processhacker:https://processhacker.sourceforge.io/downloads.php
autoruns:https://docs.microsoft.com/en-us/sysinternals/downloads/autoruns
OTL:https://www.bleepingcomputer.com/download/otl/
SysInspector:http://download.eset.com.cn/download/detail/?product=sysinspector
7.2 病毒查杀
卡巴斯基:http://devbuilds.kaspersky-labs.com/devbuilds/KVRT/latest/full/KVRT.exe (推荐理由:绿色版、最新病毒库)
大蜘蛛:http://free.drweb.ru/download+cureit+free(推荐理由:扫描快、一次下载只能用1周,更新病毒库)
火绒安全软件:https://www.huorong.cn
360杀毒:http://sd.360.cn/download_center.html
7.3 病毒动态
CVERC-国家计算机病毒应急处理中心:http://www.cverc.org.cn
微步在线威胁情报社区:https://x.threatbook.cn
火绒安全论坛:http://bbs.huorong.cn/forum-59-1.html
爱毒霸社区:http://bbs.duba.net
腾讯电脑管家:http://bbs.guanjia.qq.com/forum-2-1.html
7.4 在线病毒扫描网站
http://www.virscan.org //多引擎在线病毒扫描网 v1.02,当前支持 41 款杀毒引擎
https://habo.qq.com //腾讯哈勃分析系统
https://virusscan.jotti.org //Jotti恶意软件扫描系统
http://www.scanvir.com //针对计算机病毒、手机病毒、可疑文件等进行检测分析
7.5 webshell查杀
D盾_Web查杀:http://www.d99net.net/index.asp
河马webshell查杀:http://www.shellpub.com
深信服Webshell网站后门检测工具:http://edr.sangfor.com.cn/backdoor_detection.html
Safe3:http://www.uusec.com/webshell.zip