一、什么是应急响应
在网络安全事件发生时能够及时准确地做出反应和应对而建立的一套制度和流程。其目的是降低网络安全事件所造成的损失并迅速恢复受影响的系统和服务。
二、常见的事件
Web 入侵:网页挂马、主页篡改、Webshell
系统入侵:病毒木马、勒索软件、远控后门
网络攻击:DDOS 攻击、DNS劫持、ARP 欺骗
三、windows入侵排查
1.1、排查系统和账号安全
1)弱口令、后台管理端口
检查方法:据实际情况咨询相关服务器管理员,或者直接使用超级弱口令检查工具进行扫描。
2)可疑或新增账号
检查方法:打开 cmd 窗口,输入 lusrmgr.msc 命令,查看是否有新增/可疑的账号,如有管理 员群组的(Administrators)里的新增账户,如有,请立即禁用或删除掉。
3)存在隐藏或克隆账号
检查方法:Win+R 打开运行,输入"eventvwr.msc",回车运行,打开“事件查看器”。 导出 Windows 日志 -- 安全,利用微软官方工具 Log Parser 进行分析。
或者:
可以使用 D盾web 查杀工具,集成了对克隆账号检测的功能。
1.2、检查异常端口、进程
1)检查端口连接情况,是否有远程连接、可疑连接。
检查方法: 使用netstat -ano 命令查看目前的网络连接,定位可疑的 ESTABLISHED
根据 netstat 命令定位出的 PID 编号,再通过 tasklist 命令进行进程定位 tasklist | findstr "PID"
运行输入 wmic,cmd 界面输入 process
开始 -- 运行 -- 输入 msinfo32 命令,依次点击 "软件环境 -- 正在运行任务" 就可以查看到进程的详细信息,比如进程路径、进程ID、文件创建日期以及启动时间等
打开D盾_web查杀工具,进程查看,关注没有签名信息的进程。
通过微软官方提供的 Process Explorer 等工具进行排查
1.3、检查启动项、计划任务、服务
1)检查服务器是否有异常的启动项
登录服务器,单击【开始】>【所有程序】>【启动】,默认情况下此目录在是一个空目录,确认是否有非业务程序在该目录下。
单击开始菜单 >【运行】,输入 msconfig,查看是否存在命名异常的启动项目,是则取消勾选命名。
异常的启动项目,并到命令中显示的路径删除文件。 单击【开始】>【运行】,输入 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 检查右侧是否有启动异常的项目,如有请删除,并建议安装杀毒软件进行病毒查杀,清除残留病毒或木马。
组策略,运行 gpedit.msc。
1.4、检查计划任务
单击【开始】>【设置】>【控制面板】>【任务计划】,查看计划任务属性,便可以发现木马文件的路径。
单击【开始】>【运行】;输入 cmd,然后输入 at,检查计算机与网络上的其它计算机之间的会话或计划任务,如有,则确认是否为正常连接。
服务自启动
检查方法:单击【开始】>【运行】,输入 services.msc,注意服务状态和启动类型,检查是否有异常服务。
四、Linux入侵排查
linux的排查路径:病毒挖矿还是说勒索。
第一步:
看cpu占有率
top
第二步:
显示所有进程和状态
ps -aux
看有没有定时任务
crontab -l
cat -A /var/spool/cron/crontabs/root
删除定时任务
crontab -e 进入定时任务配置文件进行删除
确定是恶意病毒文件
sudo find / -name shell.elf
查看启动项
ls -a
vi .bashrc
删除两个后门文件
rm -fr ~/shell.elf
rm -fr /centos_core.elf
寻找具有suid(特殊) 权限的命令
find /-perm /4000 -type f 2>/dev/null
去掉suid(特殊) 权限的命令
chmod 655 /usr/bin/find
隐藏用户(wxiaoge)
cat /etc/passwd
黑客创建的后门用户
sudo cat /etc/shadow
查看特权用户
awk -F: '$3==0{print $1}' /etc/passwd
删除特权用户
userdel seeder
第三步:看它做了什么操作
查看历史命令
history
第一种历史命令被清楚了,第二种命令被改掉了
日志:
匹配关键词看它做了那些操作
sudo cat /var/log/secure >1.log
查看自启动文件
cat .bashrc
查看 run.sh 文件
head run.sh
切换root用户查看外连ip和端口
netstat -anpt
查看所有连接 ip
netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
查看访问对应外网 ip 的进程
netstat -atp | grep 60.204.243.221
把外网连接的进程 kill 掉
kill -9 50013
修改了命令
cd /usr/bin
查看命令修改的时间
stat ps
写报告看下木马文件上传的时间
stat shell.elf
清除木马:
应急响应清除流程:
删除特权用户
sudo vim /etc/passwd
:wq
还原修改后的 ps 命令
rm -fr /usr/bin/ps
mv /.hide command/ps /usr/bin/ps
执行 cat 发现报错
cd ~/tmp
stat /user/bin/cat
rm -fr /usr/bin/cat
mv /tmp/cat_backup /usr/bin/cat