我们今天还需要区块链吗
慢雾:Chrome 恶意扩展盗取百万美金解惑
作者:23pds@慢雾安全团队
背景
2024 年 6 月 3 日,推特用户 @CryptoNakamao 发文讲述其因下载恶意的 Chrome 扩展 Aggr 导致 100 万美金被盗的经过,引起广大加密社区用户对扩展风险的关注和自己加密资产安全性的担忧。在 5 月 31 日,慢雾安全团队发布了披着羊皮的狼|虚假 Chrome 扩展盗窃分析一文,对恶意的 Aggr 扩展的作恶方式输出了详细分析。鉴于广大用户缺乏浏览器扩展的背景知识,慢雾首席信息安全官 23pds 在本文通过六问六答,讲解扩展的基础知识和潜在风险,提供应对扩展风险的建议,希望能帮助个人用户和交易平台提高保护账户和资产安全的能力。
(https://x.com/im23pds/status/1797528115897626708)
答疑
1. 什么是 Chrome 扩展?
Chrome 扩展(Chrome Extension) 是为谷歌浏览器(Google Chrome) 设计的插件,能够扩展浏览器的功能和行为。它们可以自定义用户的浏览体验,添加新的特性或内容,或者与网站交互。Chrome 扩展通常由 HTML、CSS、JavaScript 以及其他网页技术构建。
Chrome 扩展的结构通常包括以下几个部分:
manifest.json:扩展的配置文件,定义了扩展的基本信息(如名称、版本、权限等)。
背景脚本(Background Scripts):运行在浏览器后台,处理事件和长期任务。
内容脚本(Content Scripts):运行在网页上下文中,能够直接与网页进行交互。
用户界面(UI):如浏览器工具栏按钮、弹出窗口、选项页等。
2. Chrome 扩展有什么作用?
广告拦截:扩展可以拦截和阻止网页上的广告,从而提高网页加载速度和用户体验。例如,AdBlock 和 uBlock Origin。
隐私和安全:一些扩展可以增强用户的隐私和安全性,如防止跟踪、加密通信、管理密码等。例如,Privacy Badger 和 LastPass。
生产力工具:扩展可以帮助用户提高生产力,如管理任务、记笔记、时间跟踪等。例如,Todoist 和 Evernote Web Clipper。
开发者工具:为网页开发者提供调试和开发工具,如查看网页结构、调试代码、分析网络请求等。例如,React Developer Tools 和 Postman。
社交媒体和通讯:扩展可以集成社交媒体和通讯工具,方便用户在浏览网页时处理社交媒体通知、消息等。例如,Grammarly 和 Facebook Messenger。
网页定制:用户可以通过扩展自定义网页的外观和行为,如更改主题、重新排列页面元素、添加额外功能等。例如,Stylish 和 Tampermonkey。
自动化任务:扩展可以帮助用户自动化重复性任务,如自动填写表单、批量下载文件等。例如,iMacros 和 DownThemAll。
语言翻译:一些扩展可以实时翻译网页内容,帮助用户理解不同语言的网页,如 Google 翻译。
加密货币辅助:扩展可以帮助用户在加密货币交易时更加方便,如 MetaMask 等。
Chrome 扩展的灵活性和多样性使得它们几乎可以应用于任何浏览场景,帮助用户更高效地完成各种任务。
3. Chrome 扩展安装后有哪些权限?
Chrome 扩展在安装后可能会请求一系列权限,以便执行特定的功能。这些权限在扩展的 manifest.json 文件中声明,并在安装时提示用户进行确认。常见的权限包括:
<all_urls>:允许扩展访问所有网站的内容。这是一个广泛的权限,允许扩展读取和修改所有网站的数据。
tabs:允许扩展访问浏览器的标签信息,包括获取当前打开的标签、创建和关闭标签等。
activeTab:允许扩展暂时访问当前激活的标签,通常用于在用户点击扩展按钮时执行特定操作。
storage:允许扩展使用 Chrome 的存储 API 来存储和检索数据。这可以用于保存扩展的设置、用户数据等。
cookies:允许扩展访问和修改浏览器中的 cookies。
webRequest 和 webRequestBlocking:允许扩展拦截和修改网络请求。这些权限通常用于广告拦截和隐私保护扩展。
bookmarks:允许扩展访问和修改浏览器的书签。
history:允许扩展访问和修改浏览器的历史记录。
notifications:允许扩展显示桌面通知。
contextMenus:允许扩展在浏览器的上下文菜单(右键菜单)中添加自定义菜单项。
geolocation:允许扩展访问用户的地理位置信息。
clipboardRead 和 clipboardWrite:允许扩展读取和写入剪贴板内容。
downloads:允许扩展管理下载,包括启动、暂停和取消下载。
management:允许扩展管理浏览器的其他扩展和应用程序。
background:允许扩展在后台运行长时间任务。
notifications:允许扩展显示系统通知。
webNavigation:允许扩展监控和修改浏览器的导航行为。
这些权限使得 Chrome 扩展能够执行许多强大和多样的功能,但也意味着它们有可能访问用户的敏感数据,如 cookies 、认证信息等。
4. 为什么恶意的 Chrome 扩展可以盗取用户权限?