web安全

level0:

image-20221211231711676

底部看到有提示,构造get方法cat=dog试试

image-20221211231756648

level1:

image-20221211233520721

源文件提示有个calc.php页面,用get方法传入num来计算,但是有WAF挡着

分别传入数字和字母,发现传字母会被拦截

image-20221211233707884

参考:[RoarCTF 2019]Easy Calc - 随风kali - 博客园 (cnblogs.com)

可知在num参数前加空格,可以让WAF检测不到num参数的同时传入num参数

image-20221211233843529

那就用php的scandir()函数,列出目录。但黑名单是包含了”/“的

image-20221211234126984

就用chr(47)替换

image-20221211234145597

效果如下

image-20221211234208952

同理,换用file_get_contents()函数显示f1agg内容,由于黑名单没有滤过f,1,a,g字符,所以直接传就可以了,不用换成ascii

image-20221211234546925

level2:

看源码:

image-20221212000343880

要求用post传入password == 404但又不能是数字,money == 100000000

参考:php中is_numeric函数的绕过_T0mrvvi1b3t的博客-CSDN博客_is_numeric绕过

令password=404a

image-20221212001843684

将GET改POST的时候记得加:Content-Type: application/x-www-form-urlencoded

image-20221212001919297

提示太长了,换用科学计数法

image-20221212002214750

image-20221212002218962

level3:

还没学会sql注入,暂时不做

level4:

有点像新生杯的EZupload,但更简单

注意到只能传jpg上去,那就用.htaccess绕过,然后上传一句话木马

还没有内容检测,不用变形马

在根目录有现成flag,而且权限足够,不需要在新生杯一样用diasble_function插件绕过

image-20221212011021115

  • Copyrights © 2022-2024 b1xcy