中间件JBoss是什么?JBoss与Tomcat的区别

Posted 逆流°只是风景-bjhxcc

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了中间件JBoss是什么?JBoss与Tomcat的区别相关的知识,希望对你有一定的参考价值。

JBoss是一套开源的企业级Java中间件系统,用于实现基于SOA的企业应用和服务,基于J2EE的开放源代码的应用服务器。JBoss代码遵循LGPL许可,可以在任何商业应用中免费使用。JBoss是一个管理EJB的容器和服务器,支持EJB 1.1、EJB 2.0和EJB3的规范。但JBoss核心服务不包括支持servlet/JSP的WEB容器,一般与Tomcat或Jetty绑定使用。

是一个基于J2EE的开放源代码的应用服务器。JBoss代码遵循LGPL许可,可以在任何商业应用中免费使用。JBoss是一个管理EJB的容器和服务器,支持EJB 1.1、EJB 2.0和EJB3的规范。但JBoss核心服务不包括支持servlet/JSP的WEB容器,一般与Tomcat或Jetty绑定使用。

在J2EE应用服务器领域,JBoss是发展最为迅速的应用服务器。由于JBoss遵循商业友好的LGPL授权分发,并且由开源社区开发,这使得JBoss广为流行。

另外,JBoss应用服务器还具有许多优秀的特质。

其一,将具有革命性的JMX微内核服务作为其总线结构;

其二,本身就是面向服务架构(Service-Oriented Architecture,SOA);

其三,具有统一的类装载器,从而能够实现应用的热部署和热卸载能力。

因此,高度模块化的和松耦合。JBoss应用服务器是健壮的、高质量的,而且还具有良好的性能。

近年来,JBoss与Tomcat已成为两大明星,JBoss在J2EE应用服务器领域已成为发展最为迅速的应用服务器。

在市场占有率和服务满意度上取得了巨大的成功,丝毫不逊色于其它的非开源竞争对手,如WebSphere、WebLogic、Application Server。JBoss Web的诸多优越性能,正是其广为流行的原因。

基于Tomcat内核,青胜于蓝

Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可。其运行时占用的系统资源小,扩展性好,且支持负载平衡与邮件服务等开发应用系统常用的功能。作为一个小型的轻量级应用服务器,Tomcat在中小型系统和并发访问用户不是很多的场合下被普遍使用,成为目前比较流行的Web 应用服务器。而JBoss Web采用业界最优的开源Java Web引擎,将Java社区中下载量最大,用户数最多,标准支持最完备的Tomcat内核作为其Servlet容器引擎,并加以审核和调优。单纯的Tomcat性能有限,在很多地方表现有欠缺,如活动连接支持、静态内容、大文件和HTTPS等。除了性能问题,Tomcat的另一大缺点是它是一个受限的集成平台,仅能运行Java应用程序。企业在使用时Tomcat,往往还需同时部署Apache Web Server以与之整合。此配置较为繁琐,且不能保证性能的优越性。

JBoss在Tomcat的基础上,对其进行本地化,将Tomcat 以内嵌的方式集成到 JBoss 中。JBoss Web通过使用APR和Tomcat本地技术的混合模型来解决Tomcat的诸多不足。混合技术模型从最新的操作系统技术里提供了最好的线程和事件处理。结果,JBoss Web达到了可扩展性,性能参数匹配甚至超越了本地Apache HTTP服务器或者IIS。譬如JBoss Web能够提供数据库连接池服务,不仅支持 JSP 等 Java 技术,同时还支持其他 Web 技术的集成,譬如 php、.NET 两大阵营。

标准化是减小技术依赖风险,保护投资最好的方式。JBoss Web率先支持全系列JEE Web标准,从根本上保证了应用“一次开发,到处运行”的特点,使应用成品能方便地在JBoss Web和其他Java Web服务器之间轻易迁移

集多功能于一身,性能卓越

作为Web 应用服务器中的明星产品,JBoss Web服务器集多种功能于一身。其关键功能包括:完全支持Java EE、高度的扩展性、快速的静态内容处理、群集、OpenSSL、URL重写和综合性。JBoss Web服务器具有原生特性和强大的可扩展性,可支持多种并非基于Java的服务器内容处理技术,可同时运行JSP, Servlet, Microsoft .NET , PHP 及 CGI,为其提供一个单一的、高性能的企业级部署平台。

JBoss与Tomcat 相比,JBoss Web在静态资源访问方面性能优越。JBoss Web支持两种组件模式——纯Java和Native I/O。在Native组件的支持下,动态运行不会受到任何影响,而静态资源的访问利用了操作系统本身提供的0拷贝传送,CPU消耗降低,响应时间缩短,吞吐率大大提高,混合的连接模式支持最大达到10000个并发客户端的同时访问,与Apache Web服务器相当。部署于高性能的操作系统,可利用JBoss Web对纯Java和Native I/O两种模式的支持,使得应用在开发时可随时跨平台敏捷迁移,而部署于高性能的操作系统相关的Native环境。由于JBoss Web较好地解决了静态资源的访问性能问题,可在解决方案中把它直接作为强大的LVS的分发对象,和RHEL负载均衡系统结合,形成理论上无限线性扩展的负载均衡场景。

OpenSSL是业界最为快速和安全的开源传输组件,可借助操作系统和硬件的特性实现高效的安全承载。JBoss Web集成了OpenSSL,可提供高效的安全传输服务,使得安全机制更上台阶。研究表明, JBoss Web中的SSL性能比单纯的Tomcat快四倍。

URL 重写功能可缩短URL,隐藏实际路径提高安全性,易于用户记忆和键入,及被搜索引擎收录。Tomcat 不具备URL重写功能,JBoss Web则可提供一个灵活的URL rewriting操作引擎,支持无限个规则数和规则条件。URL可被重写以支持遗留的URL错误处理,或应对服务器不时产生的其他问题。

JBoss Web既可单独运行,也可无缝嵌入JBoss应用服务器,成为JBoss中间件平台的一部分。不仅后台服务调用的性能将得以提升,也可利用以下JBoss平台的特性提升Web应用功能:

◆基于JGroups的多种集群方案的支持

◆基于Arjuna技术的JTA和JTS的事务处理支持

◆优化的线程池和连接池的支持

◆基于JMX 控制台的基本管理支持和JBoss On的高级管理维护支持

◆基于JBoss AOP技术的面向方面架构的支持

◆Hibernate服务组件的支持

专业团队支持

业界大多数开源产品在技术方面富于创新性,但在可持续性,产品生命周期规划,以及质量保证方面缺乏有效保障,为软件集成商和最终用户所诟病。红帽所力行的“专业化开源技术”则完美解决了这一问题。

来自开源社区的JBoss Web,在红帽专业化开源的锤炼下,在性能、扩展性、稳定性、安全性等方面,已成为一个达到企业级,甚至电信级标准的优秀产品。红帽不仅有专职的技术团队投入JBoss Web的开发,而且具备专门的QA团队为产品作质量保证。完善的集成测试和兼容性测试保证了JBoss Web自身的稳定性,并保证了它的后向兼容和其他JBoss产品协作良好的互操作性。JBoss与Tomcat在服务体系保障方面,JBoss 开拓了以产品专家提供的专家级支持服务作为开源软件强大后盾的软件生态模式。公司以及庞大的 JBoss 授权服务合作伙伴网络可为包括JBoss Web在内的整个JEMS 产品套件提供全面的支持服务。与Tomcat相比,JBoss Web 可提供迁移服务与现场专家服务,在迁移服务方面,专家指导应用可从Tomcat向JBoss Web迁移,省时省力。独特的服务订阅模式,全力保障软件生命周期,让企业高枕无忧。

中间件安全-jboss未授权访问

中间件是什么?

连接软件和应用的计算机软件,以便运行再一台或多台机器上的多个软件通过网络进行交互。中间件在操作系统、网络和数据库之上,应用软件的下层,总的作用是为处于自己上层的应用软件提供运行与开发的环境,帮助用户灵活、高效地开发和集成复杂的应用软件

Jboss是什么?

Jboss是一个基于J2EE的开放源代码的应用服务器


Jboss漏洞

jboss未授权访问(木马有问题)

未授权访问管理控制台,通过该漏洞,可以后台管理服务,可以通过脚本命令执行系统命令,如反弹shell,wget写webshell文件

可以通过未授权访问控制台
弱口令如下

admin/admin
admin/123456

利用应用部署war包,war里面可以放置jsp包,可以利用jsp包实现webshell写文件,反弹shell。


war制作过程

jar cvf shell.war shell.jsp

jsp为你准备的木马条件,war应用文件。

环境搭建

漏洞环境:vulhub上的CVE-2017-7504
进入到CVE-2017-7504目录执行docker-compose up -d


部署文件

找到上传位置
![image.png](https://img-blog.csdnimg.cn/img_convert/ba678e82daa0ceaf4e9bee29a6623e91.png#clientId=u7766b9dc-7916-4&from=paste&height=116&id=u75af537c&margin=[object Object]&name=image.png&originHeight=232&originWidth=762&originalType=binary&ratio=1&size=34591&status=done&style=none&taskId=u85546892-ed1b-41d7-a1c1-ba5502b0514&width=381)
上传war
用kali的远程服务器部署
在var/www/html目录放入war包
打开http服务:service apache2 start


访问:http:ip/部署的war前缀,如shell.war可写shell
![image.png](https://img-blog.csdnimg.cn/img_convert/16e2eb0a4f9fe4b213749d8eea86bc29.png#clientId=u7766b9dc-7916-4&from=paste&id=u70728940&margin=[object Object]&name=image.png&originHeight=188&originWidth=547&originalType=url&ratio=1&size=17075&status=done&style=none&taskId=u8d0c486e-aafa-40a7-ac51-64eb1538e3d)
看到了shell.jsp,可以拿出冰蝎
![image.png](https://img-blog.csdnimg.cn/img_convert/ba584159c1b0b106a6edeb03b21de099.png#clientId=u7766b9dc-7916-4&from=paste&id=udac8f6c7&margin=[object Object]&name=image.png&originHeight=155&originWidth=374&originalType=url&ratio=1&size=10051&status=done&style=none&taskId=u3ec125ed-b301-4b8d-807f-3b9524684e6)

JBOSS反序列化(待做)


防御

修改弱口令防止非法人员登录后台

以上是关于中间件JBoss是什么?JBoss与Tomcat的区别的主要内容,如果未能解决你的问题,请参考以下文章

Tomcat、WebLogic、Websphere、Jboss为啥被称作中间件?应怎么理解?

常见的中间件都有哪些?

JBoss Web和 Tomcat的区别

转 : JBoss Web和 Tomcat的区别

中间件安全-jboss未授权访问

中间件安全-jboss未授权访问