Pass-01
前端js验证
谷歌设置->隐私安全->网站设置->JavaScript
上传php文件
复制图片地址 蚁剑连接
文件上传成功
Pass-02
MIME是一种类型(例如:text,image),MIME是一种标准,是用来表示文档,文件或字节流的性质和格式(告诉浏览器这个文件的类型,目的跟文件扩展名类似,但更加具体 )
允许上传文件格式:jpeg,png,gif
抓包 修改Content-Type:image/png
文件上传成功
Pass-03
deny_ext(黑名单)拒绝后缀名为asp,aspx,php,jsp文件
查看源码 不允许上传.asp,.aspx,.php,.jsp后缀文件
抓包 使用php3.phtml等后缀
Pass-04
黑名单绕过
查看源码:
$deny_ext=array(".php",".php5",".php4",".php3",".php2",".php1",".html",".htm",".phtml",".pht",".pHp",".pHp5",".pHp4",".pHp3",".pHp2",".pHp1",".Html",".Htm",".pHtml",".jsp",".jspa",".jspx",".jsw",".jsv",".jspf",".jtml",".jSp",".jSpx",".jSpa",".jSw",".jSv",".jSpf",".jHtml",".asp",".aspx",".asa",".asax",".ascx",".ashx",".asmx",".cer",".aSp",".aSpx",".aSa",".aSax",".aScx",".aShx",".aSmx",".cEr",".sWf",".swf",".ini");
不允许上传以上文件类型 .htaccess 没在黑名单里面
先上传.htaccess文件
把文件名含有jpg的文件当成php文件执行
上传jpg文件(图片马)
蚁剑连接
图片马
一张图片 一个写有一句话木马的php文件
打开终端 cd
Pass-05
$file_ext = strtolower($file_ext); //转换为小写
源码没有转换为小写 改为.PHP
抓包 修改.PHP
Pass-06
.php+空格
抓包
Pass-07
$file_name = deldot($file_name);//删除文件名末尾的点
源码中没有删除文件末尾的点
改为.php.
文件上传成功
Pass-08
$file_ext = str_ireplace('::$DATA', '', $file_ext);//去除字符串::$DATA
.php::$DATA 抓包
Pass-09
查看源码
$file_ext = strrchr($file_name, '.');
末尾的点和空格只删除了一次 用.php. .(.空格.)绕过
文件上传成功
Pass-10
查看源码
$file_name = str_ireplace($deny_ext,"", $file_name);
黑名单里面的后缀为空 但是只是替换了一次 所以可以用双写 pphphp绕过为.pphphp
文件上传成功
Pass-11
白名单绕过 GET
%00截断:xx.php%00
Pass-12
Pass-13
上传图片马
构造的URL地址为
include.php?file=upload/6920240104114225.jpg
蚁剑连接成功.
Pass-14
getimagesize()函数:测定GIF,JPG,PNG,SWF,SWC,PSD,TIFF,BMP,IFF,JP2,JPX,JB2,JPC,XBM 或 WBMP 图像文件的大小 返回图像的尺寸,文件类型,图片高度与宽度
(函数成功返回的就是一个数组,失败则返回 FALSE 并产生一条 E_WARNING 级的错误信息0
同理上传图片马
Pass-15
exif_imagetype() 函数:读取图像的第一个字节并检查其签名。如果发现了恰当的签名则返回一个对应的常量,否则返回 FALSE
同理上传图片马
Pass-16
二次渲染
Pass-17
条件竞争
上传php文件
进入intruder攻击
在positions中修改
进入payloads循环攻击10000次
询问网站
Pass-18
图片型条件竞争
上传jpg文件
同理
Pass-19
上传php文件
可在网页上修改文件名
Pass-20
先验证content-type 是否合法
判断file数组最后一个元素是否合法
在对数组第一位和$file[count($filr)-1]拼接保存判断合法
抓包 设置content-type和file数组 使file数组最后一个元素为白名单内的元素
$file[xount($file)-1]设置为空即可通过move_upload_file
标签:文件,upload,labs,ext,file,Pass,php,上传 From: https://www.cnblogs.com/ningweiyu/p/17961690