Windows入侵排查流程
一. 检查系统账号安全
1、查看服务器是否有弱口令,远程管理端口是否对公网开放。
- 检查方法:据实际情况咨询相关服务器管理员。
2、查看服务器是否存在可疑账号、新增账号。
-
检查方法:Win + R,输入
lusrmgr.msc
,查看是否有新增/可疑的账号,如有管理员群组的(Administrators)里的新增账户,如有,请立即禁用或删除掉。 -
查看当前登录账户,打开cmd窗口,输入
query user
命令
3、查看服务器是否存在隐藏账号、克隆账号。
-
检查方法:
a、Win+R输入
regedit
,打开注册表 ,查看管理员对应键值。- 需要给当前用户授权,否则下面D盾无法读取注册表
b、使用D盾_web查杀工具,集成了对克隆账号检测的功能。
- 先下载工具:https://www.d99net.net/down/d_safe_2.1.8.1.zip
- 直接解压打开exe程序,找到工具栏里的克隆检测
4、结合Windows日志,查看管理员登录时间、用户名是否存在异常。
-
检查方法:
a、下载LogParser工具(默认安装在C:\Program Files (x86)\Log Parser 2.2):https://www.microsoft.com/en-us/download/confirmation.aspx?id=24659
b、使用工具查询用户登录情况
Windows日志介绍:
- 系统日志
记录操作系统组件产生的事件,主要包括驱动程序、系统组件和应用软件的崩溃以及数据丢失错误等。系统日志中记录的时间类型由Windows NT/2000操作系统预先定义。 默认位置: %SystemRoot%\System32\Winevt\Logs\System.evtx
-
应用程序日志
包含由应用程序或系统程序记录的事件,主要记录程序运行方面的事件,例如数据库程序可以在应用程序日志中记录文件错误,程序开发人员可以自行决定监视哪些事件。如果某个应用程序出现崩溃情况,那么我们可以从程序事件日志中找到相应的记录,也许会有助于你解决问题。 默认位置:%SystemRoot%\System32\Winevt\Logs\Application.evtx
-
安全日志
记录系统的安全审计事件,包含各种类型的登录日志、对象访问日志、进程追踪日志、特权使用、帐号管理、策略变更、系统事件。安全日志也是调查取证中最常用到的日志。默认设置下,安全性日志是关闭的,管理员可以使用组策略来启动安全性日志,或者在注册表中设置审核策略,以便当安全性日志满后使系统停止响应。 默认位置:%SystemRoot%\System32\Winevt\Logs\Security.evtx
#手动把windows的应用程序日志、安全日志、系统日志分别复制到桌面 进入文件夹 C:\Windows\System32\winevt\Logs Application.evtx Security.evtx System.evtx #使用Log Parser分析日志,#打开cmd窗口,进入LogParser安装目录 cd C:\Program Files (x86)\Log Parser 2.2
-
登录成功的所有事件
#注意:下面的日志路径需自行修改为桌面的日志路径 LogParser.exe -i:EVT –o:DATAGRID "SELECT * FROM D:\Desktop\Security.evtx where 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 D:\Desktop\Security.evtx where EventID=4624"
-
登录失败的所有事件
LogParser.exe -i:EVT -o:DATAGRID "SELECT * FROM D:\Desktop\Security.evtx where EventID=4625"
-
查询系统日志信息
LogParser.exe -i:evt -o:DATAGRID "select TimeGenerated,TimeWritten,EventType,Strings from D:\Desktop\System.evtx"
二. 检查异常端口、进程
1、检查端口连接情况,是否有远程连接、可疑连接。
-
检查方法:
a、打开cmd窗口,使用
netstat -ano | findstr "ESTABLISHED"
命令查看目前的网络连接,定位可疑的 ESTABLISHEDESTABLISHED状态是建立连接,表示两台机器正在通信。
b、根据 netstat 命令定位出的 PID 编号,再通过
tasklist
命令进行进程定位tasklist | findstr "输入PID号"
2、进程
-
检查方法:
a、输入
msinfo32
命令,依次点击 “软件环境 – 正在运行任务” 就可以查看到进程的详细信息,比如进程路径、进程ID、文件创建日期以及启动时间等。b、打开D盾_web查杀工具,进程查看,关注没有签名信息的进程。
查看可疑的进程及其子进程。可以通过观察以下内容:
没有签名验证信息的进程 没有描述信息的进程 进程的属主 进程的路径是否合法 CPU或内存资源占用长时间过高的进程
三. 检查启动项、计划任务、服务
1、检查服务器是否有异常的启动项。
-
检查方法:
a、单击【开始】>【所有程序】>【启动】,默认情况下此目录在是一个空目录,确认是否有非业务程序在该目录下。
b、Win+R,输入
msconfig
,查看是否存在命名异常的启动项目,是则取消勾选命名异常的启动项目,并到命令中显示的路径删除文件。c、Win+R,输入
regedit
,打开注册表,查看开机启动项是否正常,特别注意如下三个注册表项:#分别进入下面3个注册表检查右侧是否有启动异常的项目,如有异常项目请删除,并建议安装杀毒软件进行病毒查杀,清除残留病毒或木马。 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、D盾查看启动项是否有异常,工具栏里选择启动项
2、检查服务自启动是否有异常的服务
-
检查方法:
a、Win+R,输入
services.msc
,注意服务状态和启动类型,检查是否有异常服务。
3、打开计划任务,查看有无异常任务
-
检查方法:
a、Win+R,输入
taskschd.msc
,检查是否存在异常计划任务