各位靓仔靓女,晚上好!我是今晚的讲师,很高兴能和大家一起聊聊“Blob URL / Data URL 注入导致任意代码执行”这个听起来有点吓人的话题。别怕,我会尽量用大白话把它讲清楚,保证你们听完能对着镜子自信地说:“这玩意儿,我懂!” 一、什么是 Blob URL 和 Data URL? 先来认识一下我们今天的主角:Blob URL 和 Data URL。 Blob URL: 你可以把它想象成一个指向“一大坨二进制数据”的快捷方式。这“一大坨”数据可能是一张图片、一段音频、一个视频,甚至是JavaScript代码。Blob URL实际上是一个URL,它指向浏览器内部创建的一个Blob对象。 代码示例 (JavaScript): // 创建一个包含 JavaScript 代码的 Blob 对象 const code = “alert(‘Hello from Blob URL!’);”; const blob = new Blob([code], { type: ‘text/javascript’ }); // 创建 Blob URL const blobURL = URL.create …
继续阅读“Blob URL / Data URL 注入如何导致 Arbitrary Code Execution (任意代码执行)?请分析其在浏览器渲染流程中的风险点。”