赞
踩
早上五点多突然醒来,看来一下手机,收到通知说我攻击其他服务器,What happened?
尊敬的腾讯云用户,您好!
您的账号(账号ID: -------,昵称:zxy)下的设备(IP:****.****.****.****),存在对其他服务器端口(TCP:22)的攻击行为,请您做好自查整改,并在24小时内停止上述行为。如逾期未处理,我们核实后将按腾讯云服务协议相关要求对您停止服务。
感谢您对腾讯云的理解与支持!
温馨提示:
1. 点击查看 安全违规处理帮助指引
2. 若在使用过程中遇到任何问题,您可以 提交工单 进行反馈,我们将竭诚为您服务!
此致
腾讯云团队
腾讯云官方建议:
使用last命令查看下服务器近期登录的帐户记录,确认是否有可疑 IP 登录过机器:
检查说明:攻击者或者恶意软件往往会往系统中注入隐藏的系统帐户实施提权或其他破坏性的攻击。
解决方法:检查发现有可疑用户时,可使用命令usermod -L 用户名禁用用户或者使用命令userdel -r 用户名删除用户。
风险性:高。
解决:
想要删除新增用户es,结果就是报es 被进程`27109`占用了,手动给进程kill掉,然后给用户删除`userdel -r es`
腾讯云官方建议:
通过less /var/log/secure|grep 'Accepted’命令,查看是否有可疑 IP 成功登录机器:
检查说明:攻击者或者恶意软件往往会往系统中注入隐藏的系统帐户实施提权或其他破坏性的攻击。
解决方法: 使用命令usermod -L 用户名禁用用户或者使用命令userdel -r 用户名删除用户。
风险性:高。
解决:
[root@hadoop_zxy ~]# less /var/log/secure|grep 'Accepted'
Dec 24 07:40:01 hadoop_zxy sshd[26686]: Accepted password for es from ****** port **** ssh2
Dec 24 07:40:03 hadoop_zxy sshd[26767]: Accepted password for es from ****** port **** ssh2
Dec 24 07:41:07 hadoop_zxy sshd[27014]: Accepted password for es from ****** port **** ssh2
Dec 24 08:49:04 hadoop_zxy sshd[7640]: Accepted password for root from ****** port **** ssh2
Dec 24 08:49:04 hadoop_zxy sshd[7642]: Accepted password for root from ****** port **** ssh2
Dec 24 08:59:29 hadoop_zxy sshd[13426]: Accepted password for root from ****** port **** ssh2
Dec 24 08:59:29 hadoop_zxy sshd[13428]: Accepted password for root from ****** port **** ssh2
[root@zxy /]# top
如果是被kdevtmpfs挖矿,可以在进程中找到这个进程
PID就是他的进程号,但是只删除这一个进程是没有用的
[root@zxy /]# systemctl status PID
这里的PID就写你的kdevtmpfs进程号
这里可以发现kdevtmpfsi依赖于kinsing存在,所以需要杀死kinsing
[root@zxy /]# kill -9 3142
[root@zxy /]# kill -9 3256
挖矿入侵服务器后,会在定时任务里存放定时任务
需要给这个定时任务杀死
# 查看定时任务
[root@zxy ~]# crontab -l
# 杀死定时任务
[root@zxy ~]# crontab -e
[root@zxy ~]# find / -name kdevtmpfsi
[root@zxy ~]# find / -name kinsing
setenforce: SELinux is disabled
该显示说明selinux已经被彻底的关闭了
vi /etc/selinux/config
更改为:SELINUX=1
sentenforce 0
就不会出现setenforce:SELinux is disable
为了服务器安全,减少被攻击的可能性,选择开启防火墙,如果需要用到指定的端口,那么就专门给这个端口开启通道
开启防火墙
:systemctl start firewalld
关闭防火墙
:systemctl stop firewalld
防火墙状态
:systemctl status firewalld
防火墙开机自启
:systemctl enable firewalld
禁用防火墙
:systemctl disable firewalld
防火墙开启后,所以端口都是禁止访问的,所以需要根据需求开启指定的端口
## 查看开放的端口,这里是没有的
root@zxy_slave1 sysconfig]# firewall-cmd --zone=public --list-ports
## 添加你需要开放的端口XXXX
[root@zxy_slave1 sysconfig]# firewall-cmd --zone=public --add-port=XXXX/tcp --permanent
success
## 添加成功后从加载
[root@zxy_slave1 sysconfig]# firewall-cmd --reload
success
## 再次查看开放的端口,已经开启成功,测试后通过远程也可以使用,已正常
[root@zxy_slave1 sysconfig]# firewall-cmd --zone=public --list-ports
XXXX/tcp
添加和删除端口,主要是通过传参,使用$取到执行脚本中的参数,进而传给执行脚本
使用脚本的目的主要是为了方便自己在每次使用的时候比较方便,直接sh执行脚本即可
[sh add-firewalld-port.sh port]
#!/bin/bash
# filename:add-firewalld-port.sh
# autho:zxy
# date:2022-05-17
# desc:add port
CMD=$1
firewall-cmd --zone=public --add-port=${CMD}/tcp --permanent
[sh reload-firewalld-port.sh]
#!/bin/bash
# filename:reload-firewalld-port.sh
# autho:zxy
# date:2022-05-17
# desc:reload port
firewall-cmd --reload
[sh list-firewalld-port.sh]
#!/bin/bash
# filename:list-firewalld-port.sh
# autho:zxy
# date:2022-05-17
# desc:list port
firewall-cmd --zone=public --list-ports
[sh remove-firewalld-port.sh port]
#!/bin/bash
# filename:remove-firewalld-port.sh
# autho:zxy
# date:2022-05-17
# desc:remove port
CMD=$1
firewall-cmd --zone=public --remove-port=${CMD}/tcp --permanent
某台服务器被恶意攻击及挖矿,排查发现有一个用户dolphinscheduler,初步怀疑是密码被泄露或破解。找到异常进程,清理并重置密码。
检查是否有定时任务存在,一般非法侵入通常会使用定时器,定时指定对应的脚本或服务
[dolphinscheduler@dolphin .xri]$ crontab -l
*3 * * * * /var/tmp/.xri/monitor
[dolphinscheduler@dolphin .xri]$ crontab -l
2.1 查看异常进程
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
5922 dolphin+ 20 0 1211676 659104 664 S 0.3 2.0 79500,24 xri
2.2 查看异常进程子进程
[root@dolphin .ssh]# ps -ef | grep 5922
dolphin+ 5922 5918 99 2022 ? 3312-12:24:10 /var/tmp/.xri/xri start
root 41629 26084 0 17:02 pts/0 00:00:00 grep --color=auto 5922
[root@dolphin .ssh]# ps -ef | grep 5918
dolphin+ 5918 5916 0 2022 ? 00:00:00 /bin/bash /var/tmp/.xri/monitor
dolphin+ 5922 5918 99 2022 ? 3312-12:24:10 /var/tmp/.xri/xri start
root 41699 26084 0 17:02 pts/0 00:00:00 grep --color=auto 5918
[root@dolphin .ssh]# ps -ef | grep 5916
root 5916 5287 0 2022 ? 00:00:00 /usr/sbin/CROND -n
dolphin+ 5918 5916 0 2022 ? 00:00:00 /bin/bash /var/tmp/.xri/monitor
2.3 删除进程
[root@dolphin .ssh]# kill -9 5922
2.4 再次查看进程
[root@dolphin .ssh]# ps -ef | grep 5922
root 42495 26084 0 17:04 pts/0 00:00:00 grep --color=auto 5922
[root@dolphin .ssh]# ps -ef | grep xri
root 43156 26084 0 17:05 pts/0 00:00:00 grep --color=auto xri
[root@dolphin .ssh]# ps -ef | grep 5918
root 43205 26084 0 17:05 pts/0 00:00:00 grep --color=auto 5918
[root@dolphin .ssh]# ps -ef | grep 5916
root 43242 26084 0 17:05 pts/0 00:00:00 grep --color=auto 5916
# 1.查看脚本
[dolphinscheduler@dolphin .xri]$ ls
monitor
# 2.查看脚本路径
[dolphinscheduler@dolphin .xri]$ pwd
/var/tmp/.xri
# 3.查看脚本内容
[dolphinscheduler@dolphin .xri]$ cat monitor
#!/bin/bash
pgrep xri
if [ $? -ne 0 ]
then
/var/tmp/.xri/xri start > /dev/null
# 4.删除脚本
fi[dolphinscheduler@dolphin .xri]$ rm -f monitor
# 5.再次查看脚本已删除
[dolphinscheduler@dolphin .xri]$ ls
为避免公钥已经泄露,将公钥清理
[root@dolphin .ssh]# ls
authorized_keys id_rsa id_rsa.pub known_hosts
[root@dolphin .ssh]# rm -f authorized_keys
重新修改用户对应的密码
[root@dolphin /]# passwd dolphinscheduler
Changing password for user dolphinscheduler.
New password:
Retype new password:
Retype new password:
passwd: all authentication tokens updated successfully.
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。