<sup id="qjuuc"></sup>
  • <td id="qjuuc"><rp id="qjuuc"><center id="qjuuc"></center></rp></td>
    • <menuitem id="qjuuc"></menuitem>
      • <menuitem id="qjuuc"><tfoot id="qjuuc"><em id="qjuuc"></em></tfoot></menuitem>
      • <menuitem id="qjuuc"></menuitem>
        <strike id="qjuuc"><rp id="qjuuc"></rp></strike>
        • <fieldset id="qjuuc"></fieldset>
            <tt id="qjuuc"><tfoot id="qjuuc"></tfoot></tt>
          • 當(dāng)前位置:聯(lián)升科技 > 技術(shù)資訊 > 開(kāi)發(fā)技術(shù) >

            Web安全:文件解析漏洞

            2020-10-29    作者:佚名    來(lái)源:計(jì)算機(jī)與網(wǎng)絡(luò)安全    閱讀: 次

            PHP是用C語(yǔ)言編寫(xiě)的,MySQL則是用C++編寫(xiě)的,而Apache則大部分是使用C語(yǔ)言編寫(xiě)的,少部分是使用C++編寫(xiě)的。所以,文件解析漏洞的本質(zhì)還是需要我們挖掘C語(yǔ)言、C++的漏洞。
            文件解析漏洞是指中間件(IIS、Apache、Nginx等)在解析文件時(shí)出現(xiàn)了漏洞,從而攻擊者可以利用該漏洞實(shí)現(xiàn)非法文件的解析。需要注意的是文件解析漏洞與文件上傳漏洞是兩碼事,文件解析漏洞是基于文件上傳之后的。
            比如Apache中間件是C語(yǔ)言與C++混合編寫(xiě)成的,當(dāng)Apache中間件出現(xiàn)了解析漏洞,無(wú)論我們PHP代碼層面如何安全,都沒(méi)辦法抵擋攻擊者的攻擊,因?yàn)楝F(xiàn)在的漏洞已經(jīng)與PHP代碼層無(wú)關(guān),已經(jīng)是底層的安全問(wèn)題了。
            文件解析漏洞就是因?yàn)锳pache中間件的C語(yǔ)言或者C++的編程出現(xiàn)了漏洞,導(dǎo)致攻擊者可以利用該漏洞解析非法文件。所以,底層安全比任何安全都要重要,至少我們從現(xiàn)在起,要開(kāi)始重視底層安全。
            接下來(lái),我們介紹Apache解析PHP文件的原理。
            當(dāng)Apache(httpd.exe)運(yùn)行之后,開(kāi)始監(jiān)聽(tīng)Web瀏覽器發(fā)送的請(qǐng)求,攔截請(qǐng)求,簡(jiǎn)單處理之后再將該請(qǐng)求告知PHP代碼解析器(CGI、FAST-CGI或者Apache Module)解析特定的PHP文件。PHP代碼解析器解析文件完成之后,返回HTML頁(yè)面給Apache,Apache再將HTML頁(yè)面響應(yīng)到Web瀏覽器,就這樣循環(huán)。在Apache解析正常PHP文件的時(shí)候,當(dāng)然是沒(méi)有大問(wèn)題的。但是,當(dāng)出現(xiàn)畸形文件的時(shí)候,Apache又該如何處理呢?其實(shí),在httpd.conf文件中,有個(gè)設(shè)置DefaultType text/plain,這個(gè)設(shè)置告訴我們Apache在遇到無(wú)法識(shí)別的文件時(shí),它會(huì)做出怎么樣的反應(yīng)。例如DefaultType text/plain,在這樣的設(shè)置前提下,當(dāng)Apache遇到無(wú)法識(shí)別的文件時(shí),就會(huì)將這些無(wú)法識(shí)別的文件通通作為文本文件來(lái)解析。在此,無(wú)法識(shí)別是什么意思呢?原來(lái)在Apache的conf目錄下面有個(gè)mime.types文件(Linux在etc/mime.types),這個(gè)文件的內(nèi)容就是Apache預(yù)定義的一些可以正常解析的文件。例如圖片的Content-type與其文件的對(duì)應(yīng)關(guān)系如下。
            image/jpeg:對(duì)應(yīng)jpeg、jpg、jpe文件。
            image/gif:對(duì)應(yīng)gif文件。
            image/png:對(duì)應(yīng)png文件。
            image/ief:對(duì)應(yīng)ief文件。
            image/g3fax:對(duì)應(yīng)g3文件。
            當(dāng)Apache遇到正常文件卻無(wú)法解析的時(shí)候,可以在這里面手動(dòng)添加解析類(lèi)型。比如,想下載一個(gè)Word文件,但是,Apache卻把Word文件以rar文件的形式返回。這種情況,就是因?yàn)锳pache沒(méi)有在mime.types文件(或是httpd.conf文件)中識(shí)別到Word文件。那么,它只能通過(guò)分析該文件的本身內(nèi)容,認(rèn)為它是一個(gè)壓縮文件,最后,Apache返回一個(gè)壓縮文件。至于是什么格式的壓縮文件,只有Apache才知道。此時(shí),如果我們要Apache能正常識(shí)別Word文件,就需要在mime.types文件中加上以下三句代碼:
            application/vnd.MSword.document.macroEnabled.12 docm  
            application/vnd.openxmlformats-officedocument.wordprocessingml.document docx  
            application/vnd.openxmlformats-officedocument.wordprocessingml.template dotx 
            這樣,Apache就可以正常返回Word文件了。其實(shí)也可以在http.conf文件中設(shè)置文件解析類(lèi)型,使用Apache的AddType 指令設(shè)置,代碼如下。
            AddType application/vnd.MSword.document.macroEnabled.12 docm  
            AddType applic ation/vnd.ope nxml f o rmat s-o f ficedo cume nt.wordprocessingml.document docx  
            AddType applic ation/vnd.ope nxml f o rmat s-o f ficedo cume nt.wordprocessingml.template dotx 
            建議不要去修改mime.types文件,添加文件解析類(lèi)型時(shí)推薦使用Apache的AddType指令。因此,對(duì)于在mime.types文件或者h(yuǎn)ttpd.conf文件中都無(wú)法識(shí)別的文件解析類(lèi)型,Apache就會(huì)默認(rèn)按照DefaultType text/plain這個(gè)字段給出的值來(lái)解析這個(gè)無(wú)法識(shí)別的文件。也許在使用這個(gè)值之前,還有一段解析驗(yàn)證,比如下載Word文件而返回rar文件。有興趣的可以研究下Apache的代碼,研究下我們的文件解析漏洞究竟是發(fā)生在Apache框架代碼的哪個(gè)分支上?
            某站文件存在解析漏洞,攻擊者可在IIS 服務(wù)器中的C:\inetpub\wwwroot目錄下建立一個(gè)名為aa.asp的文件夾,如圖1所示。
            圖1 建立可執(zhí)行目錄
            接下來(lái),攻擊者在本地新建aa.jpg文件并向其中寫(xiě)入ASP一句話(huà)木馬代碼。然后,攻擊者將已寫(xiě)入ASP一句話(huà)木馬代碼的aa.jpg圖片木馬文件上傳至aa.asp文件夾。最后,攻擊者使用中國(guó)菜刀連接aa.asp文件夾下剛才上傳的aa.jpg圖片木馬文件,即可獲得webshell,如圖2所示。
            圖2 獲取webshell


            相關(guān)文章

            我們很樂(lè)意傾聽(tīng)您的聲音!
            即刻與我們?nèi)〉寐?lián)絡(luò)
            成為日后肩并肩合作的伙伴。

            行業(yè)資訊

            聯(lián)系我們

            13387904606

            地址:新余市仙女湖區(qū)仙女湖大道萬(wàn)商紅A2棟

            手機(jī):13755589003
            QQ:122322500
            微信號(hào):13755589003

            江西新余網(wǎng)站設(shè)計(jì)_小程序制作_OA系統(tǒng)開(kāi)發(fā)_企業(yè)ERP管理系統(tǒng)_app開(kāi)發(fā)-新余聯(lián)升網(wǎng)絡(luò)科技有限公司 贛ICP備19013599號(hào)-1   贛公網(wǎng)安備 36050202000267號(hào)   

            微信二維碼
            五月天婷婷在线观看历史|国产欧美日韩免费一区二区|亚洲成a∨人片在无码|欧美日韩不卡一区二区三区中文字|每日更新国产精品视频|成年人在线观看视频免费|亚洲A片一区二区三区在线观看
            <sup id="qjuuc"></sup>
          • <td id="qjuuc"><rp id="qjuuc"><center id="qjuuc"></center></rp></td>
            • <menuitem id="qjuuc"></menuitem>
              • <menuitem id="qjuuc"><tfoot id="qjuuc"><em id="qjuuc"></em></tfoot></menuitem>
              • <menuitem id="qjuuc"></menuitem>
                <strike id="qjuuc"><rp id="qjuuc"></rp></strike>
                • <fieldset id="qjuuc"></fieldset>
                    <tt id="qjuuc"><tfoot id="qjuuc"></tfoot></tt>