upload-labs(Pass02)
2020-03-18 本文已影响0人
六亲不认的步伐
本次搭建upload-labs靶机进行File Upload测试
测试项目:Pass02[MIME check]
测试介绍:此靶机主要练习 文件上传技能与代码审计技能
Pass02上传界面与源代码
PHP代码审计
方法1:BurpSuite抓包修改
首先上传将后缀名改为.jpg 上传默认MIME变为 image/jpeg
数据包篡改
成功上传
方法2:利用图片马来进行结合文件包含等方法来进行实现绕过(纯思路,未实现)
- 利用cmd终端copy大法制作图片马
- 利用Winhex等二进制工具制作图片马
- 利用图片属性特点制作图片马
方法3:利用上传配置文件来利用文件解析方法来进行绕过(纯思路,未实现)
- 上传关键性配置文件.htaccess文件来对jpg文件解析方法设置成php文件。
方法4:利用修改幻数方法进行实现(纯思路,未实现)
- 添加关键幻数头与后缀名来实现
我个人理解 MIME的类型,就是从上传的后缀名判断出来的,比个例子,如果我创建了1.txt的话改成1.jpg是不是在上传时就识别出来时image/jpeg;相当于MIME和后缀名判断本质其实都是看后缀名。至于正确与否需要进行深入了解MIME底层生成机制
附录1 :
幻数头对应映射表(CTF杂项隐写术部分也常用)
| File | Type | Hex-header |
|---|---|---|
| JPEG | .jpg/.jpeg | FFD8FF |
| PNG | .png | 89504E47 |
| GIF | .gif | 47494638 |
| TIFF | .tif | 49492A00 |
| XML | .xml | 3C3F786D6C |
| HTML | .htm/.html | 68746D6C3E |
| ZIP Archive | .zip | 504B0304 |
| RAR Archive | .rar | 52617221 |
附录2 :
此表摘取主要引自:https://blog.csdn.net/menghuannvxia/article/details/78912636
| Type | MIME(Content-Type) |
|---|---|
| .doc | application/msword |
| application/pdf | |
| .cer | application/pkix-cert |
| .xls | application/vnd.ms-excel |
| .xlsx | application/vnd.ms-excel.12 |
| .gz | application/x-gzip |
| .zip | application/x-zip-compressed |
| .xml | application/xml |
| .zip | application/zip |
| .mp3 | audio/mpeg |
| .wav | audio/x-wav |
| .bmp | image/bmp |
| .gif | image/gif |
| .jpg | image/jpeg |
| .jpg | image/pjpeg |
| .png | image/png |
| .svg | image/svg+xml |
| .html | text/html |
| .json | application/json |
| .apk | application/vnd.android.package-archive |