欢迎访问Sunbet,Sunbet是欧博Allbet的官方网站!

首页Sunbet_安全预警正文

Discuz!x3.4背景文件恣意删除破绽剖析

b9e08c31ae1faa592019-04-125

canary的各种姿势----pwn题解版

这是做栈的题目遇到的各种有关于canary的操作,适合萌新收藏,大佬们请出门右拐,谢谢~ 题目都在附件中,下面直接开始介绍吧。 题目1:bin 方法介绍:leak canary 利用格式化字符串漏洞,泄露出canary的值,然后填到canary相应的位置从而


媒介

这个破绽是晏师傅发明的,该破绽为背景恣意文件删除,须要有治理员的权限,以是说伤害异常小。晏师傅说,让我用这个洞的剖析发个文章活泼下先知的账号,天天发发文章,比打游戏好多了。我以为异常有原理,以是有了这篇文章。

Discuz!x3.4背景文件恣意删除破绽剖析  第1张

代码剖析

破绽地位在\source\admincp\admincp_forums.php第1793-1799行。用正则搜刮,往unlink函数中直接传入经由过程GET要领猎取的变量,直接能够搜到。

Discuz!x3.4背景文件恣意删除破绽剖析  第2张

存在破绽的代码:

if(!$multiset) {

   if($_GET['delreplybg']) {
      $valueparse = parse_url($_GET['replybgnew']);
      if(!isset($valueparse['host']) && file_exists($_G['setting']['attachurl'].'common/'.$_GET['replybgnew'])) {
         @unlink($_G['setting']['attachurl'].'common/'.$_GET['replybgnew']);
      }
      $_GET['replybgnew'] = '';
   }

起首我们也要进入第一个if语句,检察代码可知,当$multiset为假或许为0时便可。

Discuz!x3.4背景文件恣意删除破绽剖析  第3张

查找下$multiset赋值的地位,发明其默以为0,只需让GET参数multi为空或许不存在便可。

Discuz!x3.4背景文件恣意删除破绽剖析  第4张

再看第二个和第三个if语句:

第二个if语句,只需设置GET参数delreplybg;

第二个if语句,开发者做了下检测,经由过程检测parse_url函数返回的效果中有没有host这个变量,来确保GET参数replybgnew不是url,然则这个检测其实不影响我们传入文件途径。

接下来再看一下$_G['setting']['attachurl']变量的内容是什么就能够组织exp了。

打个断点, 然后上岸背景,进入背景->模块治理,点击提交,这是发明已断下了,看下它的值:

Discuz!x3.4背景文件恣意删除破绽剖析  第5张

-------------------------------------

申博网络安全巴士站

申博-网络安全巴士站是一个专注于网络安全、系统安全、互联网安全、信息安全,全新视界的互联网安全新媒体。

-------------------------------------

它的值为data/attachment/,再拼接上common/,也就是说我们可控的删除途径前缀为data/attachment/common/。

至此,我们就能够组织exp了。

破绽复现

下个最新版的Discuz!x3.4,装置一下。

Discuz!x3.4背景文件恣意删除破绽剖析  第6张

设置好burp的署理,然后上岸背景,进入论坛->模块治理,点击提交。

Discuz!x3.4背景文件恣意删除破绽剖析  第7张

由于discuz!x3.4装置胜利以后,上岸进背景,就会把装置剧本删除(这也许是官方的修复体式格局?),以是没法举行重装,那就删除个主页吧。

Discuz!x3.4背景文件恣意删除破绽剖析  第8张

修正要求包,到场 &replybgnew=../../../index.php&delreplybg=1 。

Discuz!x3.4背景文件恣意删除破绽剖析  第9张

点击Forward,如许就会把主页删除。

Discuz!x3.4背景文件恣意删除破绽剖析  第10张

文件治理器里也检察一下,肯定是否是真的删除。

Discuz!x3.4背景文件恣意删除破绽剖析  第11张

后话

憧憬晏师傅那样康健绿色、积极向上的生涯。


canary的各种姿势----pwn题解版

这是做栈的题目遇到的各种有关于canary的操作,适合萌新收藏,大佬们请出门右拐,谢谢~ 题目都在附件中,下面直接开始介绍吧。 题目1:bin 方法介绍:leak canary 利用格式化字符串漏洞,泄露出canary的值,然后填到canary相应的位置从而

网友评论