Apache Tapestry远程代码执行误差(CVE-2021-27850)
宣布时间 2021-04-160x00 误差概述
CVE ID | CVE-2021-27850 | 时 间 | 2021-04-16 |
类 型 | RCE | 等 级 | 严重 |
远程使用 | 是 | 影响规模 | |
PoC/EXP | 未果真 | 在野使用 |
0x01 误差详情

Apache Tapestry是一种用Java编写的面向组件的Web应用程序框架。Tapestry可以在任何应用程序服务器下事情,并且可以轻松集成所有后端,如Spring,Hibernate等。
2021年04月14日,Apache Tapestry被披露保存一个严重的远程代码执行误差(CVE-2021-27850),攻击者无需经由身份验证即可使用。该误差绕过了CVE-2019-0195的修复程序(CVSS评分为9.8)。
在CVE-2019-0195中,通过使用classpath资产文件URL,攻击者可以在classpath中推测文件的路径,然后下载该文件。攻击者可以通过请求包括HMAC秘钥的URL http://localhost:8080/assets/something/services/AppModule.class来下载文件AppModule.class。
CVE-2019-0195的修复使用了黑名单过滤,其检查URL是否以“.class”、“.properties”或“.xml”最后,但这种黑名单过滤可以通过在URL最后添加“/”来绕过。当http://localhost:8080/assets/something/services/AppModule.class/在黑名单检查后,斜线被剥离,AppModule.class文件被加载到响应中。这个类通常包括用于对序列化的Java工具举行署名的HMAC秘钥,在知道该密钥的情形下,攻击者就可以签署Java小工具链(例如ysoserial的CommonsBeanUtils1),最终导致远程代码执行。
影响规模
Apache Tapestry 5.4.5
Apache Tapestry 5.5.0
Apache Tapestry 5.6.2
Apache Tapestry 5.7.0
0x02 处置惩罚建议
现在官方已修复了此误差,建议升级到以下版本:
Apache Tapestry 5.4.0-5.6.2,升级到5.6.2或更高版本。
Apache Tapestry 5.7.0,升级到5.7.1或更高版本。
下载链接:
https://tapestry.apache.org/download.html
0x03 参考链接
https://lists.apache.org/thread.html/r237ff7f286bda31682c254550c1ebf92b0ec61329b32fbeb2d1c8751%40%3Cusers.tapestry.apache.org%3E
https://nvd.nist.gov/vuln/detail/CVE-2019-0195
https://nvd.nist.gov/vuln/detail/CVE-2021-27850
0x04 时间线
2021-04-14 Johannes Moritz披露误差
2021-04-16 VSRC宣布清静通告
0x05 附录
CVSS评分标准官网:http://www.first.org/cvss/



京公网安备11010802024551号