tomcat能够识别t3协议吗?weblogic上面部署项目使用的t3协议到了tomcat怎么修改通信协议?

tomcat能够识别t3协议吗?weblogic上面部署项目使用的t3协议到了tomcat怎么修改通信协议?,第1张

做个空包,部署到weblogic12上 然后把tomcat上的项目复制到weblogic部署的空包目录下,修改相关路径后,重启weblogic!

希望能帮到你!

weblogic12没使用过

weblogic10是bea\user_projects\domains\yourdomain\applications,应该差不了多少!

out.println(path)

%>

使用浏览器访问上述jsp文件,可以看到对应的类所在的jar包的完整路径。

通过上述方法查找“org.apache.commons.collections.map.TransformedMap”所在的jar包,示例如下。

不同版本的weblogic对Apache Commons Collections组件的使用

“org.apache.commons.collections.map.TransformedMap”所在的weblogic的jar包信息如下。

weblogic版本

TransformedMap类所在jar包路径

9.2

10.2.1(weblogic 10g)、10.3.4(weblogic 11g)

weblogic安装目录的modules/com.bea.core.apache.commons.collections_3.2.0.jar

12.1.3(weblogic 12c)

weblogic安装目录的wlserver/modules/features/weblogic.server.merged.jar

由于weblogic 9.2未包含TransformedMap类,因此无法触发反序列化漏洞,weblogic 10g、weblogic 11g、weblogic 12c均包含TransformedMap类,因此会触发反序列化漏洞。

0x04 漏洞修复

漏洞修复思路

weblogic的默认服务端口为7001,该端口提供了对HTTP(S)、SNMP、T3等协议的服务。由于weblogic的不同协议均使用一个端口,因此无法通过防火墙限制端口访问的方式防护JAVA反序列化漏洞。

在绝大多数应用的使用场景中,用户只需要在公网能够使用HTTP(S)协议访问web应用服务器即可。对于weblogic服务器,在绝大多数情况下,只需要能够在公网访问weblogic提供的HTTP(S)协议的服务即可,并不需要访问T3协议。

少数情况下,运维人员需要使用weblogic的T3协议:

在weblogic服务器本机执行weblogic的停止脚本;

通过WLST对weblogic进行脚本化配置;

编写使用T3协议通信的程序对weblogic进行状态监控及其他管理功能。

T3协议与HTTP协议均基于TCP协议,T3协议以"t3"开头,HTTP协议以“GET”、“POST”等开头,两者有明显的区别。

因此可以限定只允许特定服务器访问weblogic服务器的T3协议,能够修复weblogic的JAVA反序列化漏洞。即使今后发现了weblogic的其他类存在JAVA反序列化漏洞,也能够防护。

若将weblogic修复为发送T3协议时要求发送weblogic的用户名与密码,也能够修复weblogic的反序列化问题,但会带来密码如何在weblogic客户端存储的问题。

无效的漏洞修复方法

首先尝试将应用部署到非管理Server中,判断其服务端口是否也提供T3协议的服务。

AdminServer是weblogic默认的管理Server,添加一个名为“Server-test”的非管理Server后,weblogic的服务器信息如下。管理Server与非管理Server使用不同的监听端口,可将j2ee应用部署在非管理Server中,这样可以使weblogic控制台与应用使用不同的端口提供服务。

经测试,新增的非管理Server的监听端口也提供了T3协议的服务,也存在JAVA反序列化漏洞。因此这种修复方式对于JAVA反序列化漏洞无效,但可将weblogic控制台端口与应用端口分离,可以使用防火墙禁止通过公网访问weblogic的控制台。

websphere的服务端口

我们来看另一款使用广泛的企业级JAVA中间件:websphere的服务端口情况。从下图可以看到,websphere的应用默认HTTP服务端口为9080,应用默认HTTPS服务端口为9443,控制台默认HTTP服务端口为9060,控制台默认HTTPS服务端口为9043,接收JAVA序列化数据的端口为8880。因此只要通过防火墙使公网无法访问websphere服务器的8880端口,就可以防止通过公网利用websphere的JAVA反序列化漏洞。

网络设备对数据包的影响

对安全有一定要求的公司,在部署需要向公网用户提供服务的weblogic服务器时,可能选择下图的部署架构(内网中不同网络区域间的防火墙已省略)。

上述网络设备对数据包的影响如下。

IPS

IPS可以更新防护规则,可能有厂家的IPS已经设置了对JAVA反序列化漏洞的防护规则,会阻断恶意的JAVA序列化数据包。

防火墙

这里的防火墙指传统防火墙,不是指下一代防火墙,仅关心IP与端口,不关心数据包内容,无法阻断恶意的JAVA序列化数据包。

WAF

与IPS一样,能否阻断恶意的JAVA序列化数据包决定于防护规则。

web代理

仅对HTTP协议进行代理转发,不会对T3协议进行代理转发。

负载均衡

可以指定需要进行负载均衡的协议类型,安全起见应选择HTTP协议而不是TCP协议,只对HTTP协议进行转发,不对T3协议进行转发。

根据以上分析可以看出,web代理和负载均衡能够稳定保证只转发HTTP协议的数据,不会转发T3协议的数据,因此能够防护JAVA反序列化漏洞。

如果在公网访问weblogic服务器的路径中原本就部署了web代理或负载均衡,就能够防护从公网发起的JAVA反序列化漏洞攻击。这也是为什么较少发现大型公司的weblogic反序列化漏洞的原因,其网络架构决定了weblogic的JAVA反序列化漏洞无法在公网利用。

可行的漏洞修复方法

部署负载均衡设备

在weblogic服务器外层部署负载均衡设备,可以修复JAVA反序列化漏洞。

优点

缺点

对系统影响小,不需测试对现有系统功能的影响

需要购买设备;无法防护从内网发起的JAVA反序列化漏洞攻击

部署单独的web代理

在weblogic服务器外层部署单独的web代理,可以修复JAVA反序列化漏洞。

优点

缺点

同上

同上

在weblogic服务器部署web代理

不知道你用的weblogic6还是7

7的话,这里有配置的详细说明

1.安装Weblogic 7.0,WLS_HOME=c:\bea,则server将安装在WLS_HOME\weblogic700。

2.执行配置向导(Configuration Wizard),

1)Choose Domain Type And Name:

选择 WLS Domain.

2)Choose Server Type:

a.Single Server

b.Admin Server with Managed Server(s)

c.Admin Server with Cluster Managed Server(s)

d.Managed Server

说明:

a.单机版(试用于学习者使用)

b.类似于6.1版本的默认安装,是Managed Server和Admin Server集成在一起。(用于远端控制,其他的Server之用)

c.集群Server 和 Admin Server 集成在一起。(只有特大的系统才会用到)

d.单纯的Managed Server 。(只作业务,不做管理,本地不保存config.xml信息)

鉴于这里大部分人都是自学,所以我选择Single Server。

3)Choose Domain Location:默认是WLS_HOME\user_projects\,我选默认,该过后有没有问题,我不知道。

4)

ServerName :DittyServer,

Server Listen Address: 对于单机版不用写,默认是localhost,如果想写可以写自己的IP。

Listen Port:7001默认

SSL Listen Port:7002默认

5)Create System User Name and Password:这里与6.1不同,系统用户不再是system,用户可以自行定义,我在这里还用system

username:system

password:weblogic

6)Install Sever as Windows Service: NO!(意思是将其加到系统的服务列表内,有系统自动启动,还是手动控制比较灵活!)

7)Install Domain into Start Menu : NO!

8)Create

9)End

3.修改启动脚本,WlS_HOME\user_projects\mydomain\startWebLogic.cmd

set WLS_USER=DittyServer

set WLS_PW=weblogic

set STARTMODE=false

4.启动:执行刚才修改的startWebLogic.cmd


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11906730.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存