根据这篇文章: https://mp.weixin.qq.com/s/3WUBENxzxyhiPB1EV9gKvA
上面提到 Chrome 的用户密码保存在 User Login 文件下加密保存,而打开 User Login 的文件又被放在了 User State 的 Json 文件里,值为“encrypted_key”。
但是 encrypted_key 是 AES 加密保存了,文中没有提到是如何解密这个 encrypted_key 的。
另外:我在 macOS 上并没找到 encrypted_key 这个 key
1
dw2693734d OP 懂了,Windows 下,Chrome 用的是 CryptUnprotectData 这个 win32 的公开 api 加密的,这也太容易被拿到 Chrome 的所有网站的登录密码了吧
|
2
dw2693734d OP Windows 真垃圾啊
|
3
weazord 2023-12-01 07:41:17 +08:00 via iPhone
https://github.com/ohyicong/decrypt-chrome-passwords
我记得以前有讨论过类似问题,大概就是 Metamask 的加密依赖于 Chrome ,Chrome 的加密依赖于 Windows Bitlocker ,然后为了用户方便: 1. 通过 Windows login prompt 就能拿到 key 2. 微软服务器上也存了一份,能登陆微软账号也能拿到 key 拿到 key 之后在 Windows 上就可以为所欲为了。 这里面每一步理论上都是安全的,Metamask 作为拓展不得不信任 Chrome ,Chrome 作为应用不得不信任 Windows ,Bitlocker 理论上也是很安全。硬要说责任的话,大概是微软没教育好用户? |
4
weazord 2023-12-01 08:04:12 +08:00
@weazord 打错,不是 Windows 加密磁盘那个 bitlocker ,key 不一样,不过还是可以通过 login prompt 拿到
|
5
k9982874 2023-12-01 08:21:56 +08:00
@weazord #3 不用那么费劲,如果按一楼说的,只要 hook CryptUnprotectData 这个 api ,一切都是透明的
|
6
ding2dong 2023-12-01 08:49:49 +08:00
前提是已经入侵系统吧?那直接监听键盘都可以啊
|
7
weazord 2023-12-01 08:57:04 +08:00
@k9982874 API 是公开的,但不代表你可以随便解密呀,还是需要 Windows 的账号是登录状态才行 估计被其他 Windows 上的恶意程序拿到了
|
8
winfura02 2023-12-01 09:00:51 +08:00 via iPhone
|
10
zictos 2023-12-01 09:31:21 +08:00
应该不可以的吧? metamask 应该没有在本地明文保存密码的吧?除非监听键盘和剪贴板。
不过任何恶意软件都是可以把整个 chrome 数据目录复制走的,在别的电脑上也可以用,包括 cookies 、保存的密码、一些已登录的网络扩展等任何数据。 |
11
zictos 2023-12-01 09:33:08 +08:00
|
12
jim9606 2023-12-01 12:36:56 +08:00 via Android 1
类似问题老早就被讨论过了,说为啥 chrome 系的本地密码存储只用 DPAPI 保护,讨论结果就是 chrome 知防范远端攻击,不防范同一本地用户下的攻击,所以有相同用户权限的恶意软件是可以拿到这些数据的。
理论上吧这套机制如果用 windows hello+TPM 来保护会好些,但好像连 edge 都没这么实践,可能因为不是 kpi 吧? |
13
mmdsun 2023-12-01 13:38:15 +08:00 via iPhone
电脑都被植入木马了别说密码了,照片文件都能给你弄走。
|