wordpress禁止恶意HTTP_USER_AGENT,防采集防部分攻击
首先我们不得不感谢奶嘴大神给我们带来的精心教程,来自wordpress禁止恶意HTTP_USER_AGENT,防采集防部分攻击的说明,小2觉得很使用,就转载过来了,感谢奶嘴大神为wordpress方面所做出的贡献,怪不得WP.COM要把奶嘴挖去做中国区域的维护人话。。。好啦,下面我们说说今天这个教程的主题内容吧。
我们要想知道一个用户的访问意图,可以通过HTTP_USER_AGENT来获取,而一般的正常访客是HTTP_USER_AGENT表示也是很常规的,这里就不说什么了,我们要说的是,哪些HTTP_USER_AGENT是采集软件或者恶意攻击者所具备的标识呢?那么下面的一串代码就可以解决我们的疑惑。
$ua = $_SERVER['HTTP_USER_AGENT'];
$now_ua = array('FeedDemon ','ZmEu','Indy Library','oBot','jaunty'); //将恶意USER_AGENT存入数组
if(!$ua) { //禁止空USER_AGENT,dedecms等主流采集程序都是空USER_AGENT,部分sql注入工具也是空USER_AGENT
header("Content-type: text/html; charset=utf-8");
wp_die('请勿采集本站,因为采集的站长木JJ!');
}else{
foreach($now_ua as $value )
if(eregi($value,$ua)) {
header("Content-type: text/html; charset=utf-8");
wp_die('请勿采集本站,因为采集的站长木JJ!');
}
}
将上面的代码放到wordpress主题文件夹的functios.php里面,即可,$now_ua里面的数组就代表着目前较为常规的恶意采集软件类的HTTP_USER_AGENT标识!
User Agent公布列表
- FeedDemon 内容采集
- BOT/0.1 (BOT for JCE) sql注入
- CrawlDaddy sql注入
- Java 内容采集
- Jullo 内容采集
- Feedly 内容采集
- UniversalFeedParser 内容采集
- ApacheBench cc攻击器
- Swiftbot 爬虫
- YandexBot 爬虫
- AhrefsBot 爬虫
- YisouSpider 爬虫
- jikeSpider 爬虫
- MJ12bot 爬虫
- ZmEu phpmyadmin漏洞扫描
- WinHttp 采集cc攻击
- EasouSpider 爬虫
- HttpClient tcp攻击
- Microsoft URL Control 扫描
- YYSpider 爬虫
- jaunty wordpress爆破扫描器
- oBot 爬虫
- Python-urllib 内容采集
- Indy Library 扫描
- FlightDeckReports Bot 爬虫
大家可以根据上面的User Agent公布列表自由的在代码里拓展所屏蔽的User Agent值!
最后还是感谢奶嘴大神的教程!
