WEB中間件常見漏洞總結
什么是WEB中間件
是一類提供系統軟體和應用軟體之間的連接,便于軟體各部件之間的溝通的軟體,應用軟體可以借助中間件在不同的技術架構之間共享資訊和資源,中間件位于客戶機服務器的作業系統之上,管理著計算資源和網路通信,中間件=平臺+通信
一、IIS中間件
1、IIS6.0 PUT漏洞
漏洞原理
IIS6.0 sever在web服務擴展中開啟了WebDAV,WebDAV是在一中HTTP1.1的擴展協議,它擴展了HTTP1.1,在GET、POST、HEAD等幾個http標準方法以外添加了一些新的方法,如PUT,使應用程式可對Web Server直接讀寫,并支持寫檔案鎖定(Locking)及解鎖(Unlock),還可以支持檔案的版本控制,可以像在操作本地檔案夾一樣操作服務器上的檔案夾,該擴展也存在缺陷,利用PUT方法可直接向服務器上傳惡意檔案,控制服務器,導致任意檔案上傳
修復建議
關閉WebDAV服務和寫入權限
2、短檔案名猜解
漏洞原理
為了兼容16位MS-DOS程式,Windows為檔案名較長的檔案(和檔案夾)生成了對應的Windows8.3短檔案名,IIS6.0處理PROPFIND指令的時候,由于對url的長度沒有進行有效的長度控制和檢查,導致執行memcpy對虛擬路徑進行構造的時候,引發堆疊溢位,從而導致遠程代碼執行,
修復建議
關閉WebDAV服務;使用相關的防護設備
3、決議漏洞
漏洞原理
IIS 6.0在處理含有特殊符號的檔案路徑時會出現邏輯錯誤,從而造成檔案決議漏洞,
二、Apache中間件
Apache 是世界使用排名第一的Web 服務器軟體,它可以運行在幾乎所有廣泛使用的 計算機平臺上,由于其 跨平臺 和安全性被廣泛使用,是最流行的Web服務器端軟體之一,它快速、可靠并且可通過簡單的API擴充,將 Perl/ Python等 解釋器編譯到服務器中,
1、多后綴名決議漏洞
漏洞原理
Apache默認一個檔案可以有多個以.分割的后綴,當右邊的后綴名無法識別,則繼續向左識別;因此可以用于檔案上傳來繞過黑名單導致getshell
修復建議
- 方案一:httpd.conf或httpd-vhosts.conf中加入以下陳述句,從而禁止檔案名格式為.php.的訪問權限
<FilesMatch ".(php.|php3.|php4.|php5.)">
Order Deny,Allow
Deny from all
</FilesMatch>
-
方案二:需要保留檔案名,可以修改程式源代碼,替換上傳檔案名中的“.”為“_”:
? eg:
$filename = str_replace('.', '_', $filename);
2、目錄遍歷
漏洞原理
Apache HTTP Server 2.4.49版本中使用的ap_normalize_pat函式在對路徑引數進行規范化時會先進行url解碼,然后判斷是否存在../的路徑穿越符,當檢測到路徑中存在%字符時,如果緊跟的2個字符是十六進制字符,就會進行url解碼,將其轉換成標準字符,如%2e->.,轉換完成后會判斷是否存在…/,
如果路徑中存在%2e./形式,就會檢測到,但是出現.%2e/這種形式時,就不會檢測到,原因是在遍歷到第一個.字符時,此時檢測到后面的兩個字符是%2而不是./,就不會把它當作路徑穿越符處理,因此可以使用.%2e/或者%2e%2e繞過對路徑穿越符的檢測,
三、Nginx中間件
Nginx是一個高性能的HTTP和反向代理web服務器,同時也提供了IMAP/POP3/SMTP服務,其將源代碼以類BSD許可證的形式發布,因它的穩定性、豐富的功能集、示例組態檔和低系統資源的消耗而聞名,
Nginx是一款輕量級的Web 服務器/反向代理服務器及電子郵件(IMAP/POP3)代理服務器,在BSD-like 協議下發行,其特點是占有記憶體少,并發能力強,nginx的并發能力在同型別的網頁服務器中表現較好
1、決議漏洞
漏洞原理
對任意檔案名,在后面添加/任意檔案名.php的決議漏洞,比如原本檔案名是test.jpg,可以添加test.jpg/x.php進行決議攻擊
修復建議
1、將php.ini檔案中的cgi.fix_pathinfo的值設為0.這樣php在決議1.php/1.jpg這樣的目錄時,只要1.jpg不存在就會顯示404;
2、將/etc/php5/fpm/pool.d/www.conf中security.limit_ectensions后面的值設為.php,
2、目錄遍歷
漏洞原理
Nginx 的目錄遍歷與 Apache 一樣,屬于配置方面的問題,錯誤的配置可到導致目錄遍歷與原始碼泄露,
修復建議
將/etc/nginx/sites-avaliable/default里的autoindex on改為autoindex off.
3、CRLF注入
漏洞原理
CRLF是“回車+換行”的簡稱(\r\n),HTTPHeader與HTTPBody時用兩個CRLF來分隔的,瀏覽器根據兩個CRLF來取出HTTP內容并顯示出來,通過控制HTTP頭中的字符,注入惡意換行,就能注入一些會話cookie或者html代碼,由于Nginx配置不正確,導致注入的代碼會被執行,
修復建議
Nginx的組態檔/etc/nginx/conf.d/error1.conf修改為使用不解碼的url跳轉.
4、目錄穿越
漏洞原理
Nginx反向代理,靜態檔案存盤在/home/下,而訪問時需要在url中輸入files,組態檔中/files沒有用/閉合,導致可以穿越至上層目錄
修復建議
Nginx組態檔/etc/nginx/conf.d/error2.conf的/files使用/閉合.
四、Tomcat中間件
Tomcat是Apache 軟體基金會(Apache Software Foundation)的Jakarta 專案中的一個核心專案,由Apache、Sun 和其他一些公司及個人共同開發而成,由于有了Sun 的參與和支持,最新的Servlet 和JSP 規范總是能在Tomcat 中得到體現,因為Tomcat 技術先進、性能穩定,而且免費,因而深受Java 愛好者的喜愛并得到了部分軟體開發商的認可,成為目前比較流行的Web 應用服務器,
1、遠程代碼執行
漏洞原理
Tomcat運行在Windows主機上,且啟用了 HTTP PUT請求方法,可通過構造的攻擊請求向服務器上傳包含任意代碼JSP檔案,造成任意代碼執行,受影響版本:Apache Tomcat 7.0.0 – 7.0.81
修復
1.檢測當前版本是否在影響范圍內,并禁用PUT方法;
2.更新并升級至最新版.
2、war后門檔案部署
漏洞原理
Tomcat支持在后臺部署war檔案,可以直接將webshell部署到web目錄下,若后臺管理頁面存在弱口令,則可以通過爆破獲取密碼
修復
-
1.在系統上以低權限運行Tomcat應用程式,創建一個專門的Tomcat服務用戶,該用戶只能擁有一組最小權限,例如不允許遠程登錄;
-
2.增加對于本地和基于證書的身份驗證,部署賬戶鎖定機制,對于集中式認證,目錄服務也要做相應配置,在
CATALINA_HOME/conf/web.xml檔案設定鎖定機制和時間超時限制; -
3.以及針對
manager-gui/manager-status/manager-script等目錄頁面設定最小權限訪問限制; -
4.后臺管理避免弱口令.
五、jBoss中間件
1、反序列化漏洞
漏洞原理
Java序列化,簡而言之就是把java物件轉化為位元組序列的程序,而反序列話則是再把位元組序列恢復為java物件的程序,然而就在這一轉一變得程序中,程式員的過濾不嚴格,就可以導致惡意構造的代碼的實作
修復
-
1.不需要
http-invoker.sar組件的用戶可直接洗掉此組件; -
2.用于對
httpinvoker組件進行訪問控制.
2、war后門檔案部署
jBoss后臺管理頁面存在弱口令,登錄后臺上傳war包
六、WebLogic中間件
WebLogic是Oracle公司出品的一個application server,確切的說是一個基于JAVAEE架構的中間件
WebLogic是用于開發、集成、部署和管理大型分布式Web應用、網路應用和資料庫應用的Java應用服務器,將Java的動態功能和Java Enterprise標準的安全性引入大型網路應用的開發、集成、部署和管理之中
1、反序列化漏洞
漏洞原理
Java序列化,簡而言之就是把java物件轉化為位元組序列的程序,而反序列話則是再把位元組序列恢復為java物件的程序,然而就在這一轉一變得程序中,程式員的過濾不嚴格,就可以導致惡意構造的代碼的實作
修復
- 升級補丁
- 對訪問
wls-wsat資源進行訪問控制
2、SSRF
漏洞原理
Weblogic/uddiexplorer/SearchPublicRegistries.jsp中存在一個SSRF漏洞,利用該漏洞可以發送任意HTTP請求,進而攻擊內網中redis、fastcgi等脆弱組件
修復
-
1.將SearchPublicRegistries.jsp直接洗掉;
-
2.洗掉uddiexplorer檔案夾、限制uddiexplorer應用只能內網訪問;
-
3.將weblogic安裝目錄
wlserver_10.3/server/lib/uddiexplorer.war做好備份、將weblogic安裝目錄下的server/lib/uddiexplorer.war下載、用winrar等工具打開uddiexplorer.war、將其下的SearchPublicRegistries.jsp重命名為SearchPublicRegistries.jspx、保存后上傳回服務端替換原先的uddiexplorer.war、對于多臺主機組成的集群,針對每臺主機都要做這樣的操作、由于每個server的tmp目錄下都有快取所以修改后要徹底重啟weblogic(即停應用–停server–停控制臺–啟控制臺–啟server–啟應用).
3、任意檔案上傳
漏洞原理
Weblogic管理端未授權的兩個頁面存在任意檔案上傳漏洞,進而獲取服務器權限,訪問ws_utc/config.do,設定Work Home Dir為ws_utc應用的靜態檔案css目錄,訪問這個目錄是無需權限的(如果能改的話)
修復
-
升級補丁
-
進入Weblogic Server管理控制臺,domain設定中,啟用”生產模式”.
4、war后臺檔案部署
漏洞原理
由于WebLogic后臺存在弱口令,可直接登陸后臺上傳包含后門的war包
修復
防火墻設定埠過濾,也可以設定只允許訪問后臺的IP串列,避免后臺弱口令.
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/552106.html
標籤:其他
上一篇:AI 繪畫基礎 - 細數 Stable Diffusion 中的各種常用模型 【🧙 魔導士裝備圖鑒】
下一篇:返回列表
