漏洞描述
IIOP协议是远程方法调用协议,使用Apusic V10.0应用服务器部分功能时使用了该协议,导致攻击者可以通过构造恶意的反序列化数据进行攻击,从而可以在服务器上无需授权,即可执行任意代码,从而进一步控制服务器。
影响范围:Apusic 应用服务器软件 V10.0 企业版 SP1-SP8。
漏洞危害
远程代码执行漏洞可能导致的危害包括但不限于:
修复方法
如果业务需要使用IIOP协议进行通讯,可以通过控制IIOP协议只允许本机访问来规避该问题。操作步骤:
在安装目录下的ApusicAS/aas/domains/mydomain/config/domain.xml文件,查找字符iiop-listener,将所有的iiop-listener的address="0.0.0.0" 改为 "127.0.0.1"。例如:
<iiop-listener address="0.0.0.0" port="${IIOP_LISTENER_PORT}" id="orb-listener-1"></iiop-listener>
<iiop-listener address="0.0.0.0" port="${IIOP_SSL_LISTENER_PORT}" id="SSL" security-enabled="true">
<ssl classname="com.sun.enterprise.security.ssl.ApusicSSLImpl" cert-nickname="kaas"></ssl>
</iiop-listener>
<iiop-listener address="0.0.0.0" port="${IIOP_SSL_MUTUALAUTH_PORT}" id="SSL_MUTUALAUTH" security-enabled="true">
<ssl classname="com.sun.enterprise.security.ssl.ApusicSSLImpl" cert-nickname="kaas" client-auth-enabled="true"></ssl>
</iiop-listener>
修改为:
<iiop-listener address="127.0.0.1" port="${IIOP_LISTENER_PORT}" id="orb-listener-1"></iiop-listener>
<iiop-listener address="127.0.0.1" port="${IIOP_SSL_LISTENER_PORT}" id="SSL" security-enabled="true">
<ssl classname="com.sun.enterprise.security.ssl.ApusicSSLImpl" cert-nickname="kaas"></ssl>
</iiop-listener>
<iiop-listener address="127.0.0.1" port="${IIOP_SSL_MUTUALAUTH_PORT}" id="SSL_MUTUALAUTH" security-enabled="true">
<ssl classname="com.sun.enterprise.security.ssl.ApusicSSLImpl" cert-nickname="kaas" client-auth-enabled="true"></ssl>
</iiop-listener>
在操作系统终端执行命令:netstat -anol|grep 6837,如果显示127.0.0.1:6837,则修改成功。
不需要使用IIOP协议,则可以停用IIOP协议,操作步骤如下:
编辑安装目录下ApusicAS/aas/domains/mydomain/config/domain.xml文件,查找字符iiop-listener,将所有的iiop-listener项删除。例如,删除的内容:
<iiop-listener address="0.0.0.0" port="${IIOP_LISTENER_PORT}" id="orb-listener-1"></iiop-listener>
<iiop-listener address="0.0.0.0" port="${IIOP_SSL_LISTENER_PORT}" id="SSL" security-enabled="true">
<ssl classname="com.sun.enterprise.security.ssl.ApusicSSLImpl" cert-nickname="kaas"></ssl>
</iiop-listener>
<iiop-listener address="0.0.0.0" port="${IIOP_SSL_MUTUALAUTH_PORT}" id="SSL_MUTUALAUTH" security-enabled="true">
<ssl classname="com.sun.enterprise.security.ssl.ApusicSSLImpl" cert-nickname="kaas" client-auth-enabled="true"></ssl>
</iiop-listener>
重启应用服务器,并检查java进程是否监听6837,6838,6839等端口(如果修改为其他端口,需要查询修改后的端口),验证是否操作成功。
在操作系统终端执行命令:netstat -anol|grep 6837,如果没有条目则停用成功。
三、新版本更新
在新版本V10.0 SP9中,默认设置IIOP协议只能本地访问,新版本可以从这里下载:http://file.apusic.com/sharing/kF38DoTsG
评分维度
长亭安全产品覆盖情况
漏洞时间线
漏洞披露
2025-04-24
漏洞信息更新
2025-04-24