WordPress pingback DDOS攻击 nginx防护图文教程

༺小ʚɞ寞༻ WordPress评论20,4192字数 1146阅读3分49秒阅读模式

最近老是被攻击,最后分析日志后发现是Wordpress 的 pingback 漏洞导致的DDOS攻击,日志如下:

WordPress pingback DDOS攻击 nginx防护图文教程

  1. 192.241.x.x – – [07/Apr/2016:12:22:44 +0800] “GET /index.php HTTP/1.0″ 200 “-” “WordPress/3.9.2; http://www.x.x; verifying pingback from 69.30.x.x” “-“

这里很明显,全部都是Wordpress。下面我们给出防护nginx,apache的防护方案教程(请根据自己的WEB服务器判断是哪一种):

Nginx:

在 location / 区块种添加如下代码:

  1. # WordPress Pingback Request Denial
  2. if ($http_user_agent ~* “WordPress”) {
  3. return 403;
  4. }

这样的话有请求也不会去找PHP了,nginx及时的返回403,如果连接过多的话需要修改nginx中 worker_connections的参数值,可以把它增加到更大的值。

Apache:

在配置文件中添加:

  1. BrowserMatchNoCase WordPress wordpress_ping
  2. BrowserMatchNoCase WordPress wordpress_ping
  3. Order Deny,Allow
  4. Deny from env=wordpress_ping

然后reload服务。再观察日志,可以看到全部返回403了。网站也恢复了正常访问。

WordPress pingback DDOS攻击 nginx防护图文教程

如果上面的方法还是无法正常访问那就需要用到iptables了。

IPTABLES防护:

  1. cat /var/log/nginx/access.log | grep “verifying pingback from” > pingback_attack.log

然后用php分析日志,导入到iptables规则中。

  1. <?php
  2. error_reporting(0);
  3. $reqs = file(“pingback_attack.log”);
  4. foreach ($reqs as $req) {
  5. $ip = explode(” – – “, $req);
  6. $ip_address[$ip[0]]++;
  7. }
  8. arsort($ip_address);
  9. foreach ($ip_address as $ip=>$attack_times) {
  10. print “# WordPress IP. Attacked {$attack_times} times<br />”;
  11. print “iptables -A INPUT -s {$ip} -j DROP<br />”;
  12. }
  13. ?>

然后将输出的内容执行到iptables规则里面。

weinxin
LuckTang's Blog 站长语录
LuckTang's Blog,欢迎各位来访!这是我的QQ,扫一扫,加好友。大家一起交流博客建站技术,分享前沿资讯!
MyWing.exe阻止win7关机的解决方法 Wiki

MyWing.exe阻止win7关机的解决方法

最近每次关机,都无法顺利关机,关的时候都会弹出这样一个提示框,我点击立即结束也不行。 我也曾经遇到过这个问题,好像是关机的时候QQ还开着就会出现这个MyWing.exe程序未响应  然而我怎么也找不到...
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定