BugkuCTF之代码审计题部分

第一题:
BugkuCTF之代码审计题部分(未完待续。。。。)
分析代码:
首先确定extract()函数的用法,以及参数:
BugkuCTF之代码审计题部分(未完待续。。。。)
BugkuCTF之代码审计题部分(未完待续。。。。)
理解了extract()函数就好写了。
直接

?shiyan=&falg=

BugkuCTF之代码审计题部分(未完待续。。。。)
第二题:
BugkuCTF之代码审计题部分(未完待续。。。。)
这个也是strcmp()函数的绕过,参数传入一个a数组

?a[]=12

BugkuCTF之代码审计题部分(未完待续。。。。)
第三题:
BugkuCTF之代码审计题部分(未完待续。。。。)
看代码,应该是让我们传入一个id=hackerDJ使之获取flag
不过又需要我们urldecode(),因为浏览器在传输网址的时候已经urldecode()一次了,所以我们需要解两次。
因为%在urlencode是%25,a是%61所以直接:

?id=h%2561ckerDJ

BugkuCTF之代码审计题部分(未完待续。。。。)
第四题:
BugkuCTF之代码审计题部分(未完待续。。。。)
因为md5()加密不能加密数组,所以直接传入两个数组

?username[]=123&password[]=456

BugkuCTF之代码审计题部分(未完待续。。。。)
第五题:
BugkuCTF之代码审计题部分(未完待续。。。。)
看题目也知道是数组绕过所以就直接上payload吧

?password[]=asd--

BugkuCTF之代码审计题部分(未完待续。。。。)
第六题:
BugkuCTF之代码审计题部分(未完待续。。。。)
同理也是数组绕过。

?password[]=123456

BugkuCTF之代码审计题部分(未完待续。。。。)
第七题:
BugkuCTF之代码审计题部分(未完待续。。。。)
跟md5()函数差不多吧,数组绕过。

?name[]=123&password[]=456

BugkuCTF之代码审计题部分(未完待续。。。。)
第八题:
BugkuCTF之代码审计题部分(未完待续。。。。)
这个题有点难度,既要两个md5的变量相等又要a不等于QNKCDZO
这个怎么办啊!!
应该是MD5碰撞吧,使之两个加密之后相等,加密之前不等
QNKCDZO和240610708是两个md5加密相等的值
所以

?a=240610708

BugkuCTF之代码审计题部分(未完待续。。。。)
第九题:
BugkuCTF之代码审计题部分(未完待续。。。。)
说实话一开始我也不知道怎么办,直接赋值错!!
后来看题目说16进制,就直接传入3735929054的16进制吧!
没想到对了!!

?password=0xdeadc0de

BugkuCTF之代码审计题部分(未完待续。。。。)

第十题网站炸了,无法显示

第十一题:
BugkuCTF之代码审计题部分(未完待续。。。。)
看题就知道是%00截断,不过我用数组也可以直接绕过!!

?password[]=123

BugkuCTF之代码审计题部分(未完待续。。。。)
第二种方法:
%00截断:

?password[]=1%00

BugkuCTF之代码审计题部分(未完待续。。。。)
第十二题:
BugkuCTF之代码审计题部分(未完待续。。。。)
直接数组绕过:

?ctf[]=123

BugkuCTF之代码审计题部分(未完待续。。。。)

相关文章:

  • 2021-12-22
  • 2021-10-02
  • 2022-02-12
  • 2021-10-07
  • 2022-02-23
  • 2022-12-23
  • 2021-07-02
  • 2021-05-28
猜你喜欢
  • 2021-05-06
  • 2021-08-30
  • 2021-12-25
  • 2021-07-01
  • 2022-12-23
  • 2021-06-16
  • 2021-11-27
相关资源
相似解决方案