Skip to content
KitploitKITPLOIT
工具漏洞利用博客
提交
工具漏洞利用博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
WebKitGTK-DND-Fix — 针对 WebKitGTK 文件拖放恢复(CVE-2025-13947 后续)的私有研究与验证 | Kitploit
工具/GitHubGitHub/sirredbeard/webkitgtk-dnd-fix
漏洞分析Web安全学习与教育精选资源
GitHubsirredbeard/webkitgtk-dnd-fix

WebKitGTK-DND-Fix

针对 WebKitGTK 文件拖放恢复(CVE-2025-13947 后续)的私有研究与验证

查看仓库
1218天前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

WebKitGTK-DND-Fix

用于在 CVE-2025-13947 之后恢复 WebKitGTK 和 WPE 上可信文件拖放功能的研究与 CI 笔记本。

问题

CVE-2025-13947(WSA-2025-0009、GHSA-j77f-3hf7-7rvg)允许网页内容通过 WebKitGTK 上的拖放操作读取本地文件内容。上游修复(bugs.webkit.org 303434)是一次广泛的禁用:allowsFileAccess() 在所有非 Cocoa 端口上返回 false,因此每次拖放时 dataTransfer.files 都为空,包括用户从文件管理器将自己的文件拖到上传目标上的情况。Epiphany 风格的浏览器和嵌入式 WebKitGTK 上传界面因此失去了该功能。Bug 320301 是同一回归问题的最终用户报告。

提议的解决方案

在平台边界上拆分信任,而不是禁用该功能。在引擎分支 sirredbeard/WebKit 的 gtk-dnd-file-access-reenable 分支上提交一次:

  • SelectionData::setURIList() 不再将 uri-list 行提升为文件名。文件授权仅来自两个 UIProcess 拖放目标和 IPC 解码所使用的显式 setter。
  • allowsFileAccess() 仅在 GTK 和 WPE 上对实际文件拖放返回 true。
  • 在 GTK4 上,由 portal 提供的 GdkFileList 优先于并行的 uri-list,并且对两条路径都应用相同的文件 URI 主机检查。
  • 源为同一应用的拖放会被拒绝提供文件名,并且 Web 拖放导出会剥离 file:// 行,且绝不导出 GdkFileList。
  • 除非主机为空或为 localhost,否则拒绝 file://host/path。
  • filenames 作为独立字段通过 IPC 传输,并且 Web 进程副本在拖放开始时被清除。

Web 编写的拖放源无法获取任何文件内容。用户拖入的外部文件授予 dataTransfer.files。粘贴功能在剪贴板审计完成前保持禁用。

状态

已于 2026-09-03 提交上游。

  • Bug:https://bugs.webkit.org/show_bug.cgi?id=323277
  • 变更:WebKit/WebKit 上的 PR 73114,等待人工审核
  • 首轮自动化审核意见已处理:采纳两项修复,一项在说明测试限制后被采纳,一项附 GLib 源码引用被拒绝
  • 尖端提交 2fd5c6cb7ea7,树 bc272e2a5ebe,位于当前上游 main 分支
  • 构建器基线通过:GTK4 和 WPE 构建、11 项 GLib API 测试、33 项 GTK 和 24 项 WPE 单元测试
  • EWS 在所有运行的队列上均通过,包括 gtk、gtk3-gcc 和 wpe
  • 每项测试的阴性对照(撤销一项防御措施,观察其测试失败)已记录于树 d364838bce86;需要在当前树上重新运行一次

文档

  • 按主题分类的研究:findings/
  • 记录计划:findings/upstream-strategy.md
  • 针对 CVE 机制的覆盖审计:findings/testing-plan.md
  • 已提交的 Bug 文本和准备好的回复:bug_report.md
  • 代理规则:.github/copilot-instructions.md

仓库实践

main 分支上只有一个压缩提交,没有其他分支。在仅引擎方案之前使用的打包和 GUI 验证机制已被移除;findings/ 以散文形式保留了结论。

下载工具