主頁 > 知識(shí)庫 > JSP漏洞大觀

JSP漏洞大觀

熱門標(biāo)簽:電銷外呼系統(tǒng) 排行榜 外呼系統(tǒng)啥意思 珠海銷售外呼系統(tǒng)運(yùn)營商 長春回?fù)芡夂粝到y(tǒng)廠家 山東智能云外呼管理系統(tǒng) 地圖標(biāo)注制作道路 地圖標(biāo)注創(chuàng)業(yè)項(xiàng)目入駐 廣州三五防封電銷卡 四川電信外呼系統(tǒng)靠譜嗎
綜述:服務(wù)器漏洞是安全問題的起源,黑客對(duì)網(wǎng)站的攻擊也大多是從查找對(duì)方的漏洞開始的。所以只有了解自身的漏洞,網(wǎng)站管理人員才能采取相應(yīng)的對(duì)策,阻止外來的攻擊。下面介紹一下一些服務(wù)器(包括Web服務(wù)器和JSP服務(wù)器)的常見漏洞。

  Apache泄露重寫的任意文件漏洞是怎么回事?

  在Apache1.2以及以后的版本中存在一個(gè)mod_rewrite模塊,它用來指定特殊URLS在網(wǎng)絡(luò)服務(wù)器文件系統(tǒng)上所映射的絕對(duì)路徑。如果傳送一個(gè)包含正確表達(dá)參數(shù)的重寫規(guī)則,攻擊者就可以查看目標(biāo)主機(jī)上的任意文件。

  下面舉例說明重寫規(guī)則指令(其中第一行只有是包含漏洞的):

  RewriteRule /test/(.*) /usr/local/data/test-stuff/$1
  RewriteRule /more-icons/(.*) /icons/$1
  RewriteRule /go/(.*) http://www.apacheweek.com/$1

  受影響的系統(tǒng):

  1)Apache 1.3.12
  2)Apache 1.3.11win32
  3)Apache 1.2.x

  不受影響系統(tǒng):Apache 1.3.13

  怎樣解決在HTTP請(qǐng)求中添加特殊字符導(dǎo)致暴露JSP源代碼文件?
  Unify eWave ServletExec 是一個(gè) Java/Java Servlet 引擎插件,主要用于 WEB 服務(wù)器,例如:Microsoft IIS, Apache, Netscape Enterprise 服務(wù)器等等。
  當(dāng)一個(gè) HTTP 請(qǐng)求中添加下列字符之一,ServletExec 將返回 JSP 源代碼文件。
.

  %2E
  +
  %2B
  \
  %5C
  %20
  %00  

  成功的利用該漏洞將導(dǎo)致泄露指定的JSP文件的源代碼,例如:使用下面的任意一個(gè)URL請(qǐng)求將輸出指定的JSP文件的源代碼:

  1)http://target/directory/jsp/file.jsp.
  2)http://target/directory/jsp/file.jsp%2E
  3)http://target/directory/jsp/file.jsp+
  4)http://target/directory/jsp/file.jsp%2B
  5)http://target/directory/jsp/file.jsp\
  6)http://target/directory/jsp/file.jsp%5C
  7)http://target/directory/jsp/file.jsp%20
  8)http://target/directory/jsp/file.jsp%00

  受影響的系統(tǒng):

  1)Unify eWave ServletExec 3.0c
  2)Sun Solaris 8.0
  3)Microsoft Windows 98
  4)Microsoft Windows NT 4.0
  5)Microsoft Windows NT 2000
  6)Linux kernel 2.3.x
  7)IBM AIX 4.3.2
  8)HP HP-UX 11.4

  解決方案:

  如果沒有使用任何靜態(tài)頁面或圖像,可以配置一個(gè)默認(rèn)的 servlet,并將"/"映射到這個(gè)默認(rèn)的 servlet。這樣當(dāng)收到一個(gè)未映射到某個(gè) servlet 的 URL 時(shí),這個(gè)默認(rèn)的servlet 就會(huì)被調(diào)用。在這種情況下,默認(rèn)的 servlet 可以僅僅返回"未找到文件"。如果使用了靜態(tài)的頁面或圖像,仍然可以作這樣的配置,但是需要讓這個(gè)默認(rèn)的servlet 處理對(duì)合法的靜態(tài)頁面和圖像的請(qǐng)求。
  另一種可能就是將*.jsp+、*.jsp.和*.jsp\等映射到一個(gè) servlet,而該servlet只是返回"未找到文件"。對(duì)于*.jsp%00和*.jsp%20這樣的情況,映射應(yīng)以未經(jīng)編碼的形式輸入。例如,對(duì)于*.jsp%20的映射應(yīng)輸入"*.jsp "。注意%20被轉(zhuǎn)換成一個(gè)空格字符。

  Tomcat有哪些漏洞?

  Tomcat 3.1 存在暴露網(wǎng)站路徑問題

  Tomcat 3.1 是在 Apache 軟件環(huán)境下開發(fā)的一個(gè)支持 JSP 1.1 和 Servlets 2.2 的軟件。它存在一個(gè)安全問題當(dāng)發(fā)送一個(gè)不存在的 jsp 請(qǐng)求時(shí)會(huì)暴露網(wǎng)站上網(wǎng)頁的全路徑。

  舉例:
  http://narco.guerrilla.sucks.co:8080/anything.jsp

  結(jié)果顯示:
Error: 404
Location: /anything.jsp
JSP file "/appsrv2/jakarta-tomcat/webapps/ROOT/anything.jsp" not found

  解決方案:升級(jí)到新版本

  Tomcat 暴露JSP文件內(nèi)容

  Java Server Pages (JSP)類型的文件是以'.jsp'擴(kuò)展名在Tomcat 上注冊(cè),Tomcat 是文件名大小寫敏感的,'.jsp'和'.JSP'是不同類型的文件擴(kuò)展名。如果提交有'.JSP'的鏈接給Tomcat,而Tomcat找不到'.JSP'就會(huì)以默認(rèn)的'.text'文件類型來響應(yīng)請(qǐng)求。因?yàn)樵贜T系統(tǒng)中大小寫文件名是非敏感的,所以被請(qǐng)求的文件會(huì)以文本的形式送出。

  如果在UNIX服務(wù)器上會(huì)出現(xiàn)"file not found"的錯(cuò)誤信息。

  如何在windows下對(duì)Tomcat實(shí)施代碼保護(hù)

  Tomcat的一些版本有泄露源代碼的漏洞,如果在瀏覽器中調(diào)用JSP頁面時(shí)將該文件的后綴改成大寫,這個(gè)JSP文件的源代碼將完全輸出到瀏覽器中(也許瀏覽器窗口中什么都沒有,這時(shí)你只需查看HTML源文件就可以發(fā)現(xiàn))。如此一來,網(wǎng)站的源代碼是不是都會(huì)暴露在互聯(lián)網(wǎng)上那?
  不用擔(dān)心,解決方法很簡單,把各種后綴的組合全部寫到Tomcat_Home\conf \web.xml里就可以了,這樣Tomcat會(huì)將不同后綴名的JSP分開對(duì)待,就不會(huì)泄露代碼了。


    jsp
    *.jsp


    jsP
    *.jsP


   ?lt;servlet-name>jSp
    *.jSp


    jSP
    *.jSP


    Jsp
    *.Jsp


    JsP
    *.JsP


    JSp
    *.JSp


    JSP
    *.JSP


  Allair Jrun漏洞有哪些漏洞?

  Allair JRUN 非法讀取 WEB-INF 漏洞
  在Allaire 的 JRUN 服務(wù)器 2.3版本中存在一個(gè)嚴(yán)重的安全漏洞。它允許一個(gè)攻擊者在 JRun 3.0 服務(wù)器中查看 WEB-INF 目錄。
  如果用戶在提交 URL 請(qǐng)求時(shí)在,通過附加一個(gè)"/"使該 URL 成為畸形的 URL,這時(shí) WEB-INF 下的所有子目錄將會(huì)暴露出來。攻擊者巧妙的利用該漏洞將能夠遠(yuǎn)程獲得目標(biāo)主機(jī)系統(tǒng)中 WEB-INF 目錄下的所有文件的讀取權(quán)限。
  例如使用下面這個(gè) URL 將會(huì)暴露 WEB-INF 下的所有文件:
http://site.running.jrun:8100//WEB-INF/

  受影響的系統(tǒng):Allaire JRun 3.0

  解決方案:下載并安裝補(bǔ)?。?

Allaire patch jr233p_ASB00_28_29
http://download.allaire.com/jrun/jr233p_ASB00_28_29.zip
Windows 95/98/NT/2000 and Windows NT Alpha
Allaire patch jr233p_ASB00_28_29tar
http://download.allaire.com/jrun/jr233p_ASB00_28_29.tar.gz
UNIX/Linux patch - GNU gzip/tar  

  Allaire JRUN 2.3 查看任意文件漏洞

  Allaire 的 JRUN 服務(wù)器 2.3上存在多重顯示代碼漏洞。該漏洞允許攻擊者在 WEB 服務(wù)器上查看根目錄下的任意文件的源代碼。
  JRun 2.3 使用 Java Servlets 解析各種各樣類型的頁面(例如:HTML, JSP等等)?;趓ules.properties 和 servlets.properties 的文件設(shè)置,可能利用URL前綴"/servlet/"調(diào)用任何servlet。
  它可能使用 Jrun 的 SSIFilter servlet 在目標(biāo)系統(tǒng)上檢索任意的文件。下列 2 個(gè)例子顯示出能被用來檢索任意的文件的 URLs :

http://jrun:8000/servlet/com.livesoftware.jrun.plugins.ssi.SSIFilter/../../t est.jsp
http://jrun:8000/servlet/com.livesoftware.jrun.plugins.ssi.SSIFilter/../../../../../../../boot.ini
http://jrun:8000/servlet/com.livesoftware.jrun.plugins.ssi.SSIFilter/../../. ./../../../../winnt/repair/sam
http://jrun:8000/servlet/ssifilter/../../test.jsp
http://jrun:8000/servlet/ssifilter/../../../../../../../boot.ini
http://jrun:8000/servlet/ssifilter/../../../../../../../winnt/repair/sam._  

  注意:假設(shè)JRun在主機(jī)" jrun "上運(yùn)行,端口8000。

  受影響的系統(tǒng):Allaire JRun 2.3.x

  解決方案:下載并安裝補(bǔ)?。?

Allaire patch jr233p_ASB00_28_29
http://download.allaire.com/jrun/jr233p_ASB00_28_29.zip
Windows 95/98/NT/2000 and Windows NT Alpha
Allaire patch jr233p_ASB00_28_29tar
http://download.allaire.com/jrun/jr233p_ASB00_28_29.tar.gz
UNIX/Linux patch - GNU gzip/tar

  Allaire JRUN 2.3遠(yuǎn)程執(zhí)行任意命令漏洞

  Allaire 的 JRUN 服務(wù)器 2.3上存在一個(gè)安全漏洞,允許遠(yuǎn)程用戶把在 WEB 服務(wù)器上的任意文件作為JSP代碼編譯/執(zhí)行。   如果URL請(qǐng)求的目標(biāo)文件使用了前綴"/servlet/",則JSP解釋執(zhí)行功能被激活。這時(shí)在用戶請(qǐng)求的目標(biāo)文件路徑中使用"../",就有可能訪問到 WEB 服務(wù)器上根目錄以外的文件。在目標(biāo)主機(jī)上利用該漏洞請(qǐng)求用戶輸入產(chǎn)生的一個(gè)文件,將嚴(yán)重威脅到目標(biāo)主機(jī)系統(tǒng)的安全。

  例如:

http://jrun:8000/servlet/com.livesoftware.jrun.plugins.jsp.JSP/../../path/to /temp.txt
http://jrun:8000/servlet/jsp/../../path/to/temp.txt

  受影響的系統(tǒng):Allaire JRun 2.3.x

  解決方案:下載并安裝補(bǔ)?。?

Allaire patch jr233p_ASB00_28_29
http://download.allaire.com/jrun/jr233p_ASB00_28_29.zip
Windows 95/98/NT/2000 and Windows NT Alpha
Allaire patch jr233p_ASB00_28_29tar
http://download.allaire.com/jrun/jr233p_ASB00_28_29.tar.gz
UNIX/Linux patch - GNU gzip/tar  

  JRun 2.3.x 范例文件暴露站點(diǎn)安全信息

  JRun 2.3.x 在 JRUN_HOME/servlets 目錄下有一些 servlet 范例文件,這個(gè)目錄是 JRun 2.3.x 用于加載和執(zhí)行 servlets 文件。所有擴(kuò)展名為 ".Java" 或 "class" 的文件必須被刪除,這是因?yàn)檫@些文件會(huì)暴露站點(diǎn)的安全信息。例如:
http://www.xxx.xxx/servlet/SessionServlet 會(huì)暴露當(dāng)前服務(wù)器保持的HTTP連接信息。JRUN_HOME/jsm-default/services/jws/htdocs 目錄下的內(nèi)容也應(yīng)被刪除掉。這個(gè)目錄保存有演示服務(wù)器功能的 '.jsp' 文件,其中一些文件牽涉到訪問服務(wù)器文件系統(tǒng)和暴露服務(wù)器設(shè)置的問題。例如對(duì)文件 "viewsource.jsp" 的路徑檢查是默認(rèn)關(guān)閉的,它可被用于訪問服務(wù)器文件系統(tǒng)。

  解決方案:

  1)安裝 2.3.3 service pack
  2)從服務(wù)器上刪除所有的說明文檔、演示編碼、范例和教材,包括安裝 JRun   2.3.x 時(shí)存放于 JRUN_HOME/servlets 目錄和JRUN_HOME/jsm-default/services/jws/htdocs 目錄里的文檔。
  相關(guān)站點(diǎn):http://www.allaire.com/

  IBM WebSphere Application Server有哪些漏洞?

  1、IBM WebSphere Application Server 3.0.2 存在暴露源代碼漏洞
IBM WebSphere Application Server 允許攻擊者查看 Web server 根目錄以上的所有文件。IBM WebSphere 使用 Java Servlets 處理多種頁面類型的分析(如 HTML, JSP, JHTML, 等等)。In addition 不同的 servlets 對(duì)不同的頁面進(jìn)行處理,如果一個(gè)請(qǐng)求的文件是未進(jìn)行注冊(cè)管理的,WebSphere 會(huì)使用一個(gè)默認(rèn)的 servlet 作調(diào)用。如果文件路徑以"/servlet/file/"作開頭這個(gè)默認(rèn)的 servlet 會(huì)被調(diào)用這個(gè)請(qǐng)求的文件會(huì)未被分析或編譯就顯示出來。

  受影響系統(tǒng):IBM WebSphere 3.0.2 的所有版本

  舉例:

  如果一個(gè)請(qǐng)求文件的 URL 為 "login.jsp"::  http://site.running.websphere/login.jsp那么訪問  http://site.running.websphere/servlet/file/login.jsp將看到這個(gè)文件的源代碼。
  解決方案:下載并安裝補(bǔ)丁
http://www-4.ibm.com/software/webservers/appserv/efix.html
  相關(guān)站點(diǎn):http://www-4.ibm.com/software/webservers/appserv/
  IBM WebSphere Application Server 暴露JSP文件內(nèi)容
  Java Server Pages (JSP)類型的文件是以'.jsp'擴(kuò)展名在WebSphere Application Serve 上注冊(cè),WebSphere 是文件名大小寫敏感的,'.jsp'和'.JSP'是不同類型的文件擴(kuò)展名。如果提交有'.JSP'的鏈接給WebSphere,而WebSphere找不到'.JSP'就會(huì)以默認(rèn)的'.text'文件類型來響應(yīng)請(qǐng)求。因?yàn)樵贜T系統(tǒng)中大小寫文件名是非敏感的,所以被請(qǐng)求的文件會(huì)以文本的形式送出。

  如果在UNIX服務(wù)器上會(huì)出現(xiàn)"file not found"的錯(cuò)誤信息。

  解決方案:點(diǎn)擊此處下載補(bǔ)丁
  相關(guān)站點(diǎn):http://www-4.ibm.com/software/webservers/appserv/efix.html
  BEA WebLogic有哪些暴露源代碼漏洞?

  受影響版本:

  所有系統(tǒng)上的

  BEA WebLogic Enterprise 5.1.x
  BEA WebLogic Server and Express 5.1.x
  BEA WebLogic Server and Express 4.5.x
  BEA WebLogic Server and Express 4.0.x
  BEA WebLogic Server and Express 3.1.8  

  這個(gè)漏洞使攻擊者能讀取 Web 目錄下所有文件的源代碼。

  WebLogic 依賴四個(gè)主要 Java Servlets to 服務(wù)不同類型的文件。這些 servlets 是:

  1)FileServlet - for 簡單 HTML 頁面
  2)SSIServlet - for Server Side Includes 頁面
  3)PageCompileServlet - for JHTML 頁面
  4)JSPServlet - for Java Server 頁面

  看著weblogic.properties 文件, 這兒是各個(gè) servlets 的注冊(cè)值:

  1)weblogic.httpd.register.file=weblogic.servlet.FileServlet
  2)weblogic.httpd.register.*.shtml=weblogic.servlet.ServerSideIncludeServlet
  3)weblogic.httpd.register.*.jhtml=weblogic.servlet.jhtmlc.PageCompileServlet
  4)weblogic.httpd.register.*.jsp=weblogic.servlet.JSPServlet
更多的 weblogic.properties 文件, 如果一個(gè)請(qǐng)求文件是沒有注冊(cè)管理的,那么就會(huì)調(diào)用一個(gè)默認(rèn)的 servlet 。以下是展示默認(rèn)的 servlet 是如何注冊(cè)的。

  # Default servlet registration
  # ------------------------------------------------
  # Virtual name of the default servlet if no matching servlet
  # is found weblogic.httpd.defaultServlet=file  

  因此如果 URL 中的文件路徑開頭為 "/file/" , 將會(huì)引致 WebLogic 調(diào)用默認(rèn)的 servlet, 那將會(huì)使網(wǎng)頁未加分析和編譯而直接顯示。

  論證:

  只要在想看的文件原來的 URL 路徑之前加入 "/file/" 就會(huì)讓文件未經(jīng)分析和編譯,直接暴露源代碼。如:http://site.running.weblogic/login.jsp ,那么只要訪問 http://site.running.weblogic/file/login.jsp 就會(huì)在 WEB 瀏覽器里看到文件的內(nèi)容。

  以下是使用方法:

  1. 通過強(qiáng)制使用 SSIServlet 查看未分析的頁面 :
  服務(wù)器站點(diǎn)通過 WebLogic 中的 SSIServlet 處理頁面,它在weblogic.properties 文件中注冊(cè)以下信息:weblogic.httpd.register.*.shtml= weblogic.servlet.ServerSideIncludeServlet

  通過 URL 使用 SSIServlet 自動(dòng)處理通配符 (*) 。因此 如果文件路徑開頭為 /*.shtml/,將強(qiáng)制文件由 SSIServlet 處理。如果使用其它文件類型如 .jsp 和 .jhtml, 就能查看未分析的 jsp 和 jhtml 代碼。舉例:http://www.xxx.com/*.shtml/login.jsp

  2. 通過強(qiáng)制使用 FileServlet 查看未分析的頁面 :
  WebLogic 使用 FileServlet 配置 ConsoleHelp servlet ,在weblogic.properties 文件的以下內(nèi)容可得知:

# For Console help. Do not modify.
weblogic.httpd.register.ConsoleHelp= weblogic.servlet.FileServlet
weblogic.httpd.initArgs.ConsoleHelp=\defaultFilename=/weblogic/admin/help/NoContent.html
weblogic.allow.execute.weblogic.servlet.ConsoleHelp=everyone  

  因此如果文件路徑以 /ConsoleHelp/ 開頭將導(dǎo)致 WebLogic 使用 FileServlet,使未分析或編譯的文件作頁面顯示出來,舉例:http://www.xxx.com/ConsoleHelp/login.jsp

  解決方案:
  不要使用示例中的設(shè)置方法設(shè)置 FileServlet 。這可能會(huì)讓你的 JSP/JHTML 文件的源代碼暴露出來。請(qǐng)查看在線文檔:
  http://www.weblogic.com/docs51/admindocs/http.html#file

  示例的 registrations 如下:
  weblogic.httpd.register.file=weblogic.servlet.FileServlet
  weblogic.httpd.initArgs.file=defaultFilename=index.html
  weblogic.httpd.defaultServlet=file

  有兩種方法可以避免這個(gè)問題:

 ?。?)注冊(cè)那些文件 servlet 使用隨機(jī)用戶名,加大猜測(cè)難度。例如使用象這樣注冊(cè)文件 servlet 為 12foo34:
  weblogic.httpd.register.12foo34=weblogic.servlet.FileServlet
  weblogic.httpd.initArgs.12foo34=defaultFilename=index.html
  weblogic.httpd.defaultServlet=12foo34

 ?。?)注冊(cè)文件 servlet 使用 wild cards 聲明你將使用所有這些文件擴(kuò)展名作服務(wù)。舉例注冊(cè)文件 servlet 為 .html 文件服務(wù):
  weblogic.httpd.register.*.html=weblogic.servlet.FileServlet
  weblogic.httpd.initArgs.*.html=defaultFilename=index.html
  weblogic.httpd.defaultServlet=*.html

  使用上面的方法重復(fù)加入以下類型的文件 *.gif, *.jpg, *.pdf, *.txt, etc.
  注意:這些信息是備有證明在 BEA WebLogic Server and Express 說明檔的:http://www.weblogic.com/docs51/admindocs/lockdown.html
  另:請(qǐng)留意新版本并升級(jí)吧。

標(biāo)簽:北海 肇慶 潮州 保定 玉樹 吳忠 廣元 紹興

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《JSP漏洞大觀》,本文關(guān)鍵詞  JSP,漏洞,大觀,JSP,漏洞,大觀,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《JSP漏洞大觀》相關(guān)的同類信息!
  • 本頁收集關(guān)于JSP漏洞大觀的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章