网络安全应急响应—windows系统
一、系统排查1、系统信息
//可以显示本地计算机的硬件资源、组件、软件环境、正在运行的任务、服务、系统驱动程序、加载模块、启动程序等。
C:\Users\test>msinfo32 //Microsoft系统信息工具:Msinfo32.exe
C:\Users\test>systeminfo //可查看主机名、操作系统等版本信息。
2、用户信息
攻击者入侵服务器后,可能会通过创建账号对服务器进行远程控制。常见的创建账号方法有:创建新账号、激活默认账号、建立隐藏账号(用户名后跟$的为隐藏账号)。
排查恶意账号的方法如下,如果存在恶意账号删除或者禁用:
C:\Users\test>net user //查看所有用户,此方法无法查看隐藏用户
C:\Users\test>net user username //查看指定用户信息
C:\Users\test>wmic useraccount get name,SID //查看用户信息
C:\Users\test>lusrmgr.msc
3、启动项
启动项是系统开机时在前台或者后台运行的程序,攻击者有可能通过启动项使用病毒后门等实现持久化控制。
排查启动项的方法如下:
C:\Users\test>msconfig //命令行打开启动项
查看是否存在命名异常的启动项目,是则取消勾选命名异常的启动项目,并到命令中显示的路径删除文件。 或:
C:\Users\test>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
检查右侧是否有异常的启动项。如果存在,则删除,并使用杀毒工具进行查杀清除。
4、计划任务
查看计划任务属性,查看是否存在木马文件等。
C:\Users\test>taskschd.msc //获取计划任务信息
C:\Users\test>schtasks //获取计划任务信息(用户需是administrators组成员)
或直接打开计算机管理-->系统工具-->计划任务程序
5、服务自启动
//查看服务类型和启动状态,查看是否存在异常服务
C:\Users\test>services.msc
二、进程、端口排查1、进程排查
主机在感染恶意程序时,都会启动相应进程来完成恶意操作。
排查方法如下:
C:\Users\test>msinfo32 软件环境-->正在运行任务
C:\Users\test>tasklist //可显示所有进程
C:\Users\test>tasklist /svc //可显示进程和服务的对应关系
C:\Users\test>tasklist /m //可显示进程加载DLL情况
C:\Users\test>tasklist /m xx.dll //可查看调用xx.dll模块的进程
运行wmic,命令行输入process //查看进程对应的程序位置
判断进程是否可疑,主要关注以下几点:
1、没有签名验证信息的进程
2、没有描述信息的进程
3、进程的属主
4、进程的路径是否合法
5、CPU或内存资源占用长时间过高的进程
或通过第三方工具进行排查:D盾_web查杀工具,微软官方提供的 Process Explorer等工具进行排查。
2、端口排查
主要对端口的连接情况进行检查,排查是否存在远程连接、可疑连接。检查方法如下:
//查看目前的网络连接,定位可疑的ESTABLISHED
C:\Users\test>netstat -ano 或。 C:\Users\test>netstat -anb(需要管理员权限)
//根据netstat定位出的pid,通过tasklist命令进行进程定位
C:\Users\test>tasklist | findstr pid
//查看端口对应的PID
C:\Users\test>netstat -ano | findstr port
三、文件痕迹排查
主要对恶意软件常用的敏感路径进行排查、针对应急响应事件发生前后的文件进行排查、对带有特征的恶意软件进行排查等。检查方法如下:
1、敏感目录文件
1、各个盘下的temp/tmp目录,查看临时文件下是够存在异常文件;
2、回收站、浏览器下载目录、浏览器历史记录,cookie信息等,查看是否存在可以信息;
3、运行-->recent
查看Recent文件。Recent文件存储了最近运行文件的快捷方式;
4、运行-->%SystemRoot%\Prefetch\
查看预读取文件夹。存放系统已访问过的文件的预读取信息;
5、运行-->%SystemRoot%\appcompat\Programs\
查看Amcache.hve文件,该文件可查询应用程序保存路径、上次执行时间、SHA1值。
2、基于时间点查找
在应急响应事件发生后,可通过事件发生时间来排查该时间点前后的文件更改情况。
1、forfiles命令查找2022/3/16后创建的exe文件
C:\Users\test>forfiles /m *.exe /d +2022/3/16 /s /p c:\ /c "cmd /c echo @path @fdate @ftime" 2>null
2、对服务器文件以时间排序,查看可疑文件;
3、修改时间在创建时间之前的为可疑文件,重点排查类似有逻辑问题的文件;
4、利用计算机自带文件搜索功能,指定修改时间进行搜索;
5、使用D盾、webshellkill等工具。
四、日志分析
在Windows系统中,日志文件包括:系统日志、安全性日志及应用程序日志,其位置如下。也可通过运行-->eventvwr.msc打开事件查看器。
在Windows 2000专业版/Windows XP/Windows Server 2003系统中:
系统日志的位置为:
C:\WINDOWS\System32\config\SysEvent.evt
安全性日志的位置为:
C:\WINDOWS\System32\config\SecEvent.evt
应用程序日志的位置为:
C:\WINNT\System32\config\AppEvent.evt
在Windows Vista/Windows7/Windows8/Windows10/Windows Server2008及以上版本系统中:
系统日志的位置为:
%SystemRoot%\System32\Winevt\Logs\System.evtx
安全性日志的位置为:
%SystemRoot%\System32\Winevt\Logs\Security.evtx
应用程序日志的位置为:
%SystemRoot%\System32\Winevt\Logs\Application.evtx
1、系统日志
系统日志主要是指Windows系统中的各个组件在运行中产生的各种事件。这些事件一般可以分为:系统中各种驱动程序在运行中出现的重大问题、操作系统的多种组件在运行中出现的重大问题及应用软件在运行中出现的重大问题等,这些重大问题主要包括重要数据的丢失、错误,以及系统产生的崩溃行为等。
2、安全性日志
安全性日志与系统日志不同,安全性日志主要记录了各种与安全相关的事件。构成该日志的内容主要包括:各种登录与退出系统的成功或不成功的信息;对系统中各种重要资源进行的各种操作,如对系统文件进行的创建、删除、更改等操作.
3、应用程序日志
应用程序日志主要记录各种应用程序所产生的各类事件。例如,系统中SQL Server数据库程序在受到暴力破解攻击时,日志中会有相关记录,该记录中包含与对应事件相关的详细信息.
五、内存分析
对服务器进行内存的提取,分析其中的隐藏进程。
内存的获取方法:
基于用户模式程序的内存获取;
基于内核模式程序的内存获取;
基于系统崩溃转储的内存获取;
基于操作系统注入的内存获取;
基于系统休眠文件的内存获取;
基于虚拟化快照的内存获取;
基于系统冷启动的内存获取;
基于硬件的内存获取。
六、流量分析
查看相关的地址连接情况: PCHunter、Process Monitor等工具或netstat等)命令。
查看内部流量:使用Wireshark/colasoft等网络封包分析软件。