文章目錄
  1. 1. 0x00 Cake
  2. 2. 0x01 绕过云WAF1
    1. 2.1. 域名md5解码后是cdn,暗示此题要求找出背后真正的IP。
  3. 3. 0x02 前端初赛题1: http://drops.wooyun.org/tips/3059
  4. 4. 0x03 前端初赛题2: http://drops.wooyun.org/tips/2924
  5. 5. 0x04 前端初赛题3:
  6. 6. 0x05 简单业务逻辑:
  7. 7. 0x06 谁偷了你的站内短信
  8. 8. 0x07 密码宝宝
  9. 9. 0x08 渗透绕过WAF2

0x00 Cake

异或加密

0x01 绕过云WAF1

总结别人的思路:

域名md5解码后是cdn,暗示此题要求找出背后真正的IP。

  1. 方法一: http://zone.wooyun.org/content/18058.
    1. 上apnic上过滤出全中国的ip段
    2. 使用zmap扫描所有ip的80端口
    3. 使用zmap的example的banner-grab对扫描出来的ip进行banner抓取.由于是要绕过cdn,因此http-req里host应该填对外的这个域名(我不知道改怎么叫它).
    4. 过滤出banner相似的页面,用一定关键字,比如alictf
      这样大面积撒网找到真正的ip.缺点是太慢,而且apnic上抓的数据要求够新.而且我至今没有得到一个正确的结果。。。
  2. 方法二:
    1. 由于提示说了在.alictf.com的子域名下,所以可以尝试fuzz子域名.
    2. 我找了一个什么基于google的什么鬼字典,3w条记录.fuzz到video.alictf.com.和前一种方法结果差不多.
      找到之后还可以放进hosts解析.
      还有一种方法叫全球ping,算是一种暴力方法吧,按照cdn的本质.
      绕过了WAF之后,可以sqlmap注入,不知道为什么我一直不成功.

0x02 前端初赛题1: http://drops.wooyun.org/tips/3059

xss。点号,括号,等于号都被过滤掉,html标签不会被过滤。\\标签内的内容会被解html编码,于是我们用svg来包装.由于我不明白的原因(也许是仍然会被过滤),还需要再把中间的内容urlencode一次.

0x03 前端初赛题2: http://drops.wooyun.org/tips/2924

要导致url手工解析和库函数解析的结果不同

  1. 思路一:不通过url传参,用html加载flash,用FlashVars传参,我没有尝试过。不能成功。
  2. 思路二:http://drops.wooyun.org/papers/948。flash会丢弃两个出现在%后面的无效十六进制字符。这样可以导致手工通过找%来parse的方法比正常情况多出几个字符。
    由于swf运行在虚拟机上,异常会显示在console里,我们可以根据这个反馈信息来构造我们的xss,首先闭合掉括号,然后append一个img,然后补上catch,然后注释掉剩余字符。

0x04 前端初赛题3:

审计js代码。首先很容易实现认证为notexist.example.com,而url为更长的内容。
我尝试构造出notexist.example.com,而url为xss,失败了。
原来是利用@的功能,@之前用:隔开用户名和密码。会被自动截掉,剩余部分是最终url。
同样可以根据console来修改xss。
参考别人的writeup分析流程:
将第一个@前面的内容作为基础认证信息,之后的内容作为域名:端口。
但是如果最后一个:之后不是数字,而是@domain.com,浏览器会把这一部分作为域名,之前的部分作为基础认证信息,绕过检查,加载自己域名下的JS。

0x05 简单业务逻辑:

注册覆盖Admin,购买的时候抓包,修改数量为负数。

0x06 谁偷了你的站内短信

这道题相当简单了,格式化字符串漏洞。可惜getFlag函数被我忽略了。
格式化字符串有点麻烦的地方是,不能出现0x0,即使是高位为0的整数。
不过这道题不用考虑这么多,我的ROP链也不知到哪里不对,不能越过DEP。这道题只需要跳到getflag,甚至不用恢复栈。
参考别人的代码时,发现用readUntil比我写的sleep好多了,这样更有可控性。zio也是一个挺好的工具。

0x07 密码宝宝

upx -d脱壳后任然不能调试。(有人说在xp下就能调试了。。。什么时候研究一下根据esp手动脱壳。。)。花指令很多,很难静态分析。在GetWindowTextA下断点,然后跟到用户代码。别人好多都是关注堆的变化,最后flag明文写在堆里。这样的话,我确实走了很多弯路,最后是根据逻辑算出来的flag。

0x08 渗透绕过WAF2

提示需要内部访问,于是 fuzz IP:
. 192.168.x.x
. 10.x.x.x
. 172.16.x.x
这个叫什么特殊ip,最近课上学了。还没太搞明白。
10开头的可以访问,然后注入,不知道为什么一直不能获得information_schema里的信息,然而版本又是>=5.5,不懂了。T_T。。

好多题比赛结束后就做不了了,有的题很好,可惜了。以后需要多看一下知识库。
文章目錄
  1. 1. 0x00 Cake
  2. 2. 0x01 绕过云WAF1
    1. 2.1. 域名md5解码后是cdn,暗示此题要求找出背后真正的IP。
  3. 3. 0x02 前端初赛题1: http://drops.wooyun.org/tips/3059
  4. 4. 0x03 前端初赛题2: http://drops.wooyun.org/tips/2924
  5. 5. 0x04 前端初赛题3:
  6. 6. 0x05 简单业务逻辑:
  7. 7. 0x06 谁偷了你的站内短信
  8. 8. 0x07 密码宝宝
  9. 9. 0x08 渗透绕过WAF2