日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

Web中间件漏洞总结

發(fā)布時(shí)間:2023/12/18 编程问答 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Web中间件漏洞总结 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Web中間件常見漏洞總結(jié)

一、IIS中間組件:

IIS是Internet Information Services的縮寫,意為互聯(lián)網(wǎng)信息服務(wù),是由微軟公司提供的基于運(yùn)行Microsoft Windows的互聯(lián)網(wǎng)基本服務(wù)。最初是Windows NT版本的可選包,隨后內(nèi)置在Windows 2000、Windows XP Professional和Windows Server 2003一起發(fā)行,但在Windows XP Home版本上并沒有IIS。IIS是一種Web(網(wǎng)頁(yè))服務(wù)組件,其中包括Web服務(wù)器、FTP服務(wù)器、NNTP服務(wù)器和SMTP服務(wù)器,分別用于網(wǎng)頁(yè)瀏覽、文件傳輸、新聞服務(wù)和郵件發(fā)送等方面,它使得在網(wǎng)絡(luò)(包括互聯(lián)網(wǎng)和局域網(wǎng))上發(fā)布信息成了一件很容易的事。

IIS的安全脆弱性曾長(zhǎng)時(shí)間被業(yè)內(nèi)詬病,一旦IIS出現(xiàn)遠(yuǎn)程執(zhí)行漏洞威脅將會(huì)非常嚴(yán)重。遠(yuǎn)程執(zhí)行代碼漏洞存在于 HTTP 協(xié)議堆棧 (HTTP.sys) 中,當(dāng) HTTP.sys 未正確分析經(jīng)特殊設(shè)計(jì)的 HTTP 請(qǐng)求時(shí)會(huì)導(dǎo)致此漏洞。成功利用此漏洞的攻擊者可以在系統(tǒng)帳戶的上下文中執(zhí)行任意代碼,可以導(dǎo)致IIS服務(wù)器所在機(jī)器藍(lán)屏或讀取其內(nèi)存中的機(jī)密數(shù)據(jù)

1、PUT漏洞

漏洞介紹及成因

IIS Server 在 Web 服務(wù)擴(kuò)展中開啟了 WebDAV ,配置了可以寫入的權(quán)限,造成任意文件上傳。

版本: IIS6.0

漏洞復(fù)現(xiàn)

1) 開啟WebDAV 和寫權(quán)限

2) 利用burp測(cè)試

抓包,將GET請(qǐng)求改為OPTIONS

修復(fù)建議
關(guān)閉WebDAV 和 寫權(quán)限

2、短文件名猜解

漏洞介紹及成因

Windows 以 8.3 格式生成與 MS-DOS 兼容的(短)文件名,以允許基于 MS-DOS 或 16 位 Windows的程序訪問這些文件。在cmd下輸入"dir /x"即可看到短文件名的效果。

IIS短文件名產(chǎn)生:

1.當(dāng)后綴小于4時(shí),短文件名產(chǎn)生需要文件(夾)名前綴字符長(zhǎng)度大于等于9位。

2.當(dāng)后綴大于等于4時(shí),文件名前綴字符長(zhǎng)度即使為1,也會(huì)產(chǎn)生短文件名。

目前IIS支持短文件名猜測(cè)的HTTP方法主要包括:DEBUG、OPTIONS、GET、POST、HEAD、TRACE六種。 IIS 8.0之后的版本只能通過OPTIONS和TRACE方法被猜測(cè)成功。

IIS的短文件名機(jī)制,可以暴力猜解短文件名,訪問構(gòu)造的某個(gè)存在的短文件名,會(huì)返回404,訪問構(gòu)造的某個(gè)不存在的短文件名,返回400。

漏洞復(fù)現(xiàn)

IIS8.0以下版本需要開啟ASP.NET支持,IIS大于等于8.0版本,即使沒有安裝ASP.NET,通過OPTIONS和TRACE方法也可以猜解成功。 以下通過開啟IIS6.0 ASP.NET后進(jìn)行復(fù)現(xiàn)。

1)、在網(wǎng)站根目錄下添加aaaaaaaaaa.html文件

2) 進(jìn)行猜解

IIS短文件漏洞局限性:

  • 如果文件名本身太短也是無法猜解的;

  • 此漏洞只能確定前6個(gè)字符,如果后面的字符太長(zhǎng)、包含特殊字符,很難猜解;

  • 如果文件名前6位帶空格,8.3格式的短文件名會(huì)補(bǔ)進(jìn),和真實(shí)文件名不匹配;

  • 如果文件夾名前6位字符帶點(diǎn)".",掃描程序會(huì)認(rèn)為是文件而不是文件夾,最終出現(xiàn)誤報(bào);

  • 不支持中文文件名,包括中文文件和中文文件夾。一個(gè)中文相當(dāng)于兩個(gè)英文字符,故超過4個(gè)中文字會(huì)產(chǎn)生短文件名,但是IIS不支持中文猜測(cè)。

  • IIS短文件利用工具:https://github.com/irsdl/IIS-ShortName-Scanner

    修復(fù)建議

    1)從CMD命令關(guān)閉NTFS 8.3文件格式的支持
    Windows Server 2003: (1代表關(guān)閉,0代表開啟) 關(guān)閉該功能:fsutil behavior set disable8dot3 1

    Windows Server 2008 R2:查詢是否開啟短文件名功能:fsutil 8dot3name query

    關(guān)閉該功能:fsutil 8dot3name set 1
    不同系統(tǒng)關(guān)閉命令稍有區(qū)別,該功能默認(rèn)是開啟的.
    2)或從修改注冊(cè)表關(guān)閉NTFS 8.3文件格式的支持
    快捷鍵Win+R打開命令窗口,輸入regedit打開注冊(cè)表窗口
    找到路徑: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem,將其中的 NtfsDisable8dot3NameCreation這一項(xiàng)的值設(shè)為 1,1代表不創(chuàng)建短文件名格式

    以上兩種方式修改完成后,均需要重啟系統(tǒng)生效。
    Note:此方法只能禁止NTFS8.3格式文件名創(chuàng)建,已經(jīng)存在的文件的短文件名無法移除,需要重新復(fù)制才會(huì)消失。 例:將web文件夾的內(nèi)容拷貝到另一個(gè)位置,如c:\www到c:\ww,然后刪除原文件夾,再重命名c:\ww到c:\www。

    3、遠(yuǎn)程代碼執(zhí)行

    IIS6.0 遠(yuǎn)程代碼執(zhí)行漏洞 CVE-2017-7269

    漏洞介紹及成因

    在Windows Server 2003的IIS6.0的WebDAV服務(wù)的ScStoragePathFromUrl函數(shù)存在緩存區(qū)溢出漏洞,攻擊者通過一個(gè)以"If: <http://"開始的較長(zhǎng)header頭的PROPFIND請(qǐng)求執(zhí)行任意代碼,控制目標(biāo)主機(jī)。

    漏洞復(fù)現(xiàn)

    IIS6.0開啟WebDAV服務(wù)擴(kuò)展:

    使用IISPutScanner工具掃描目標(biāo)地址:

    發(fā)現(xiàn)目標(biāo)存在WebDAV遠(yuǎn)程代碼執(zhí)行漏洞,使用網(wǎng)上公開的利用工具復(fù)現(xiàn)漏洞

    批量檢測(cè)腳本: https://github.com/admintony/Windows-Exploit/tree/master/IIS6_WebDAV_Scanner

    修復(fù)方案

    關(guān)閉WebDAV服務(wù)擴(kuò)展

    4、解析漏洞

    4.1、IIS6.0 解析漏洞

    漏洞介紹及成因

    基于文件名

    IIS6.0默認(rèn)不解析;號(hào)后面的內(nèi)容,例如1.asp;.jpg會(huì)當(dāng)成1.asp解析,相當(dāng)于分號(hào)截?cái)唷?/p>

    基于文件夾

    IIS6.0會(huì)將/*.asp/文件夾下的文件當(dāng)成asp解析。

    另外,IIS6.x除了會(huì)將擴(kuò)展名為.asp的文件解析為asp之外,還默認(rèn)會(huì)將擴(kuò)展名為.asa,.cdx,.cer解析為asp,從網(wǎng)站屬性->主目錄->配置 可以看出,他們都是調(diào)用了asp.dll進(jìn)行的解析。

    修復(fù)方案

    由于微軟并不認(rèn)為這是一個(gè)漏洞,也沒有推出相關(guān)的修復(fù)補(bǔ)丁,因此我們需要自己設(shè)置:

  • 取消網(wǎng)站目錄腳本執(zhí)行權(quán)限

  • 禁止創(chuàng)建文件夾

  • 重命名上傳文件為時(shí)間戳+.jpg或隨機(jī)數(shù)+.jpg等

  • 4.2、IIS7.0/7.5 解析漏洞

    漏洞介紹及成因

    IIS7.*在FastCGI運(yùn)行php的情況下,php默認(rèn)配置cgi.fix_pathinfo=1,導(dǎo)致在任意文件后面添加/.php,服務(wù)器就會(huì)解析成php。

    IIS7.x版本 在Fast-CGI運(yùn)行模式下,在任意文件,例:test.jpg后面加上/.php,會(huì)將test.jpg 解析為php文件。

    修復(fù)建議

    配置cgi.fix_pathinfo(php.ini中)為0并重啟php-cgi程序

    二、Apache中間組件:

    Apache是世界使用排名第一的Web服務(wù)器軟件。它可以運(yùn)行在幾乎所有廣泛使用的計(jì)算機(jī)平臺(tái)上,由于其跨平臺(tái)和安全性被廣泛使用,是最流行的Web服務(wù)器端軟件之一。它快速、可靠并且可通過簡(jiǎn)單的API擴(kuò)充,將Perl/Python等解釋器編譯到服務(wù)器中。

    1、解析漏洞

    1.1、未知擴(kuò)展名解析漏洞

    漏洞介紹及成因

    Apache的解析漏洞依賴于一個(gè)特性: Apache默認(rèn)一個(gè)文件可以有多個(gè)以點(diǎn)分割的后綴,當(dāng)最右邊的后綴無法識(shí)別(不在默認(rèn)一個(gè)文件可以有多個(gè)以點(diǎn)分割的后綴,當(dāng)最右邊的后綴無法識(shí)別(不在mime.types文件),則繼續(xù)向左識(shí)別,直到識(shí)別到合法后綴才進(jìn)行解析

    漏洞復(fù)現(xiàn)

    使用phpstudy進(jìn)行復(fù)現(xiàn)

    創(chuàng)建文件phpinfo.php.xxx

    修改后綴名為.php.txt

    實(shí)戰(zhàn)中可以上傳rar,owf等文件進(jìn)行利用,如果上傳phpinfo.php.jpg,即使文件名中有.php,也會(huì)直接解析為jpg。因?yàn)锳pache認(rèn)識(shí).jpg,停止繼續(xù)向左識(shí)別。

    1.2、AddHandler導(dǎo)致的解析漏洞

    漏洞介紹及成因

    如果運(yùn)維人員給.php后綴增加了處理器:

    AddHandler application/x-httpd-php .php

    那么,在有多個(gè)后綴的情況下,只要一個(gè)文件名中含有.php后綴,即被識(shí)別成PHP文件,沒必要是最后一個(gè)后綴。 利用這個(gè)特性,將會(huì)造成一個(gè)可以繞過上傳白名單的解析漏洞。

    漏洞復(fù)現(xiàn)

    即使最右邊的文件格式是在mime.types文件內(nèi),只要文件名中出現(xiàn).php,就直接被解析為php。

    修復(fù)建議

    將AddHandler application/x-httpd-php .php的配置文件刪除。

    1.3、Apache HTTPD 換行解析漏洞

    漏洞介紹及成因

    影響范圍:2.4.0~2.4.29版本

    環(huán)境:phpstudy2014 Apache + PHP5.4n
    此漏洞形成的根本原因,在于,正則表達(dá)式中, 正則表達(dá)式中,達(dá)不僅匹配字符串結(jié)尾位置,也可以匹配\n 或 \r
    在解析PHP時(shí),1.php\x0A將被按照PHP后綴進(jìn)行解析,導(dǎo)致繞過一些服務(wù)器的安全策略。

    漏洞復(fù)現(xiàn)

    <FilesMatch \.php$>SetHandler application/x-httpd-php </FilesMatch>

    測(cè)試代碼:

    <html><body><form action="" method="post" enctype="multipart/form-data"><input type="file" name="file" /><input type="text" name="name" /><input type="submit" value="上傳文件" /></form></body> </html><?php if(isset($_FILES['file'])) {$name = basename($_POST['name']);$ext = pathinfo($name,PATHINFO_EXTENSION);if(in_array($ext, ['php', 'php3', 'php4', 'php5', 'phtml', 'pht'])) {exit('bad file'); } echo "ok"; move_uploaded_file($_FILES['file']['tmp_name'], './' . $name); }?>

    點(diǎn)擊Go后,測(cè)試成功。

    限制:獲取文件名時(shí)不能用$_FILES[‘file’][‘name’],因?yàn)樗鼤?huì)自動(dòng)把換行去掉。

    修復(fù)建議

  • 升級(jí)到最新版本

  • 或?qū)⑸蟼鞯奈募孛麨闉闀r(shí)間戳+隨機(jī)數(shù)+.jpg的格式并禁用上傳文件目錄執(zhí)行腳本權(quán)限

  • 2、目錄遍歷

    漏洞介紹及成因

    由于配置錯(cuò)誤導(dǎo)致的目錄遍歷

    漏洞復(fù)現(xiàn)

    修復(fù)建議

    修改apache配置文件httpd.conf

    找到Options+Indexes+FollowSymLinks +ExecCGI并修改成 Options-Indexes+FollowSymLinks +ExecCGI 并保存;

    三、Nginx中間組件:

    Nginx 是一款 輕量級(jí)的 Web 服務(wù)器、 反向代理 服務(wù)器及 電子郵件(IMAP/POP3)代理服務(wù)器,并在一個(gè)BSD-like 協(xié)議下發(fā)行。其特點(diǎn)是占有內(nèi)存少, 并發(fā)能力強(qiáng),事實(shí)上nginx的并發(fā)能力確實(shí)在同類型的網(wǎng)頁(yè)服務(wù)器中表現(xiàn)較好

    1、文件解析

    漏洞介紹及成因

    對(duì)任意文件名,在后面添加/任意文件名.php的解析漏洞,比如原本文件名是test.jpg,可以添加test.jpg/x.php進(jìn)行解析攻擊。

    漏洞復(fù)現(xiàn)

    在網(wǎng)站根目錄下新建一個(gè)n.jpg的文件,在里面寫入<?php phpinfo();?>

    在瀏覽器中打開

    利用文件解析漏洞,輸入192.168.220.129/n.jpg/2.php,解析成功

    修復(fù)建議

    將php.ini文件中的cgi.fix_pathinfo的值設(shè)為0.這樣php在解析1.php/1.jpg這樣的目錄時(shí),只要1.jpg不存在就會(huì)顯示404;

    2、目錄遍歷

    漏洞簡(jiǎn)介及成因

    Nginx的目錄遍歷與Apache一樣,屬于配置方面的問題,錯(cuò)誤的配置可到導(dǎo)致目錄遍歷與源碼泄露

    當(dāng)Nginx配置文件中,autoindex 的值為on時(shí),將造成一個(gè)目錄遍歷漏洞。

    漏洞復(fù)現(xiàn)

    修復(fù)建議

    將autoindex 的值為置為off。

    3、CRLF注入

    漏洞簡(jiǎn)介及成因

    CRLF時(shí)“回車+換行”(\r\n)的簡(jiǎn)稱。

    HTTP Header與HTTP Body時(shí)用兩個(gè)CRLF分隔的,瀏覽器根據(jù)兩個(gè)CRLF來取出HTTP內(nèi)容并顯示出來。

    通過控制HTTP消息頭中的字符,注入一些惡意的換行,就能注入一些會(huì)話cookie或者h(yuǎn)tml代碼,由于Nginx配置不正確,導(dǎo)致注入的代碼會(huì)被執(zhí)行。

    漏洞復(fù)現(xiàn)

    訪問頁(yè)面,抓包

    請(qǐng)求加上/%0d%0a%0d%0a<img src=1 οnerrοr=alert(/xss/)>

    出現(xiàn)彈窗

    修復(fù)建議

    Nginx的配置文件/etc/nginx/conf.d/error1.conf修改為使用不解碼的url跳轉(zhuǎn)。

    4、目錄穿越

    漏洞簡(jiǎn)介及成因

    Nginx在配置別名(Alias)的時(shí)候,如果忘記加/,將造成一個(gè)目錄穿越漏洞。
    錯(cuò)誤的配置文件示例(原本的目的是為了讓用戶訪問到C:/WWW/home/目錄下的文件):

    漏洞復(fù)現(xiàn)

    location /files {autoindex on;alias c:/WWW/home/;}

    訪問:http://127.0.0.1/file../

    修復(fù)建議

    只需要保證location和alias的值都有后綴/或都沒有/這個(gè)后綴。

    四、Tomcat中間組件:

    Tomcat 服務(wù)器是一個(gè)免費(fèi)的開放源代碼的Web 應(yīng)用服務(wù)器,屬于輕量級(jí)應(yīng)用 服務(wù)器,在中小型系統(tǒng)和并發(fā)訪問用戶不是很多的場(chǎng)合下被普遍使用,是開發(fā)和調(diào)試JSP 程序的首選。對(duì)于一個(gè)初學(xué)者來說,可以這樣認(rèn)為,當(dāng)在一臺(tái)機(jī)器上配置好Apache 服務(wù)器,可利用它響應(yīng) HTML ( 標(biāo)準(zhǔn)通用標(biāo)記語言下的一個(gè)應(yīng)用)頁(yè)面的訪問請(qǐng)求。實(shí)際上Tomcat是Apache 服務(wù)器的擴(kuò)展,但運(yùn)行時(shí)它是獨(dú)立運(yùn)行的,所以當(dāng)運(yùn)行tomcat 時(shí),它實(shí)際上作為一個(gè)與Apache 獨(dú)立的進(jìn)程單獨(dú)運(yùn)行的。

    1、遠(yuǎn)程代碼執(zhí)行

    漏洞簡(jiǎn)介及成因

    Tomcat 運(yùn)行在Windows 主機(jī)上,且啟用了 HTTP PUT 請(qǐng)求方法,可通過構(gòu)造的攻擊請(qǐng)求向服務(wù)器上傳包含任意代碼的 JSP 文件,造成任意代碼執(zhí)行。

    影響版本: Apache Tomcat 7.0.0 – 7.0.81

    漏洞復(fù)現(xiàn)

    配置漏洞,開啟put方法可上傳文件功能。

    tomcat文件夾下的/conf/web.xml文件插入:

    <init-param><param-name>readonly</param-name>param-value>false</param-value> </init-param>

    重啟tomcat服務(wù)。

    訪問127.0.0.1:8080,burp抓包,send to Repeater,將請(qǐng)求方式改為PUT,創(chuàng)建一個(gè)122.jsp,并用%20轉(zhuǎn)義空格字符。123.jsp內(nèi)容為:

    <%Runtime.getRuntime().exec(request.getParameter("cmd"));%>

    返回201,說明創(chuàng)建成功。

    訪問127.0.0.1:8080/122.jsp?cmd=calc。彈出計(jì)算器。

    漏洞修復(fù)

    1)檢測(cè)當(dāng)前版本是否在影響范圍內(nèi),并禁用PUT方法。

    2)更新并升級(jí)至最新版。

    2、弱口令 && 后臺(tái)getshell漏洞

    漏洞簡(jiǎn)介及成因

    Tomcat 支持在后臺(tái)部署war文件,可以直接將webshell部署到web目錄下。

    若后臺(tái)管理頁(yè)面存在弱口令,則可以通過爆破獲取密碼。

    漏洞修復(fù)

    1)在系統(tǒng)上以低權(quán)限運(yùn)行Tomcat應(yīng)用程序。創(chuàng)建一個(gè)專門的 Tomcat服務(wù)用戶,該用戶只能擁有一組最小權(quán)限(例如不允許遠(yuǎn)程登錄)。

    2)增加對(duì)于本地和基于證書的身份驗(yàn)證,部署賬戶鎖定機(jī)制(對(duì)于集中式認(rèn)證,目錄服務(wù)也要做相應(yīng)配置)。在CATALINA_HOME/conf/web.xml文件設(shè)置鎖定機(jī)制和時(shí)間超時(shí)限制。

    3)以及針對(duì)manager-gui/manager-status/manager-script等目錄頁(yè)面設(shè)置最小權(quán)限訪問限制。

    4)后臺(tái)管理避免弱口令。

    五、jBoss中間組件:

    jBoss是一個(gè)基于J2EE的開發(fā)源代碼的應(yīng)用服務(wù)器。 JBoss代碼遵循LGPL許可,可以在任何商業(yè)應(yīng)用中免費(fèi)使用。JBoss是一個(gè)管理EJB的容器和服務(wù)器,支持EJB1.1、EJB 2.0和EJB3的規(guī)范。但JBoss核心服務(wù)不包括支持servlet/JSP的WEB容器,一般與Tomcat或Jetty綁定使用。

    1、反序列化漏洞

    漏洞介紹及成因

    Java序列化,簡(jiǎn)而言之就是把java對(duì)象轉(zhuǎn)化為字節(jié)序列的過程。而反序列話則是再把字節(jié)序列恢復(fù)為java對(duì)象的過程,然而就在這一轉(zhuǎn)一變得過程中,程序員的過濾不嚴(yán)格,就可以導(dǎo)致惡意構(gòu)造的代碼的實(shí)現(xiàn)。

    漏洞復(fù)現(xiàn)

    靶機(jī)啟動(dòng)jboss。

    攻擊機(jī)訪問靶機(jī)服務(wù),訪問url/invoker/readonly。

    返回500,說明頁(yè)面存在,此頁(yè)面有反序列化漏洞:

    可以使用burpsuite抓包進(jìn)行反序列化攻擊

    漏洞修復(fù)

    有效解決方案:升級(jí)到JBOSS AS7版本臨時(shí)解決方案:

    1)不需要http-invoker.sar 組件的用戶可直接刪除此組件;

    2)用于對(duì) httpinvoker 組件進(jìn)行訪問控制。

    2、war后門文件部署

    漏洞介紹及成因

    jBoss后臺(tái)管理頁(yè)面存在弱口令,通過爆破獲得賬號(hào)密碼。登陸后臺(tái)上傳包含后門的war包。

    3、JMX Console未授權(quán)訪問

    漏洞介紹及成因

    JMX Console默認(rèn)存在未授權(quán)訪問,直接點(diǎn)擊JBoss主頁(yè)中的JMX Console鏈接進(jìn)入JMX Console頁(yè)面

    漏洞修復(fù)

    1、增加密碼措施,防止未授權(quán)訪問。

    2、或刪除JMX Console,后重啟JBoss

    C:\jboss-6.1.0.Final\common\deploy\jmx-console.war

    六、WebLogic中間組件:

    WebLogic是美國(guó)Oracle公司出品的一個(gè)applicationserver,確切的說是一個(gè)基于JAVAEE架構(gòu)的中間件,WebLogic是用于開發(fā)、集成、部署和管理大型分布式Web應(yīng)用、網(wǎng)絡(luò)應(yīng)用和數(shù)據(jù)庫(kù)應(yīng)用的Java應(yīng)用服務(wù)器。將Java的動(dòng)態(tài)功能和Java Enterprise標(biāo)準(zhǔn)的安全性引入大型網(wǎng)絡(luò)應(yīng)用的開發(fā)、集成、部署和管理之中。

    1、反序列化漏洞

    漏洞簡(jiǎn)介及成因

    Java序列化,簡(jiǎn)而言之就是把java對(duì)象轉(zhuǎn)化為字節(jié)序列的過程。而反序列話則是再把字節(jié)序列恢復(fù)為java對(duì)象的過程,然而就在這一轉(zhuǎn)一變得過程中,程序員的過濾不嚴(yán)格,就可以導(dǎo)致惡意構(gòu)造的代碼的實(shí)現(xiàn)。

    漏洞復(fù)現(xiàn)

    使用vulhub實(shí)驗(yàn)環(huán)境,啟動(dòng)實(shí)驗(yàn)環(huán)境,訪問靶機(jī),抓包,修改數(shù)據(jù)包。

    Kali啟動(dòng)監(jiān)聽。

    發(fā)送數(shù)據(jù)包成功后,拿到shell。

    漏洞修復(fù)

    1)升級(jí)Oracle 10月份補(bǔ)丁。

    2)對(duì)訪問wls-wsat的資源進(jìn)行訪問控制。

    2、SSRF

    漏洞簡(jiǎn)介及成因

    Weblogic 中存在一個(gè)SSRF漏洞,利用該漏洞可以發(fā)送任意HTTP請(qǐng)求,進(jìn)而攻擊內(nèi)網(wǎng)中redis、fastcgi等脆弱組件。

    漏洞復(fù)現(xiàn)

    使用vulhub實(shí)驗(yàn)環(huán)境,啟動(dòng)環(huán)境。

    訪問http://192.168.139.129:7001/uddiexplorer/SearchPublicRegistries.jsp。

    用burp抓包,修改請(qǐng)求。

    啟動(dòng)nc監(jiān)聽端口。拿到shell。

    漏洞修復(fù)

    方法一:

    以修復(fù)的直接方法是將SearchPublicRegistries.jsp直接刪除就好了;

    方法二:

    1)刪除uddiexplorer文件夾

    2)限制uddiexplorer應(yīng)用只能內(nèi)網(wǎng)訪問

    方法三:(常用)

    Weblogic服務(wù)端請(qǐng)求偽造漏洞出現(xiàn)在uddi組件(所以安裝Weblogic時(shí)如果沒有選擇uddi組件那么就不會(huì)有該漏洞),更準(zhǔn)確地說是uudi包實(shí)現(xiàn)包uddiexplorer.war下的SearchPublicRegistries.jsp。方法二采用的是改后輟的方式,修復(fù)步驟如下:

    1)將weblogic安裝目錄下的wlserver_10.3/server/lib/uddiexplorer.war做好備份

    2)將weblogic安裝目錄下的server/lib/uddiexplorer.war下載

    3)用winrar等工具打開uddiexplorer.war

    4)將其下的SearchPublicRegistries.jsp重命名為SearchPublicRegistries.jspx

    5)保存后上傳回服務(wù)端替換原先的uddiexplorer.war

    6)對(duì)于多臺(tái)主機(jī)組成的集群,針對(duì)每臺(tái)主機(jī)都要做這樣的操作

    7)由于每個(gè)server的tmp目錄下都有緩存所以修改后要徹底重啟weblogic(即停應(yīng)用–停server–停控制臺(tái)–啟控制臺(tái)–啟server–啟應(yīng)用)

    3、任意文件上傳

    漏洞簡(jiǎn)介及成因

    通過訪問config.do配置頁(yè)面,先更改Work Home工作目錄,用有效的已部署的Web應(yīng)用目錄替換默認(rèn)的存儲(chǔ)JKS Keystores文件的目錄,之后使用”添加Keystore設(shè)置”的功能,可上傳惡意的JSP腳本文件。

    漏洞復(fù)現(xiàn)

    訪問http://192.168.139.129:7001/ws_utc/config.do。

    設(shè)置Work Home Dir為/u01/oracle/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_internal/com.oracle.webservices.wls.ws-testclient-app-wls/4mcj4y/war/css。

    然后點(diǎn)擊安全 -> 增加,然后上傳 webshell ,這里我上傳一個(gè) jsp 大馬。

    上傳后,查看返回的數(shù)據(jù)包,其中有時(shí)間戳:

    可以看到時(shí)間戳為1543145154632。

    訪問http://192.168.139.129:7001/ws_utc/css/config/keystore/1543145154632_lele.jsp。

    可以進(jìn)行文件管理、文件上傳、系統(tǒng)命令執(zhí)行等。

    漏洞修復(fù)

    方案1:使用Oracle官方通告中的補(bǔ)丁鏈接

    方案2:

    1)進(jìn)入Weblogic Server管理控制臺(tái);

    2)domain設(shè)置中,啟用”生產(chǎn)模式”。

    4、弱口令&& 后臺(tái)getshell

    漏洞簡(jiǎn)介及成因

    由于WebLogic后臺(tái)存在弱口令,可直接登陸后臺(tái)上傳包含后門的war包。

    漏洞修復(fù)

    防火墻設(shè)置端口過濾,也可以設(shè)置只允許訪問后臺(tái)的IP列表,避免后臺(tái)弱口令。

    七、其它中間件相關(guān)漏洞

    1、FastCGI未授權(quán)訪問、任意命令執(zhí)行

    漏洞簡(jiǎn)介及成因

    服務(wù)端使用fastcgi協(xié)議并對(duì)外網(wǎng)開放9000端口,可以構(gòu)造fastcgi協(xié)議包內(nèi)容,實(shí)現(xiàn)未授權(quán)訪問服務(wù)端.php文件以及執(zhí)行任意命令。

    漏洞復(fù)現(xiàn)

    使用vulhub實(shí)驗(yàn)環(huán)境,啟動(dòng)實(shí)驗(yàn)環(huán)境。

    在攻擊機(jī)使用命令python fpm.py 192.168.237.136 /etc/passwd,觀察返回結(jié)果。

    由于訪問非*.PHP文件,所以返回結(jié)果403。

    使用命令執(zhí)行一個(gè)默認(rèn)存在的 php 文件。

    python fpm.py 192.168.237.136 /usr/local/lib/php/PEAR.php

    利用命令進(jìn)行任意命令執(zhí)行復(fù)現(xiàn)。

    python fpm.py 192.168.139.129 /usr/local/lib/php/PEAR.php-c '<?php echo `pwd`; ?>'

    漏洞修復(fù)

    更改默認(rèn)端口

    2、PHPCGI遠(yuǎn)程代碼執(zhí)行

    漏洞簡(jiǎn)介及成因

    在apache調(diào)用php解釋器解釋.php文件時(shí),會(huì)將url參數(shù)傳我給php解釋器,如果在url后加傳命令行開關(guān)(例如-s、-d 、-c或-dauto_prepend_file%3d/etc/passwd±n)等參數(shù)時(shí),會(huì)導(dǎo)致源代碼泄露和任意代碼執(zhí)行。

    此漏洞影響php-5.3.12以前的版本,mod方式、fpm方式不受影響。

    漏洞復(fù)現(xiàn)

    使用vulhub實(shí)驗(yàn)環(huán)境,啟動(dòng)環(huán)境。

    訪問http://192.168.139.129:8080/index.php。

    抓包,修改包。

    漏洞修復(fù)

    三種方法:

    1)升級(jí)php版本;(php-5.3.12以上版本);

    2)在apache上做文章,開啟url過濾,把危險(xiǎn)的命令行參數(shù)給過濾掉,由于這種方法修補(bǔ)比較簡(jiǎn)單,采用比較多吧。

    具體做法:

    修改http.conf文件,找到增加以下三行

    RewriteEngine on

    RewriteCond %{QUERY_STRING} (%2d|-)[=]+$ [NC]

    RewriteRule ^(.*) $1? [L]

    重啟一下apache即可,但是要考慮到,相當(dāng)于每次request就要進(jìn)行一次url過濾,如果訪問量大的話,可能會(huì)增加apache的負(fù)擔(dān)。

    end_file%3d/etc/passwd±n)等參數(shù)時(shí),會(huì)導(dǎo)致源代碼泄露和任意代碼執(zhí)行。

    此漏洞影響php-5.3.12以前的版本,mod方式、fpm方式不受影響。

    總結(jié)

    以上是生活随笔為你收集整理的Web中间件漏洞总结的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。