这篇文章介绍了在Windows服务器上排查入侵的方法,包括检查系统账号安全、异常端口和进程、启动项、计划任务、服务、系统相关信息、自动化查杀和日志分析等。文章提供了具体的检查方法和工具,以及一些小技巧。此外,还介绍了如何查看历史命令记录。
常见的应急响应事件分类:
- web入侵:网页挂马、主页篡改、Webshell
- 系统入侵:病毒木马、勒索软件、远控后门
- 网络攻击:DDOS攻击、DNS劫持、ARP欺骗
针对常见的攻击事件,结合工作中应急响应事件分析和解决的方法,总结了一些Window服务器入侵排查的思路。
0x01 检查系统账号安全
- 查看服务器是否有弱口令,远程管理端口是否对往公网开放
- 根据实际情况咨询相关服务器管理员。
- 根据弱口令检查工具来检查弱口令。
检查方法:
- 查看服务器是否存在可疑账号、新增账号
检查方法:
打开cmd窗口,输入
lusrmgr.msc
命令,查看是否有新增/可疑的账号,如有管理员群组的(Administrator)里的新增账号,请立即禁用或删除。- 查看服务器是否存在隐藏账号、克隆账号
- 打开注册表,查看管理员对应键值。对应的位置为:
HKEY_LOCAL_MACHINE/SAM/SAM/Domains/Account/Users/Names/
- cmd输入
net user
,查看是否有陌生账号。 - 使用D盾测试、它集成了对克隆账号检测的功能。
检查方法:
- 结合日志,查看管理员登陆时间、用户名是否存在异常。
- Win+R打开运行,输入
eventvwr.msc
,回车运行,打开“事件查看器”。 - 导出Windows日志--安全,利用Log Parser进行分析。
检查方法:
0x02 检查异常端口、进程
- 检查端口连接情况,是否有远程连接、可疑连接。
netstat -ano
查看目前的网络连接,定位可疑的ESTABLISHED
。- 根据
netstat
定位出的 pid,再通过tasklist命令进行进程定位tasklist | findstr "PID"
检查方法:
- 进程
- 开始--运行--输入
msinfo32
,依次点击“软件环境>正在运行任务”就可以查看到进程的详细信息,比如进程路径、进程ID、文件创建日期、启动时间等。 - D盾也可以查看进程,关注没有签名信息的进程。
- 通过微软官方提供的Process Explorer等工具进行排查。
- 查看可疑的进程及其子进程。可疑通过观察一下内容:
- 没有签名验证信息的进程
- 没有描述信息的进程
- 进程的属主
- 进程的路径是否合法
- CPU或内存资源占用长时间过高的进程
检查方法:
- 小技巧
- 查看端口对应的 PID:
netstat -ano | findstr “port”
- 查看进程对应的 PID:任务管理器--查看--选择列--PID 或者
tasklist | findstr “PID”
- 查看进程对应的程序位置: 任务管理器--选择对应进程--右键打开文件位置
0x03 检查启动项、计划任务、服务
- 检查服务器是否有异常启动项
- 登录服务器,单击【开始】>【所有程序】>【启动】,默认情况下此目录在是一个空目录,确认是否有非业务程序在该目录下。
- 单击开始菜单 >【运行】,输入
msconfig
,查看是否存在命名异常的启动项目,是则取消勾选命名异常的启动项目,并到命令中显示的路径删除文件。 - 单击【开始】>【运行】,输入
regedit
,打开注册表,查看开机启动项是否正常,特别注意如下三个注册表项: -
HKEY_CURRENT_USER>software>micorsoft>windows>current>version>run
-
HKEY_LOCAL_MACHINE>Software>Microsoft>Windows>CurrentVersion>Run
-
HKEY_LOCAL_MACHINE>Software>Microsoft>Windows>CurrentVersion>Runonce
- 利用安全软件查看启动项、开机时间管理等。
- 组策略,运行
gpedit.msc
检查方法:
检查右侧是否有启动异常的项目,如有请删除,并建议安装杀毒软件进行病毒查杀,清除残留病毒或木马。
- 检查计划任务
- 单击【开始】>【设置】>【控制面板】>【任务计划】,查看计划任务属性,便可以发现木马文件的路径。
- 单击【开始】>【运行】;输入 cmd,然后输入
at
,检查计算机与网络上的其它计算机之间的会话或计划任务,如有,则确认是否为正常连接。
检查方法:
- 服务自启动
- 单击【开始】>【运行】,输入
services.msc
,注意服务状态和启动类型,检查是否有异常服务。
检查方法:
0x04 检查系统相关信息
- 查看系统版本以及补丁信息
- 单击【开始】>【运行】,输入
systeminfo
,查看系统信息。
检查方法:
- 查找可疑目录及文件
- 查看用户目录,新建账号会在这个目录生成一个用户目录,查看是否有新建用户目录。
- 在服务器各个目录,可根据文件夹内文件列表时间进行排序,查找可疑文件。
检查方法:
0x05 自动化查杀
- 病毒查杀
- 下载安全软件,更新最新的病毒库,进行全盘扫描。
检查方法:
- webshell查杀
- 选在具体站点路径进行webshell查杀,建议使用两款webshall查杀工具同时查杀,可相互补充规则库的不足。
检查方法:
0x06 日志分析
- 系统日志
- 前提:开启审核策略,若日后系统出现故障、安全事故则可以查看系统的日志文件,排除故障,追查入侵者的信息等。
- Win+R 打开运行,输入
eventvwr.msc
,回车运行,打开事件查看器。 - 导出应用程序日志、安全日志、系统日志,利用Log Parser进行分析。
分析方法:
- web访问日志
- 找到中间件的web日志,打包到本地方便进行分析。
- 推荐工具:
- Windows下,推荐使用EmEditor进行日志分析,支持大文本,搜索效率不错。
- Linux下,使用Shell命名组合查询分析。
分析方法:
0x07 历史命令
- powershell 历史命令记录
%appdata%\Microsoft\Windows\PowerShell\PSReadline\ConsoleHost_history.txt
# 查看存放位置 Get-PSReadlineOption powershell Get-PSReadlineOption
# 查看存放位置2 Get-History Get-History | Format-List -Property *
# 直接查看 powershell 历史命令 powershell Get-Content (Get-PSReadlineOption).HistorySavePath # 清除 powershell 历史记录 powershell Remove-Item (Get-PSReadlineOption).HistorySavePath
- cmd 历史记录
# 直接查看 cmd 历史命令 doskey /h # 清除 cmd 历史记录 doskey /reinstall