本站点使用cookies,继续浏览表示您同意我们使用cookies。Cookies和隐私政策

安全预警 - 华为产品存在Apache Struts2远程代码执行安全漏洞

  • 预警编号:huawei-sa-20170316-01-struts2
  • 初始发布时间: 2017-03-16
  • 更新发布时间: 2021-01-13

Apache Struts2在官方网站安全公告S2-045中披露了一个远程代码执行漏洞。攻击者可以通过发送包含恶意Content-Type值的报文发起远程代码执行攻击。(漏洞编号HWPSIRT-2017-03094)
该漏洞的CVE编号为: CVE-2017-5638。
华为已发布版本修复该漏洞。安全预警链接:
http://www.huawei.com/cn/psirt/security-advisories/huawei-sa-20170316-01-struts2-cn

产品名称

版本号

修复版本号

AnyOffice

V200R005C00

2.6.1001+2.6.1001.sp1

SMSGW

V100R002C01

Upgrade to V100R003C01LG3501

V100R002C11

V100R003C01

V100R003C01LG3501

Secospace AntiDDoS8000

V100R001C00

Upgrade to V500R001SPH001

V500R001C00

V500R001SPH001

V500R001C20

eSpace ECS

V200R002C00

Upgrade to V300R001C00SPC207

V200R003C00

V200R003C10

V300R001C00

V300R001C00SPC207

iManager NetEco

V600R007C11

Upgrade to V600R008C10SPC210

V600R007C50

V600R007C60

Upgrade to V600R007C90SPC310

V600R008C00

Upgrade to V600R008C10SPC210

V600R008C10

V600R008C10SPC210

V600R008C20

V600R008C20SPC100

iManager NetEco 6000

V600R007C80

Upgrade to V600R007C90SPC310

V600R007C90

V600R007C90SPC310

V600R007C91

V600R007C91SPC100

 OceanStor 9000

 

 

V100R001C01

  V300R006C00SPC200

 

 

V300R005C00

V100R001C30

V300R006C00

 OceanStor 18500/18800/18800F/HVS85T/HVS88T

 V100R001

 V100R001C30SPH206

eAFE310

V100R004C00

V100R004C10SPC301

V100R004C10

eAPP610

V100R003C00

V100R004C10SPC413

V100R004C00

V100R004C10

eUDC660

V100R004C00

V100R004C10SPC413

V100R004C10



攻击者可以利用报文的恶意Content-Type值发起远程代码执行攻击。
漏洞使用CVSSv3计分系统进行分级(http://www.first.org/cvss/specification-document
基础得分:9.8 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H)
临时得分:9.1 (E:F/RL:O/RC:C)
利用漏洞发起攻击的预置条件:
攻击者能通过网络访问到受影响的产品。
漏洞详细描述:
攻击者可以利用报文的恶意Content-Type值发起远程代码执行攻击。

AnyOffice:

场景1:AnyOffice部署在Linux环境中

1. 以anyofficeuser用户登录SC (Service Controller)服务器,并进入相关目录:

cd /usr/local/anyoffice/sc/mdmserver/webapps/MDMServer/WEB-INF

2. 备份web.xml文件:

cp web.xml web.xml.bak

3.修改配置文件web.xml并保存

a.将以下代码注释掉

<!--

<filter-mapping>

<filter-name>struts2</filter-name>

<url-pattern>/*</url-pattern>

</filter-mapping>

-->

b.在注释掉的代码后增加如下代码

<filter-mapping>

<filter-name>struts2</filter-name>

<url-pattern>/aeResponseAction!getCert.action</url-pattern>

</filter-mapping>

<filter-mapping>

<filter-name>struts2</filter-name>

<url-pattern>/aeOnlineCheckAction!checkOnLine.action</url-pattern>

</filter-mapping>

c. 保存web.xml文件

4.重新启动MDM服务

cd /usr/local/anyoffice/sc/mdmserver

sh ServerStop.sh

sh ServerStart.sh

场景2:AnyOffice部署在Windows环境中

1. 以Administrator用户登录SC服务器,并进入如下目录:

C:Program FilesAnyOfficescmdmserverwebappsMDMServerWEB-INF

2. 备份web.xml文件为web.xml.bak

3.修改配置文件web.xml并保存

a.将以下代码注释掉

<!--

<filter-mapping>

<filter-name>struts2</filter-name>

<url-pattern>/*</url-pattern>

</filter-mapping>

-->

b.在注释掉的代码后增加如下代码

<filter-mapping>

<filter-name>struts2</filter-name>

<url-pattern>/aeResponseAction!getCert.action</url-pattern>

</filter-mapping>

<filter-mapping>

<filter-name>struts2</filter-name>

<url-pattern>/aeOnlineCheckAction!checkOnLine.action</url-pattern>

</filter-mapping>

c. 保存web.xml文件

4. 进入“服务”界面,重启MDM_Service组件服务

 


OMP9360:

场景1:应用的是OMP9360 V100R001C10版本

在OMP9360 Portal 服务器上

1. 进入如下目录

/home/ompptlapp/tomcat/webapps/omp/WEB-INF/classes/conf/i18n/

2. 在文件messages_en_US.properties和文件messages_zh_CN.properties中增加如下信息:

struts.messages.upload.error.InvalidContentTypeException=1

3. 执行如下命令重启相关进程

su ompptlapp -c "stopapp;startapp;"

4. 进入如下目录

/home/ompcslapp/tomcat/webapps/ompconsole/WEB-INF/classes/conf/i18n/

5. 在文件messages_en_US.properties和文件messages_zh_CN.properties中增加如下信息:

struts.messages.upload.error.InvalidContentTypeException=1

6. 执行如下命令重启相关进程

su ompcslapp -c "stopapp;startapp;"

在OMP9360 analysis服务器上

1. 进入如下目录

/opt/hwomp/tomcat/webapps/ROOT/WEB-INF/classes

2. 在文件messages_en_US.properties和文件messages_zh_CN.properties中增加如下信息

struts.messages.upload.error.InvalidContentTypeException=1

在OMP9360 Adapter API服务器上

1. 进入如下目录

/opt/hwomp/adapter/tomcat/webapps/OMP_Adapter/WEB-INF/classes

2. 在文件struts.xml的以下位置增加信息:

<constant name="struts.objectFactory" value="org.apache.struts2.spring.StrutsSpringObjectFactory" />

<constant name="struts.custom.i18n.resources" value="global" />  #增加的信息

<package name="Login" extends="struts-default">

3. 进入如下目录

/opt/hwomp/adapter/tomcat/webapps/OMP_Adapter/WEB-INF/classes

4. 创建空白文件global.properties,并在文件中写入如下信息:

struts.messages.upload.error.InvalidContentTypeException=1

5. 执行如下命令修改文件属性:

chown hwomp:hwomp global.properties

chmod 644 global.properties

6. 重启相关进程令修改生效:

cd /opt/hacs/bin/

./stop.sh

./start.sh

场景2:应用的是OMP9360 V100R001C20或OMP9360 V100R001C30版本

在OMP9360 analysis服务器上

1. 进入如下目录

/opt/OMP9360/workshop/webpmu/analysis/ROOT/WEB-INF/classes/

2. 在文件messageResources_en_US.properties和文件messageResources_zh_CN.properties中增加如下信息

struts.messages.upload.error.InvalidContentTypeException=1

客户可以部署华为NGFW(下一代防火墙)或者数据中心防火墙产品,并升级IPS特征库至2017年03月07日发布的最新版本(IPS_H20011000_2017030703)以检测和防护该漏洞攻击。


用户可以通过华为TAC (Huawei Technical Assistance Center)获取补丁/更新版本。

TAC的联系方式见链接http://www.huawei.com/cn/psirt/report-vulnerabilities



该漏洞是由Apache Struts2官网在安全公告S2-045中发布。

2021-01-13 V1.4 UPDATED 刷新受影响产品版本和修复信息;
2020-06-24 V1.3 UPDATED 刷新受影响产品版本和修复信息;
2017-04-20 V1.2 UPDATED 添加CVE ID(CVE-2017-5638);刷新受影响产品版本和修复信息;
2017-03-18 V1.1 UPDATED 刷新受影响产品版本和修复信息;刷新临时措施;
2017-03-16 V1.0 INITIAL

华为一贯主张尽全力保障产品用户的最终利益,遵循负责任的安全事件披露原则,并通过产品安全问题处理机制处理产品安全问题。

获取华为公司安全应急响应服务及华为产品漏洞信息,请访问http://www.huawei.com/cn/psirt
反馈华为产品和解决方案安全问题,请反馈至华为PSIRT邮箱PSIRT@huawei.com,详情参考http://www.huawei.com/cn/psirt/report-vulnerabilities

本文件按“原样”提供,不承诺任何明示、默示和法定的担保,包括(但不限于)对适销性、适用性及不侵权的担保。 在任何情况下,华为技术有限公司,或其直接或间接控制的子公司,或其供应商,对任何损失,包括直接,间接,偶然,必然的商业利润损失或特殊损失均不承担责任。您以任何方式使用本文件所产生的一切法律责任由您自行承担。华为可以随时对本文件所载的内容和信息进行修改或更新。