长话短说.
请教高手解释解释脚本做了什么.
看得出来 zzh 是挖矿的,但是 newinit.sh 里面的一堆操作是啥呀?
昨天就操作了adduser postgres sudo
.但是随后就deluser postgres sudo
.
但还是被攻击进来了.
我该怎么修复漏洞?
攻击者暴露了自己的服务器地址,欢迎品玩.
目前做的措施是:
deluser postgres
systemctl revert name.service
观察下来情况还可以,没到重装系统的程度.
接下来重装一下postgres,再观察观察.
大概知道被攻入的原因的,修改pg_hba.conf的时候不小心改了host那一行的认证方法,原本应该是修改local那行的.
但是有一点很奇怪,即使这样,我没有开远程端口,怎么进来的呢?
之前配置:
# Database administrative login by Unix domain socket
local all postgres peer
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all scram-sha-256
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
# Allow replication connections from localhost, by a user with the
# replication privilege.
local replication all peer
host replication all 127.0.0.1/32 scram-sha-256
host replication all ::1/128 scram-sha-256
修改配置:
# Database administrative login by Unix domain socket
local all postgres trust
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
local all all md5
# IPv4 local connections:
host all all 127.0.0.1/32 reject
# IPv6 local connections:
host all all ::1/128 reject
# Allow replication connections from localhost, by a user with the
# replication privilege.
local replication all peer
host replication all 127.0.0.1/32 reject
host replication all ::1/128 reject
被搞了一次,怕了,怕了,直接拒绝所有的远程连接!!!
新增一条规则
host all postgres 0.0.0.0/0 reject
修改一条规则
host all all 127.0.0.1/32 scram-sha-256
1
masker 2022-10-27 12:12:23 +08:00 via Android
估计被提权了
|
2
xiaolajiao OP 昨天把 Postgres10 升到了 15,难不成版本有漏洞?
|
3
maskerTUI 2022-10-27 12:29:57 +08:00
重装吧,挖矿脚本真像牛皮藓一样,各种骚操作黏在系统里,搞过两三次太头疼了。
|
4
gowk 2022-10-27 12:31:25 +08:00
ssh 给我我上去看看 ( doge:
|
5
SunsetShimmer 2022-10-27 12:38:33 +08:00 1
看了一下 newinit.sh ,我能识别出的操作有:
删系统日志 关掉 SELINUX 把 wget 和 curl 改名(避免被用户 /自动识别?) 把 zzh 写入 cron 卸载阿里云的 aegis 和腾讯云的什么东西(安全 /监控软件?) 杀死一些安全类进程 破坏 /usr/bin/下的几个可执行 干掉其他的挖矿进程 /Docker 删缓存(?),干掉 /usr/lib/systemd/systemd-update-daily 给 ssh 加入公钥 在结尾好像又运行了什么 |
6
xiaolajiao OP @maskerTUI 用的是 postgres 用户操作的,先删掉 postgres user 看看.这狗屎代码写了一堆进 systemd.
|
7
codingBug 2022-10-27 16:06:13 +08:00
系统重装,仅使用密钥连接
|
8
vagusss 2022-10-27 16:12:48 +08:00
之前 redis 没设置密码中过一次
|
10
DiaosSama 2022-10-27 16:51:10 +08:00 1
zzh 是一个很老牌的门罗挖矿蠕虫了,Cleanfda 家族的,之前分析的时候是用的 Redis 未授权,Docker API 未授权和 SSH 爆破实现蠕虫传播的,看起来现在多出一个 Postgres 的传播方式。
网上分析还是蛮多的,可以看看这篇 [Redis 未授权访问漏洞分析 cleanfda 脚本复现漏洞挖矿]( https://www.renfei.net/posts/1003501) |
11
DiaosSama 2022-10-27 17:11:33 +08:00
看了一下你发出来的代码,横向移动的脚本 rs.sh 里没看到有对 postgresql 漏洞的利用,只是用 masscan 和 pscan 对网段里的 6379 进行了批量扫描。你机器上是不是启动了一个 Redis 服务并且没上密码就对外开放了 6379 端口?
|
12
CoderLife 2022-10-27 17:16:37 +08:00
postgres 被挂过码, 端口外放的原因
|
14
DiaosSama 2022-10-27 17:22:13 +08:00
还有一种可能就是...你的 postges 用户是弱密码并且支持远程登录被爆破了
|
15
xiaolajiao OP |
16
wshhfy 2022-10-27 17:35:06 +08:00 via Android
我之前也是 pg 端口暴露到公网被挖矿了。最后一劳永逸还是加了白名单
|
17
xiaolajiao OP 脚本都是用 postgres 用户操作的,postgres 就昨天做了手动升级 10 --> 15.
这个怎么用 postgres 用户进来的日志都没找到,很无语. |
18
Vegetable 2022-10-27 17:43:57 +08:00
@SunsetShimmer shit ,还干掉其他挖矿进程,太卷了
|
19
nmap 2022-10-27 17:59:41 +08:00
云服务器的话对你使用没影响的,不用管它,大家都不容易
|
21
xiaolajiao OP |
25
nightRainAnnoy 2022-10-28 09:21:36 +08:00
@nmap 老哥都不带手动狗头保命吗, 哈哈哈哈
|
27
zhang77555 2022-10-28 17:13:27 +08:00
@nmap 用服务器挖矿属于违约,运营商可以停掉你服务器
|
28
neochen13 2022-10-28 17:15:49 +08:00
大佬怎么发现的
|