dvwa upload high
第一次尝试(查看是否是前端验证)
因为我是初学者,所以无法从代码审计角度分析,这里感觉像撞运气,不断尝试
直接抓到包了,为后端验证
从这里可以看出为白名单。
第二次尝试
单纯的将php文件后缀改成png,尝试上传抓包,然后改后缀为php,发现不能上传,第三关显然难度不会像第二关一样简单。
我的上传思路
1:尝试传输错误的后缀文件看能否抓到包,判断前端后端
是前端:四种方法,替换js文件,剔除js审计,关闭网站的JavaScript,上传符合要求的后缀文件再抓包修改为与之匹配的脚本后缀。
2:空格绕过
3:.绕过(点绕过)
4:. .绕过(点空点绕过)
5:双写文件后缀名pphphp其中p(php)hp括号里被剔除
6:URL的%00截断(前提GET请求从URL中获得路径如果抓包代码第一行有save_path可以试试此方法)
7:代码里的0x00截断
访问截断时候,要将路径%00或0x00后面的删去访问
8:user.ini绕过(upload第五关)
9:图片码
(1):php文本单纯改后缀不是真图片
(2):字节标识符绕过(修改图片头部字节标识符)(不是真图片)
(3):利用cmd copy语句合成图片码(真图片)
(4):二次渲染(真图片gif更容易实现)(法(1):gif二次渲染会保留一部分相同的内容,只需要在此内容中写上一句话木马防止改变)
网站将上传的图片进行二次编码,会改变我的一句话木马