Google Chrome-文件系统访问API-Maciej Pulikowski报告的漏洞

  • A+
所属分类:安全新闻

漏洞赏金总额:$ 5.000

这是针对以下方面的概念证明:

[Google Security_Severity] CVE

  • [高] CVE-2021-21123

  • [中] CVE-2021-21129

  • [中] CVE-2021-21130

  • [中] CVE-2021-21131

  • [中] CVE-2021-21172

  • [低] CVE-2021-21141


此处的主要安全问题是Google Chrome启动的操作系统对话框“另存为”,向用户显示下载文件的错误文件扩展名。它显示“另存为类型:JPEG(.jpg)”,但会下载可以通过PowerShell下载并运行virus.exe的virus.jpg.lnk。


因此,它是下载文件的一种欺骗扩展。


该错误可在Windows,Mac和Linux上的Google Chrome 86和87中运行。当然,LNK仅在Windows上有效,但是我们可以在Linux或Mac上将其更改为其他扩展名。


Google博客文章:

  • https://chromereleases.googleblog.com/2021/01/stable-channel-update-for-desktop_19.html

  • https://chromereleases.googleblog.com/2021/03/stable-channel-update-for-desktop.html

提到的错误是“ Maciej Pulikowski的报告”


 YouTube的概念证明

编码PoC

要求:没什么,您只需要在旧版本的Google Chrome 86或87中运行HTML文件。如果要使用.lnk文件进行测试,则必须创建FUD“ lnkextra.lnk”文件,因为它是不包含。


example_showSaveFilePicker.html(这些错误在Google Chrome 86和87中起作用。它们已在88+版本中修复)


CVE-2021-21123,CVE-2021-21129,CVE-2021-21130,CVE-2021-21131,CVE-2021-21141


我的showSaveFilePicker()示例的操场:

  • 保存LNK文件并显示保存类型:JPEG图像(* .jpg)

  • 说明中有许多空白和虚假扩展名

  • 描述中的RTL

  • 超长描述

  • 扩展名中有很多空格

  • RTL扩展

  • 扩展名以空格结尾

  • 扩展名以句号结尾

  • 以其他方式保存LNK文件

  • 额外-由于所有事情都在JS中发生,因此我们可以检查用户的浏览器是否容易受到攻击

  • example_getFileHandle.html(该错误在Google Chrome 86、87和88中有效。已在89+版本中修复)

CVE-2021-21172- getFileHandle() -将.lnk文件保存到所选文件夹


参考:

  • 文件系统访问API:简化对本地文件的访问

https://web.dev/file-system-access/


  • 文件系统访问-文档

https://wicg.github.io/file-system-access/


  • 文件系统访问Web API-Chromium安全模型

https://docs.google.com/document/d/1NJFd-EWdUlQ7wVzjqcgXewqC5nzv_qII4OvlDtK6SE8


  • Chromium源代码-阻止.lnk文件的默认下载方法

https://source.chromium.org/chromium/chromium/src/+/master:net/base/filename_util_internal.cc;drc=1c58af32060fa0ef3cfd4037fdc7913092d16ba2;l=155?q=%20EnsureSafeExtension&ss=chromium


Google Chrome-文件系统访问API-Maciej Pulikowski报告的漏洞

本文始发于微信公众号(Ots安全):Google Chrome-文件系统访问API-Maciej Pulikowski报告的漏洞

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: