我正在为fail2ban 编写一套规则,让那些试图强行进入我系统的人的生活变得更有趣。大多数尝试都围绕着试图通过我的网络服务器进入 phpinfo() - 如下所示
GET //pma/config/config.inc.php?p=phpinfo(); HTTP/1.1
GET //admin/config/config.inc.php?p=phpinfo(); HTTP/1.1
GET //dbadmin/config/config.inc.php?p=phpinfo(); HTTP/1.1
GET //mysql/config/config.inc.php?p=phpinfo(); HTTP/1.1
我想知道用户是否有任何正当理由尝试通过 apache 访问 phpinfo(),因为如果没有,我可以简单地使用它,或者更具体地说是正则表达式
GET //[^>]+=phpinfo\(\)
作为过滤器来消除这些攻击
好吧 - 如果你可以通过这种方式执行 phpinfo 命令 [通过 url 提供的eval代码的 php 中的一些漏洞] - 它也可以用于下载一些二进制文件并执行它,或者可能包含来自远程服务器的代码。
无论如何 - 如果我是你 - 我不仅会在 url 中看到 phpinfo,还会对 phpmyadmin / pma / 其他流行的 web 脚本执行任何 404 请求。
仍然 - 记得定期扫描您的用户安装的软件,以避免过时的 phpbbs/phpmyadmins 和其他软件。并保护您的服务器 - 看看这里和这里。