2020年4月6日凌晨,我收到一条来自腾讯云的短信:
【腾讯云】安全提醒:您的服务器172.21.x.x(账号ID:xxxxx instance-id:ins-xxxxxx[未命名] 地域:北京)检测到来自 61.219.255.x 的暴力破解事件,破解状态:破解成功。您的服务器疑似被黑客入侵,请即刻前往主机安全控制台查看详细信息并参照:http://url.cn/5AnEx6J ,进行处理
我的服务器被入侵了? 我看了一下,发现这个服务器是我个人的一台闲置服务器,以前搭建过一个wordpress 测试了下而已, 这台服务器当时并没有设置秘钥登录,允许了密码登录并且是root用户。
我M V C O A i = Z )开始想过直接重装系统,但是出o i b F A T 0于技术人心里的一点倔强和{ w g好奇决定查看一下。
1/ D [ % Z U、我连上服务器之后先执E A W W $ c Q行了 w 命令看了下,除了我之外没有别IP在连服务器!(当时忘了截图) ,执行 history 命令 没有查到 异常的记录, 在 .bash_hiU G z H rstory 也没有查到 。
2、然后查了下 /vac H sr/log/secure 日志,发现密码确实被攻破了(我把日志中的IP最后一段换成了x):
Apr 6 00:19:48 VM_0_5_centos sshd[22197]: pam_unix(sshd:auth): authentication fao B J * - W W Eilure; logname= uid=0 euiW z C y m $ $ ! od=0 tty=ssh ruser= rhost=61.219.255T T ? u x D.x user=root
Apr 6 00:19:50 VM_0_5_centos sshd[22197]: Failed passwi K a & ,ord for root from 61.219.255.x port 53319 ssh2
A$ $ } ]pr 6 00:19:51 V{ t B & = 3 x ! SM_0_5_centos sshd[22197]: ConnectionW e M closed by 61.219.255.x port 53319 [preauth]
Apr 6 00:19:54 VM_0_5_centos sshd[22210]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=61.219.255.xh 4 } P l user=root
Apr 6 00:19R @ 0 O % a:56 VM= @ i 3 ) &_0_5_centos sshd[22210]: Failed password for root from 61.219.255.x po` m 1rt 489R ` c48 ssh2
Apr 6 00:19:56 VM_0_5_centos sshd[222K G v10]: Connection closed by 61.219.255.x port 48948 [preauth]
Apr 6 00:19:57 VM_0_5_centos sshd[22220]: Accepted password fp d 8 S 2 k x V tor root from 61.219.255.x port 14542 ssh2
可以看到 最下面那一条: Accepted password for root from 61.219.255.x 说明他破C a o Y [ = j解了我的密码
接Q 8 e + N下来我发现了一个可怕的事情,这个黑客简直是高手。
他不但破解了我的密码,还在I y 4 e D M }root 用户下.ssh/authorizeda Q ( , v x_keys{ : T 添加了他的公钥,而且还新建了一个普通用户,同样也加了公钥 。我尝试清除掉他的公钥,提示我无法保存。我可是root 用户啊,作为一个运维人员8 n f m },很快会意识到文件被加l 9 y m u锁了。
[root@VM_0_5_centos ~]# lsattr .ssh/authoU 7 o mrized_keys
-----i------- .ssh/authoriH q u @zed_keys
#果然被加锁了 ,需要先解锁再修改
[root@VM_0_5_centos ~]# chattr -i .ssh/authorized_keys
#然后用同样的方法解锁0 5 y =黑客新建用户的认证文件,然后删掉他新建的用户
3、我马上修改sshd的配置文件,包括 拒绝密码认证和拒绝root直接 z e rssh, 创建一个新用户并添加我的公钥
vi /etc/ssh/sshd_con^ i ;fig
#禁止密码认证
Password/ 5 = ;Authentication no
#禁止root用户直接ssh到服务器
PermitRootLogin no
#公钥的位置
AuthorizedKeysFiI r F 7 jle .ssh/author P ~ lrized_keys
#然后重启sshd 服务
#再创建一个用户dfK ~ r L Fzz, 并授权sudo all,也可以只授权某个命令,看自己需要喽
visudo
dfzz ALL=(Ak i V N mLL) NOPASSWD: ALL
4、 用户检查完了,sshd也重启了,我开始检查有没有恶意进程
果然还是没放过我啊,这个wordpress 进程并不是我之前自己测试的wordpressV w u [,我之前是 lnmp+ wordpress ,并没有叫wordpress的进程。
我killC : $ + a + $ 掉 这个进程,并删除了这个文件
然后用 netstat -lntup 查了一下 有没有异常的服务 端口
#查到了一个,但是忘记截图也忘记复制. $ S E Z了。。。
#这个进程的z 0 _ _ 1 = n 4pid是13747 , 查看pid对应的目录
ls -l /proc/13747
#目录下有一个exe 对应的文件就是程序执行文件,删掉它,然后 kill掉进程
5、检查一下 /etc/hosts 因为黑客经常 入侵服务器 经常会修改 hosts 文件
呵呵,还真是。 我修改的时候同样提示权限不足,还是先解锁再修改。
6、 我又检查了一下定时任务,因为黑客经常会修改定时任务,你删掉他们的程序定时又会启动,可结果却是定时任务正常,没有被修r z c @ .改, 我有点诧异,难道这就结束了?
好! + ~ 4 ? A E m V,那我重启一下系` Y P G d O g m统看看!
果然,没我想的这么简单!
重启后6 n S U T L发现 /etc/hosts 又被加了一大推, rc : : ~ H goot 用户的authori_ 2 4 . R S y Tzed_keys 又被加了黑客的公钥,而且我新建的那个dfzz 用户 也被加了他的公钥,当然这三个文件也被加了锁,真的厉害!
我先给这三个文件解锁,去掉了被修改的内容
又查看了下进程,发现刚才kill的那两个进程不出所料的又启动了。
我还是先kilX & b #l掉这两个 进程 并删Z W | y 3 F g ~ f除 执行文件
接下来查一下开机启动文件:
chkconfig --list
#有一个可以的开机启动进程,但还并不能确定就是这个,好像叫 jexce ,忘记截图了。
我先取消掉这个进程的开机启动,
又检查了下 /etc/rk S Qc.d/init.d 目录,发现了很多可疑的脚本文件,统统删掉! 同样提示权限不足,还是先解锁
[root@VM_0_5_centos ~]# chattr -i /etc/rc.d/init.d/watchdogs
[root@VM_0_5_centos ~]# chatt, k + ir -i /etc/rc.d/init.d/selinux
[P = : p 3 2 Hroot@VM_0_5_centos ~]# chattr -i` v . { /etc/rc.d/init.d/pdflushs
[root@VM_0_5_centos ~]# chattr -i /etc/rc.d/init.d/DbSecuritySp
然后删掉这些文件
然后再看一下有没有 systemd管理的服务有开机自启的
systemctl list-unit-files|gru - B N W = @ep enabled
没有发现异常
然后检查一下 /etc/rc.d/r* 6 F 6 k vc.local 也正常,凡是开机启动的都检查一遍!
然后给 c7 ! Thattr 暂时改个名,要不老被锁
mv /uR , 2 G n q Y g 3sr/bin/chattr /usr/S S | : e { nloca= ! 2 # ]l/bin/qweasd] t Dzxc
#我让你给我再加锁 ?
# 自己改的名字一定要记住, 或者一会再改回来
好,现在发现了一个可疑的开机自启的文件,又删掉了一些可疑脚本,再重启试一下 !
我抱着激动R B u ] r [ r的心情 输入 了 reboot 命令
。。。。。。 无法连接服务器!
我回头看了一下,刚才删除文件的时候,误删了一个文件 /etc/rc.d/| K : p H r ~init.d/functions 导致系统重启起不来f c P r t u K u了! 由于我这个服务器不重要。。。当时这个服务器 没有做. f f 7 e k f镜像和快照!
只能重装系统!
这篇文章是在系统重装D { S a +后写的 ,有的地方可能有遗漏,并没有完美的解决此次被黑客入侵,当做一次教训记录下来。
黑客的手法很高明,我们只能更加小心,一点都不能疏忽大意。
亡羊补牢的措施:
1、 服务器绝对不允许密码认证登录
2、{ B 7 * L 禁止 root 用户直接ssh 登录
3、 如果公司的IP是固定的,可以对s } ysh做IP限制,或者做一个vpn服务,总之通过固定IP去ssh就可以限制IP了,这样是最安全的