服务器异常排查

告警邮件

近期查收邮件的时候,收到了一封告警邮件,邮件内容大致如下:

image-20210929183506662

服务器异常排查

此时到服务器端排查进程的时候根据邮件的提示查看了一下pnscan相关的进程,并无任何发现,反而好奇心的袭击下cat pnscan结果蹦出来一堆的二进制文件,瞬间霸占了整个终端,好吧,我承认是我的错,不应该好奇。可是总得知道是啥吧?于是另开了一个终端继续找问题同时原来得pncan终端也结束了,但是整个终端变颜色了,成了蓝色得界面不说,连终端执行命令都带颜色,不跟你玩,时间紧迫,关闭终端,继续找得时候发现有一个奇怪的进程如下图:

image-20210929181155685

地址模糊定位

image-20210929183700477

这典型的就不是咋们国内的地址啊,所以就觉得很奇怪。于是大胆得我心里猜测这应该是被木马攻击了,但也只能是猜测,竟然鬼使神差得将脚本给下载了下来,想看看里面是啥,是脚本肯定就可以打开,不管别的,我先看下脚本都干了啥?别跟我说机器第一,因为我想到了关外网,但我没有控制台账号,关机器好办,开机后还是会被连接得不是吗?所以先看下脚本再做打算。大致过了一眼脚本,竟然发现做了免登操作,并且权限也做了隐藏处理内容如下情况:

image-20210929181222395

隐藏权限

正常免登权限是644和600权限,看看上述得权限,加了隐藏权限在里面,并且还做了定时任务,还是每30分钟就执行一次,并且隐藏权限得命令还做了修改,导致chattr都失效了。

image-20210929181304548

image-20210929181338905

image-20210929181356882

时间紧任务重,此时不要慌,既然发现了这些操作和修改,那么就一点点还原即可。

异常恢复还原

**注意:**当然如果是能断开外网得情况下最好了,直接先断开外网,让其不再进行数据传输。而现在的情况是,由于是客户的机器,并且业务也不是很大,所以在初次还原操作的时候并未处理定时任务,所以重启之后,并没有将其拦下,好吧,算是失误了,只能重新来过,先从权限开始搞,开始恢复chattr命令,让其具有隐藏权限修改的操作,大致命令如下:

[root@iz2ze37zf5euwinush5hmyz etc]# cd /usr/bin/
[root@iz2ze37zf5euwinush5hmyz bin]# ls -lh chattr;lsattr chattr
-r--r--r-- 1 root root 12K Sep 30  2020 chattr
-------------e-- chattr
[root@iz2ze37zf5euwinush5hmyz bin]# cp chattr chattr.new
cp: overwrite ‘chattr.new’? y
[root@iz2ze37zf5euwinush5hmyz bin]# chmod a+x chattr.new
[root@iz2ze37zf5euwinush5hmyz bin]# chattr.new -i chattr
[root@iz2ze37zf5euwinush5hmyz bin]# rm -f chattr.new
[root@iz2ze37zf5euwinush5hmyz bin]# chmod a+x chattr
[root@iz2ze37zf5euwinush5hmyz bin]# ls -lh chattr;lsattr chattr
-r-xr-xr-x 1 root root 12K Sep 30  2020 chattr
-------------e-- chattr
[root@iz2ze37zf5euwinush5hmyz bin]#
[root@iz2ze37zf5euwinush5hmyz ~]# chattr -ia .ssh/authorized_keys

修改免登录权限和定时任务权限,注意:定时任务才是目标,因为它是每30分钟就执行一次操作,根据脚本得知,大致如下

[root@iz2ze37zf5euwinush5hmyz ~]# crontab -l
*/30 * * * * sh /etc/newinit.sh >/dev/null 2>&1
[root@iz2ze37zf5euwinush5hmyz ~]# lsattr /etc/newinit.sh
----ia-------e-- /etc/newinit.sh
[root@iz2ze37zf5euwinush5hmyz ~]# chattr -iae /etc/newinit.sh
[root@iz2ze37zf5euwinush5hmyz ~]# lsattr /etc/newinit.sh
[root@iz2ze37zf5euwinush5hmyz ~]# rm -rf /etc/newinit.sh

[root@iz2ze37zf5euwinush5hmyz ~]# lsattr /etc/crontab
----ia-------e-- /etc/crontab
[root@iz2ze37zf5euwinush5hmyz ~]# chattr -iae /etc/crontab

非法操作定时任务相关的命令有如下

unlock_cron()
{
    chattr -R -ia /var/spool/cron
    chattr -ia /etc/crontab
    chattr -R -ia /var/spool/cron/crontabs
    chattr -R -ia /etc/cron.d
}

lock_cron()
{
    chattr -R +ia /var/spool/cron
    chattr +ia /etc/crontab
    chattr -R +ia /var/spool/cron/crontabs
    chattr -R +ia /etc/cron.d
}

由上述操作,那就将这些权限依次都恢复,同时直接删除免登认证,删除定时任务,并重启服务器,此时万幸已成功拦截,遗留的其他修改再慢慢找出来干掉吧。

[root@iz2ze37zf5euwinush5hmyz ~]# crontab -e
crontab: installing new crontab
/var/spool/cron/#tmp.iz2ze37zf5euwinush5hmyz.XXXXarxTVl: Permission denied
crontab: edits left in /tmp/crontab.vwApw6
[root@iz2ze37zf5euwinush5hmyz ~]# crontab -l
*/30 * * * * sh /etc/newinit.sh >/dev/null 2>&1
[root@iz2ze37zf5euwinush5hmyz tmp]# lsattr crontab.*
-------------e-- crontab.FNS0hX
-------------e-- crontab.vwApw6
[root@iz2ze37zf5euwinush5hmyz tmp]# lsattr /var/spool/cron/
----ia-------e-- /var/spool/cron/root
[root@iz2ze37zf5euwinush5hmyz tmp]# chattr -R -iae /var/spool/cron/
[root@iz2ze37zf5euwinush5hmyz tmp]# lsattr /var/spool/cron/
---------------- /var/spool/cron/root
[root@iz2ze37zf5euwinush5hmyz tmp]#

[root@iz2ze37zf5euwinush5hmyz .ssh]# ll
total 12
-rw------- 1 root root 1675 Dec  8  2018 id_rsa
-rw-r--r-- 1 root root  400 Aug 14  2019 id_rsa.pub
-rw-r--r-- 1 root root  348 Aug 20 20:30 known_hosts
[root@iz2ze37zf5euwinush5hmyz ~]# rm -rf .ssh/

此修复还原过程中,切记除拦截之外,还有一些其他系统相关的命令都被做了修改,也要将其恢复。否则会给工作中带来诸多不便。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值