本文最后更新于11 天前,其中的信息可能已经过时,如有错误请发送邮件到
matter_lmoon5731@outlook.com
好靶场
目前进度完成8个
主要学习内容构建上传的php文件其中内容为获取对应目录下面的flag如
主要的题型为绕过后面的过滤机制目前的过滤。让其过滤之后仍为php文件
主要的有过滤限制上传文件的为png的,
利用bp将后缀改为php%00.png进行绕过使其上传之后的文件为为php,因为%00作用就是截断,明面上为png但实际后端进行保存问价是会将%00后面内容进行截断

第二的深刻的为检测的逻辑是检测上传文件的content-type值

第二个思路也可以上传jpg后缀的文件然后改文件后缀,只要保证content-type的类型是图像就行
flag{fd9d058252fd42528be156206605d1ad}
第3个就是将php加入黑名单
检测到后缀存在php就将其删除
主要的思路还是在其检测的思路上将其构建筛选之后的文件后缀还是为php,这里在前面构建pphphp将php过滤之后得到的后缀还是php

flag{a0960081a0044bfeab6474034c403aa5}
第四个就是检测后缀必须包含有要求的文件类型
那就就是构建文件后缀为png.png.php同时包含png和php,应为后缀php所以会按照php的方式进行打开

flag{e09b7f4192ab4709a68be05ddcfd2e9d}
第5个位目录穿越
扫描目录没有扫到,然后利用多个….//进行目录穿越这个要一个一个试,最后利用%00进行隔断
然后当你一直尝试目录穿越的试试会发现他始终都是一个页面如下

这是因为直接使用….//不会执行读取文件这个时候利用page的get传传参使其读取目录下的文件
page 是后端业务自定义 GET 传参名,原本设计用来加载不同页面文件(正常功能),被滥用触发本地文件包含 LFI 漏洞,不只是浏览目录,是直接读取文件内容
http://wjpa2e3.bug2.sanjiuctf.com:8888/?page=....//....//....//....//....//tmp/flag.txt%00

flag{271615a9af864423ba930277f9c3e813}
还有
剩下3个
1个是由于是静态检测所以在F12设置中警用javaScript
1个是直接上传php文件
1个是将php后缀添加一个数字绕过检测机制










