今天登陆了共有云主机发现主机CPU使用率很高,top命令查看,发现有两个trace进程占用CPU超级高。
通过ps -ef|grep trace
查看到两条trace进程,这里截取其中一条如下:
./trace -r 2 -R 2 --keepalive --no-color --donate-level 1 --max-cpu-usage 100 --cpu-priority 3 --print-time 25 --threads 2 --url monerohash.com:2222 --user 45F63UPYbAE1opWW9eAyErgx299LywuTKgWCRzcyW7mZ3RSM9WdCQT7gTMPzq2ciLATArw85aByiga7irig4E4Eo2hGvVBN --pass x --keepalive
通过进程确认不是我们需要的正常进程,
排查这两个进程的父进程,
通过pstree -up
发现这两个进程的父进程是jenkins下控制的两个脚本进程,
再通过进程号找到/tmp路径下的两个脚本
/tmp/ jenkins2121655721759339155.sh
/tmp/jenkins6060682034687105400.sh
将两个脚本删除,再将两个trace进程kill掉,CPU就降下来了。
虽然已经解决了这个问题,但是对于jenkins被挖矿的原理仍不太清楚,后续有时间需要研究一下,目标是在根源上阻止此类事情的发生。