摘要: Pecker Scanner是一个PHP语言编写的基于php语法扫描、词法分析的webshell扫描工具,相比基于字符串用正则表达式检测的做法,有超高的准确性。默认检测eval语言结构,无法配置,默认强制检测。该项目Pecker Scanner托管在Githu...
Pecker Scanner是一个PHP语言编写的基于php语法扫描、词法分析的webshell扫描工具,相比基于字符串用正则表达式检测的做法,有超高的准确性。默认检测eval语言结构,无法配置,默认强制检测。该项目Pecker Scanner托管在Github,项目起源见《基于语法分析的PHP webshell扫描工具》欢迎各位的建议反馈。
使用方法:参见index.php
//配置下面三个地方
$config = array(
'scandir' => dirname(__FILE__), //配置需要扫描的目录,绝对路径。
'extend' => array('php','inc','php5'), //配置需要扫描的扩展名
'function' => array('exec','system','create_function','passthru','shell_exec','show_source','include','require_once',...等等...), //配置需要扫描的危险函数(或语言结构)
);try {
$scaner = new Pecker_Scanner();
$scaner->setPath($config['scandir']); // set directory to scan
$scaner->setExtend($config['extend']);
$scaner->setFunction($config['function']);
$scaner->run();
$result = $scaner->getReport();$html = '';
// ......
echo '<a href="'.$filename.'">Completed,View report.</a>'; //生成报告
}
catch (Exception $e)
{
print_r($e);
}
配置好之后,访问index.php即可,报告将生成在同级目录,阅读扫描报告即可。 Pecker Scanner 报告样例
下载地址(请遵守开源协议 GPL v2):
Pecker Scanner v0.3 beta
服务端校验
目前已收集如下开源项目、webshell后门特征
- DedeCMS-V5.7-UTF8-SP1-Full
- Discuz_7.2_FULL_SC_UTF8
- Discuz_X3.0_SC_UTF8
- Discuz_X3.1_SC_UTF8
- espcms_utf8_5.7.13.09.10_b
- HDWiki-v5.1UTF8-20121102
- Joomla_2.5.14-Stable-Full_Package
- Joomla_3.1.5-Stable-Full_Package
- KingCMS_6.1.1641(Sp2)
- none
- phpcms_v9.4.2_UTF8
- phpMyAdmin-4.0.7-all-languages
- phpspy 2011
- phpspy 2013
- phpspy 2013 加密版
- phpwind_UTF8_8.7
- phpwind_v9.0_utf8
- WeCenter_2-2-1
- wordpress-3.6.1
FROM:http://www.cnxct.com/pecker-scanner/