分享

防CC攻击经验分享(一):简单的防止wordpress的pingback攻击

 文档客 2019-02-03

这个教程是 K 总在 hostloc 提供的: http://www./thread-312816-1-1.html

对于防 cc 我也是初学者,分享的内容有问题欢迎大家指出 ~ 感谢

例子:

cc 攻击难防在与他的行为和正常用户的行为很相像,如果规则严格了,可能正常的用户就会受影响,如果规则松了可能就起不到防御的作用。

pingback 之所以算是比较低级的 CC 攻击的原因就在与他的特征非常明显,很容易和正常用户的行为区分开,所以也更加容易被防御。

就是上次我网站遭受的大量 pingback 的攻击。网站日志有大量的如下内容:

QQ图片20160703022301

代码:

1
2
3
4
5
6
if ($http_user_agent ~* (ApacheBench|pingback|WordPress|MJ12bot|AhrefsBot|360JK|PHP|php|Jorgee) ) {return 101;}
if ($http_user_agent = "" ) {return 101;}
if ( $request = "POST /reg.html HTTP/1.1" ) {return 400;}
if ( $request = "POST / HTTP/1.1" ) {return 400;}
if ( $request = "POST / HTTP/1.0" ) {return 400;}
if ( $request = "POST // HTTP/1.0" ) {return 400;}

代码的作用

这段代码的作用是 nginx 检测到相应的条件,就把这个请求直接转出。避免请求数据库和 php ,减轻服务器的处理负担。由于 nginx 处理静态内容的效率很高,所以可以最大限度的避免服务器资源被耗光。

代码插入的位置

上面这个代码需要插入的位置是 nginx 网站的 server 配置里。比如

QQ图片20160703021132

代码的问题

  1. 不过这里有个问题就是过滤词里面保护了 WordPress ,所以 ifttt 之类的同步用不了。如果你发现用了以上代码后,有些功能失灵,那么就检查下过滤的关键词。如果你想过滤更多的内容也可以加入更多的关键词。
  2. 还有一个问题就是,虽然 nginx 过滤了这些 pingback 请求,但是如果你的服务器比较垃圾。。比如只有 1 核的 cpu ,那么还是极其容易 nginx 占用到 100% 从而导致网站访问不了。所以最终是拼性能。。 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多