檔案上傳漏洞及webshell簡介

2021-10-10 04:47:47 字數 1787 閱讀 9737

檔案上傳是web應用的必備功能之一,比如上傳頭像顯示個性化、上傳附件共享檔案、上傳指令碼更新**等。如果伺服器配置不當或者沒有進行足夠的過濾,web使用者就可以上傳任意檔案,包括惡意指令碼檔案、exe程式等,這就造成了檔案上傳漏洞。

檔案上傳漏洞的成因,一方面伺服器配置不當會導致任意檔案上傳;另一方面,web應用開放了檔案上傳功能,並且對上傳的檔案沒有進行足夠的限制;再者就是,程式開發部署時候,沒有考慮到系統特性和驗證和過濾不嚴格而導致限制被繞過,上傳任意檔案。

上傳漏洞最直接的威脅就是上傳任意檔案,包括惡意指令碼、程式等。如果web伺服器所儲存上傳檔案的可寫目錄具有執行許可權,那麼就可以直接上傳後門檔案,導致**淪陷。如果攻擊者通過其他漏洞進行提權操作,拿到系統管理許可權,那麼直接導致伺服器淪陷。同伺服器下的其他**無一倖免,均會被攻擊者控制。

通過上傳漏洞獲得的**後門,就是webshell。

在電腦科學中,shell俗稱殼(用來區別於「核"),是指"為使用者提供操作介面"的軟體(命令直譯器)。類似於windows系統給的cmd.exe或者linux 下bash 等,雖然這些系統上的命令直譯器不止一種。

webshell是乙個**的後門,也是乙個命令直譯器,不過是以web方式(http協議)通訊(傳遞命令訊息),繼承了web使用者的許可權。webshell本質上是在伺服器端可執行的指令碼檔案,字尾名為. php/.asp/.aspx/.jsp等,也就是說webshell

接收來自於web 使用者的命令,然後再伺服器端執行。

webshell 也可以是大馬,也是**木馬。有一類webshell

之所以叫大馬,是因為與小馬(一句話木馬)區分開,並且**比較大,但是功能比較豐富。同樣,大馬有很多種指令碼格式,其功能基本相同。每個團隊都有自己的定製大馬。

在大馬中我們可以進行檔案管理,執行系統命令等,還有一些其他定製功能。這是asp 的大馬。

小馬就是一句話木馬,因為其**量比較小,就是一句簡單的**。以下是各個指令碼的一句話。

asp:

<%eval- request(「cmd」")%>

asp.net:

<%@ page language="「jscript」%>

<%eval(request.item [「cmd」],「unsafe」" ) ;%>

php:

<?php @eval($_request [ ' cmd ' ] );?>

jsp和jspx的一句話木馬比較複雜一些,詳細可以檢視檔案[1.jsp]和[1.jspx]。

一句話木馬短小精悍,功能強大,但是需要配合中國菜刀或者中國蟻劍客戶端使用,中國菜刀是一句話木馬的管理器,也是命令操作介面。中國菜刀在連線一句話木馬的時候需要填寫密碼(實際上就是變數名)

例如,我們上傳乙個php的一句話木馬,密碼就是[cmd]。

@虛擬終端

在中國菜刀下可以獲得類似於cmd和bash的命令列介面,可以執行相關命令。

@資料庫管理 .

我們可以使用中國菜刀進行資料庫管理,此時需要知道連線資料庫的賬密。

getshell,顧名思義,就是獲取web的過程和結果。當然任意檔案上傳是getshell的主要方式,但並不是唯一途徑。

檔案.上傳漏洞利用的條件

*一定的條件

web伺服器要開啟檔案上傳功能,並且上傳api (介面)對外「開放」(web使用者可以訪問) ;

web使用者對目標目錄具有可寫許可權,甚至具有執行許可權,-般情況下,web目錄都有執行許可權。

要想完美利用檔案上傳漏洞,就是上傳的檔案可以執行,也就是web容器可以解析我們上傳的指令碼,無論指令碼以什麼樣的形式存在。

無視以上條件的情況就是伺服器配置不當,開啟了put方法。

webshell與檔案上傳漏洞

大馬 1.體積大,功能全 2.會呼叫系統的關鍵函式 3.以 加密進行隱藏。小馬 1.體積小,功能少 2.只有乙個上傳功能。一句話木馬 1.短,只有一行 2.使用場景大,可單獨生成檔案,可插入檔案 3.安全性高,隱匿性強,可變形免殺 4.框架不便資料執行 資料傳遞 例如 eval request pa...

利用ASP上傳漏洞得到webshell實戰

2004年網路安全屆的經典漏洞!前段時間被上傳漏洞和asp木馬鬧得沸沸揚揚,狗狗他們的 被黑了一次又一次 所以開始關心上傳漏洞方面的網路安全問題,昨天終於試驗了整個流程 上傳漏洞.href http www.skyhe.com blog bloget home review.asp?id 242 原...

CTF WEB 檔案上傳和 webshell

目錄webshell 例題 bugku 求 getshell 例題 攻防世界 upload1 例題 攻防世界 web php include 利用檔案上傳漏洞往目標 中上傳一句話木馬,然後就可以在本地獲取和控制整個 目錄。利用一句話木馬進行入侵時需要滿足木馬上傳成功未被查殺,知道木馬的路徑在哪並保證...