⼿把⼿教你做挖矿应急响应
前⾔
攻防之道,攻是⽭,防是盾。应急响应就是防守中最重要的⼀环,思路清晰的应急响应可以使你事半功倍,抓住攻击者的⼩尾巴!本⽂主要⾯向⽆应急基础⼈员⼊门引导,⼤佬轻喷
⽂中会引⽤⼏次我经历过的真实挖矿事件案例,如有侵权请及时。
开篇
CPU占⽤⾼?电脑卡的要命?⼜被挖矿了?我⼈傻了!
来跟我⼀起看看被挖矿了如果处置吧。
不想看⽂字的⼤佬请看下图:挖矿⽊马处置流程⼀览图
接下来废话不多说,详细的流程在下给各位看官准备好了,请看!
⼀、询问攻击情况范围
事件发⽣时的状况或安全设备告警等,能帮助应急处置⼈员快速分析确定事件类型,⽅便前期准备。
1、了解现状
询问客户或销售事件发⽣时状况,举个栗⼦~
客户发现安全设备告警存在挖矿⽹站访问情况,像这个样⼦.
初步判断是有机器被植⼊挖矿病毒了,此处可以根据外部连接地址收集相关情报,如果有相关分析⽂章会轻松许多。
2、了解事件发⽣时间节点
出现问题时间、发现问题时间、处置问题时间,确定这三个时间节点后,可通过时间相关性推算挖矿病毒产⽣⼤致时间,有助于后续挖矿病毒发现及清理。
3、临时抑制挖矿
到达客户现场前:
在不影响主业务运⾏的情况下,对受害机器:拔⽹线啊!拔⽹线啊!拔⽹线啊!
绝⼤部分实际情况与预期并不⼀致,在没到达客户现场前,及时切断⽹络连接是最简单有效的抑制⼿段。
并且,切断⽹络连接可使挖矿现场尽量保持完整,有助于接下来的溯源⼯作顺利开展。
当然,对于情况较清晰的挖矿场景,已知挖矿外连地址及域名等信息,可采⽤防⽕墙建⽴策略封禁双向通信的⽅式抑制挖矿运⾏。
4、获取⽹络构架
⽹络构架⼀般来讲是要拓补图,虽然⼀般没有(有拓扑的也不想给),但⼀定要委婉的要拓补图!要拓补图!要拓补图!
详细的拓扑图可以协助还原攻击流程时,准确定位⽹络连接⽅向。
⼆、攻击痕迹挖掘
挖矿攻击者为了达到不被发现的⽬的,各种⼿段层出不穷,溯源的过程就是和挖矿攻击者博弈的战争。
可以⼤致从以下⼏个⽅⾯⼊⼿: 可疑进程、开放的端⼝、计划任务、服务项、可疑的⽤户、内存空间还
有最明显的特征: CPU占⽤⾼
1、CPU占⽤
CPU占⽤⾼是挖矿时常见的状态,因为挖矿需要占⽤⼤量CPU调⽤挖矿进程,虽然近些年挖矿有偏向于GPU的趋势,但挖矿⽊马中还是主要以CPU挖矿为主,毕竟不是专门做渲染的服务器GPU⼀般很低。
Windows中查看CPU可以直接通过任务管理器中查看利⽤率。
Linux可使⽤top命令获取实时CPU占⽐情况:
关于查看CPU这⾥提⼀个之前遇到过的有意思的挖矿守护机制:
某系挖矿应急中,习惯性打开任务管理器查看CPU占⽤情况,发现占⽤本⾝很⾼,但⼀会就降下来了。开始还以为是任务管理器开启导致的,之后分析病毒样本的时候才发现是⼀种守护⽅式。
判断开启任务管理器等调试⼯具时,会把挖矿进程杀死,然后等待180秒后强制关闭调试⼯具再进⾏挖矿。所以通过dos命令查看Windows系统CPU占⽤率:
Windows可使⽤wmic⽅式获取CPU占⽤:wmic cpu get LoadPercentage /value
grep命令查看进程
Windows命令⽅式查看CPU占⽤
2、可疑进程
Windows中有多种进程分析⼯具,可辅助快速定位异常进程。这⾥简单举例⼏种分析进程⼯具:Autoruns、PCHunter、ProcessDump、processhacker、ProcessExplorer、⽕绒剑等等,各有优劣,此处不再赘述,各位师傅⾃⾏体会。
⼤概样⼦长这样:
使⽤进程分析⼯具查看可疑进程
若⽆法上传⼯具时,可以通过CPU占⽐⾼的进程PID进⾏相关检索。
Linux中的可以通过top命令获取到⾼占⽤进程PID及⽂件路径,也可使⽤:
ps -aux --sort=-%cpu|head -10--显⽰cpu占⽐前10的进程
其他CPU占⽐不⾼的进程可以通过:
ps -auxf--⽤树形结构显⽰进程相关性
通过外连情况排查进程:
lsof -i--查看所有⽹络连接进程
通过PID查看⽂件位置
ls -la /proc/[进程PID]/exe--替换“进程PID”查看进程可执⾏程序位置
lsof -c [进程名]--进程正在使⽤的⽂件和⽹络连接
通过以上命令,若发现CPU⾼占⽤或者⾮正常外连进程,则可能为恶意进程。
3、开放的端⼝
Windows和Linux均可使⽤netstat -ano查看⼀下端⼝情况,是否开启⾼危端⼝,存在可能被利⽤风险。有时攻击者使⽤端⼝转发将流量转发出内⽹,可以在此处看到有可疑的对外监听端⼝。
查看端⼝占⽤情况
4、计划任务及启动项
挖矿病毒为了使挖矿进程⼀直运⾏,会做出各种各样的守护⽅式,计划任务就是最普遍的守护⽅式之⼀。
Windows7使⽤at命令;Windows10使⽤schtasks命令查看计划任务列表。
开始--所有程序--启动⽬录中存在的⽂件也不能放过。
Linux系统使⽤crontab -l命令查看计划任务,但还是建议直接查看/etc/crontab⽂件,也可在/var/log/cron下查看计划任务的⽇志。
某次Linux挖矿事件计划任务⽇志
其他可能存在定时任务需要排查的路径
/var/spool/cron/*
/var/spool/anacron/*
/etc/crontab
/etc/anacrontab
/etc/cron.*
/etc/anacrontab

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。