微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

syslog 中“wp-admin”“wp-login”条目的正则表达式在 drupal 站点上尝试

如何解决syslog 中“wp-admin”“wp-login”条目的正则表达式在 drupal 站点上尝试

我正在寻找一个 fail2ban 正则表达式(或两个)来在 drupal 站点上找到 wp-admin 和 wp-login attemps。 正则表达式应该找到“drupal:”和“找不到页面”和(“wp-admin”或“wp-login”) 我的问题是“和”条件 日志文件条目:

Apr  7 10:59:23 webserver drupal: https://www.anywebsite.com|1617785962|page not found|123.456.789.112|https://www.anywebsite.com/wp-admin/admin-ajax.PHP?action=revslider_show_image&img=../wp-config.php|https://anywebsite.com/wp-admin/admin-ajax.PHP?action=revslider_show_image&img=../wp-config.php|0||wp-admin/admin-ajax.PHP
Apr  7 06:53:47 webserver drupal: https://www.anywebsite.com|1617771227|page not found|123.456.789.112|https://www.anywebsite.com/wp/wp-login.PHP||0||wp/wp-login.PHP

解决方法

给你:

failregex = ^\s*\S+ drupal: [^|]*\|\d+\|(?:page not found)\|<ADDR>
  • 对于 v.0.10 之前的 fail2ban 版本,将 <ADDR> 替换为 <HOST>

警告 请注意,这假定 drupal: 之后的日志行(站点?引用者?)中的第一个 URI 永远不会包含管道字符(因此入侵者无法添加它URI 以某种方式避免被禁止)。否则它会变得复杂(您必须从两侧锚定它或编写一些带有前瞻或后视的条件 RE)。
另请注意,如果您的一方可以为合法用户制作一些 404(因为缺少一些参考资料等),您必须向 RE 添加一些精确的模式,排除丢失的页面以避免误报,例如。 G。像这样(使用黑名单表达式):

_block_uris = wp-admin|(?:wp/)wp-login
failregex = ^\s*\S+ drupal: [^|]*\|\d+\|(?:page not found)\|<ADDR>\|\w+://[^/]+/(?:%(_block_uris)s)

或(使用白名单表达式,此处忽略 /my-page/my-site/ URI):

_ignore_uris = my-page/|my-side/
failregex = ^\s*\S+ drupal: [^|]*\|\d+\|(?:page not found)\|<ADDR>\|\w+://[^/]+/(?!%(_ignore_uris)s)

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。