Dov*_*der 5 brute-force-attacks centos7
我们向我们的服务器发送了一个 POST 请求,其中包含以下内容:
%63%67%69%2D%62%69%6E/%70%68%70?%2D%64+%61%6C%6C%6F%77%5F%75%72%6C%5F%69%6E%63%6C%75%64%65%3D%6F%6E+%2D%64+%73%61%66%65%5F%6D%6F%64%65%3D%6F%66%66+%2D%64+%73%75%68%6F%73%69%6E%2E%73%69%6D%75%6C%61%74%2D%64+%64%69%73%61%62%6C%65%5F%66%75%6E%63%74%69%6F%6E%73%3D%22%22+%2D%64+%6F%70%65%6E%5F%62%61%73%65%64%69%72%3D%6E%6F%6E%65+%2D%64+%61%75%74%6F%5F%70%72%65%70%65%6E%64%5F%66%69%6C%65%3D%70%68%70%3A%2F%2F%64+%63%67%69%2E%66%6F%72%63%65%5F%72%65%64%69%72%65%63%74%3D%30+%2D%64+%63%67%69%2E%72%65%64%69%72%65%63%74%5F%73%74%61%74%75%73%5F%65%6E%76%3D%30+%2D%64+%61%75%74%6F%5F%70%72%65%70%65%6E%64%5F%66%69%6C%65%F%69%6E%70%75%74+%2D%6E
Run Code Online (Sandbox Code Playgroud)
使用 url 解码这转化为:
cgi-bin/php?-d allow_url_include=on -d safe_mode=off -d suhosin.simulation=on -d disable_functions="" -d open_basedir=none -d auto_prepend_file=php://input -d cgi.force_redirect=0 -d cgi.redirect_status_env file=php://input -n
Run Code Online (Sandbox Code Playgroud)
它似乎类似于Ubuntu 14.04 上通过 Nginx 的奇怪 URL 请求,恶意用户试图做什么?. 请求在什么情况下会起作用?我从日志中看到我们发送了 404,但我想确保我们没有任何其他可能容易受到攻击的盒子。
Mic*_*ton 15
许多年前,人们过去常常将 PHP 作为 CGI 脚本运行(甚至不是 FastCGI,它还不存在!),部分原因是他们可以将 Apache 从其低性能的 prefork MPM 切换到新的、性能稍高的工作 MPM。(而且 nginx 还不为人所知,那是很久以前的事了。)如果将服务器设置为将 PHP 作为 CGI 脚本运行,那么您可以直接在/cgi-bin/php
.
PHP 在技术上仍然可以作为 CGI 安装,但结果却没有人们希望的那样性能,因此发明了 FastCGI。当前所有的高性能 PHP 站点都使用 FastCGI/FPM,通常使用 nginx 或有时使用 Apache 的事件 MPM。FastCGI/FPM 不易受此影响,因为它们不允许直接通过/cgi-bin
.
如果您的服务器不是作为 CGI 运行的古老腐烂的 PHP 堆,那么您不必担心这个请求。
一般的问题是命令注入。通过允许 php 执行方向的旧的不安全 CGI 配置变得更容易,尽管发送 404 的现代 Web 服务器不会特别容易受到此攻击。
您可以通过删除不需要的 CGI、使用文件权限和 SELinux 锁定 Web 服务器以及保护您的 Web 应用程序来防止它。Open Web Application Security Project Testing Project 有一些一般性的建议。
归档时间: |
|
查看次数: |
2902 次 |
最近记录: |