筆記|文件上傳漏洞(文件繞過)

這是一篇網(wǎng)絡(luò)安全小白寫的筆記。

目錄

0 文件上傳漏洞概述

1 利用文件名及文件類型名類漏洞
1.1 javascript檢測(cè)擴(kuò)展名繞過漏洞
1.2 0x00特殊字符截?cái)嗦┒?br> 1.3 IIS和Windows系統(tǒng)下的“;”截?cái)嘧址抖?br> 1.4FCKEditor為典型的黑名單式文件檢測(cè)漏洞

2 利用文件內(nèi)容類漏洞
2.1 文件頭檢測(cè)漏洞

3 利用系統(tǒng)漏洞
3.1 Apache從后往前解析特性
3.2 IIS 6文件夾拓展名漏洞

0 文件上傳漏洞

上傳漏洞是利用文件上傳漏洞把腳本文件上傳到服務(wù)器。

1 利用文件名類漏洞

1.1 javascript檢測(cè)擴(kuò)展名繞過漏洞

檢測(cè)原理 通過js代碼檢測(cè)文件文件類型

function check(){
        var filename=document.getElementById("file");
        var str=filename.value.split(".");
        var ext=str[str.length-1];
        if(ext=='jpg'||ext=='png'||ext=='jpeg'||ext=='gif'){
            return true;
        }else{
            alert("這不是圖片!")
            return false;
        }
        return false;

在表單中使用onsumbit=check();調(diào)用js函數(shù)來檢查上傳文件的擴(kuò)展名。
漏洞原理 利用瀏覽器修改腳本,破壞檢測(cè)即可。

1.2 0x00特殊字符截?cái)嗦┒?/h3>

漏洞原理 在C語言、PHP等語言中,0x00被認(rèn)為是終止符,可構(gòu)造文件名為xxx.php[\0].jpg,[\0]為16進(jìn)制的0x00字符,由于[\0]0x00)是截?cái)嘧址?,文件名?huì)變成xxx.php

1.3 IIS和Windows系統(tǒng)下的“;”截?cái)嘧址┒?/h3>

漏洞原理 在IIS和Windows環(huán)境下,截?cái)嘧址?code>;”與0x00類似??蓸?gòu)造aaa.asp;bbb.jpg。IIS 6將執(zhí)行aaa.asp

1.4 FCKEditor為典型的黑名單式文件檢測(cè)漏洞

漏洞原理 黑名單式的限制文件上傳,代碼如下:

$Config ['AllowedExtensions'] ['File'] = array();//允許上傳的類型
$Config ['DeniedExtensions'] ['File'] = array('php','php3','php5','phtml','asp','aspx','ascx','jsp','cfm','cfc','pl','bat','exe','dll','reg','cgi');//禁止上傳的類型

漏洞防止 如果不必要,可以刪除上傳代碼。

2 利用文件內(nèi)容類漏洞

2.1 文件頭檢測(cè)漏洞

漏洞原理 判斷文件頭內(nèi)容是否符合要求,

幾個(gè)常見的文件頭對(duì)應(yīng)關(guān)系:
(1) .JPEG、.JPE、.JPG:"JPGGraphic File";
(2) .gif:"GIF 89A";
(3) .zip:"Zip Compressed";
(4) .doc、.xls、.xlt、.ppt、.apr:"MS Compound Document v1 or Lotus Approach APRfile";

3 利用系統(tǒng)漏洞

3.1 Apache從后往前解析特性

漏洞原理 Apache 1.x、2.x中對(duì)文件解析有如下特性:
(1)從后往前解析,直至一個(gè)可識(shí)別文件類型為止;
(2)可識(shí)別類型定義在mime.types文件中。
可構(gòu)造xxx.php.rar來繞過。

3.2 IIS 6文件夾拓展名漏洞

漏洞原理 IIS 6曾經(jīng)出過的漏洞,處理文件父文件夾如為*.asp,則本文件按ASP格式解析。例如:****/aaa.asp/bbb.jpg,bbb.jpg將按asp文件解析。

參考資料
[01]上傳漏洞總結(jié)
[02]米斯特白帽培訓(xùn)講義 漏洞篇 文件上傳
[03]Web應(yīng)用安全(麥子學(xué)院)|文件上傳漏洞
[04]Web應(yīng)用安全(麥子學(xué)院)|文件上傳另一種方式
[05]Web應(yīng)用安全(麥子學(xué)院)|文件上傳漏洞之繞過方式
[06]Web應(yīng)用安全(麥子學(xué)院)|文件上傳漏洞防御
[07]閑話文件上傳漏洞
[08]文件上傳漏洞(繞過姿勢(shì))
[09]吳翰清.白帽子講Web安全 [M].北京:高等教育出版社,2012.3 . 180-191

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 文件上傳漏洞是指用戶上傳了一個(gè)可執(zhí)行的腳本文件,并通過此腳本文件獲得了執(zhí)行服務(wù)器端命令的能力。這種攻擊方式是最為直...
    付出從未后悔閱讀 1,252評(píng)論 0 4
  • 文件上傳漏洞: 1.本地驗(yàn)證 本地驗(yàn)證:客戶端本地通過前臺(tái)JS腳本進(jìn)行檢測(cè)。 原理: 當(dāng)用戶在客戶端選擇文件點(diǎn)擊上...
    xaviershun閱讀 1,452評(píng)論 0 1
  • 一套實(shí)用的滲透測(cè)試崗位面試題,你會(huì)嗎? 1.拿到一個(gè)待檢測(cè)的站,你覺得應(yīng)該先做什么? 收集信息 whois、網(wǎng)站源...
    g0閱讀 5,159評(píng)論 0 9
  • 蝶水月秋千閱讀 210評(píng)論 0 0
  • 我是一碗蛋炒飯,很家常,卻很溫暖。 很餓的時(shí)候,隨手打個(gè)雞蛋,切些火腿,加點(diǎn)香蔥,如果有玉米和青豆那再好不過。頂多...
    Ana2閱讀 585評(píng)論 0 0

友情鏈接更多精彩內(nèi)容