安全与密码学2017arxiv.org
Horcrux:面向偏执者的密码管理器
Horcrux: A Password Manager for Paranoids
进阶 · 约 35 分钟读完前置知识:密码学基础、Web 表单与 HTTP 请求、密码管理器原理
导读
Horcrux 是一款面向"偏执型"用户设计的密码管理器。根据 HN 讨论,其核心思路是让用户在登录表单里填写假的用户名和密码,再在提交请求(POST)时替换为真实凭据,从而避免依赖剪贴板或直接操作 DOM 带来的风险。不过有读者指出,其开源实现中 AES-CTR 存在 IV 复用问题,可能使加密形同虚设。
HN 关注点:焦点在于这种"填假密码、在请求中替换"的方案是否比剪贴板/DOM 注入更安全,以及开源实现中暴露出的加密缺陷。
HN 评论精选
这几条评论里:支持 1 质疑 2 补充 1
质疑指出实现中 AES-CTR 复用 IV,加密可能完全失效。
我很确定这段代码对 AES-CTR 复用了 IV(也就是说加密形同虚设),因为它没有指定 IV,而 Node 似乎会根据密钥推导出 IV。这简直是 Node 里的一个巨大陷阱。我也不认为他们的方案能为每个站点生成不同的密钥,不过也可能是我判断有误。
iancarroll查看英文原文
I am pretty sure the code is reusing IVs for AES-CTR[0] (i.e. the encryption is worthless), because it doesn't specify an IV and Node seems to derive the IV from the key.[1] This seems like a massive footgun in Node. I don't think their scheme results in different keys for each site, but I could be wrong. [0] https://github.com/HainaLi/horcrux_password_manager/blob/master/utils.js#L20 [1] https://nodejs.org/api/crypto.html#crypto_crypto_createcipher_algorithm_password
支持认为假凭据加请求替换的方案优于剪贴板和 DOM 操作。
先输入一个假的用户名和密码,然后在 POST 请求里再把它改掉——这个技巧听起来比玩"剪贴板轮盘赌"或者折腾 DOM 要好得多。
Nyubis查看英文原文
The trick of entering a dummy username and password, which is then modified in the post request sounds a whole lot better than playing clipboard roulette or messing with the DOM.
质疑真正的偏执意味着不能信任任何非自己编写的软件。
如果你真的偏执,那只有一个选择:你自己就是密码管理器。绝不是你自己没写过的软件。否则你就不算真正的偏执。
thinkMOAR查看英文原文
If you are paranoid, then there is only one option, you are the password manager. Certainly not a piece of software you didn't author yourself. Else you are not truly paranoid.
补充补充了论文实现的开源代码仓库链接。
项目仓库地址:https://github.com/HainaLi/horcrux_password_manager
posnet查看英文原文
Repository of the project: https://github.com/HainaLi/horcrux_password_manager
相关资源
从这篇论文所有 HN 讨论帖的全部评论里整理出来的链接。
历次讨论
- 2017Hacker News 讨论帖224 分 · 165 评
同领域还值得读
如何入侵一台已关机的电脑:在 Intel ME 中运行未签名代码
How to hack a turned-off computer, or running unsigned code in Intel ME
这篇 Black Hat 2017 白皮书讨论 Intel Management Engine(ME)的安全问题:如何在 ME 中运行未签名代码,以及攻破处于关机状态的电脑的相关…
安全与密码学2017 · 543 分 · 107 评专业 · 约 40 分钟编辑精选比特币:一种点对点的电子现金系统(2008)
Bitcoin: A Peer-to-Peer Electronic Cash System (2008)
中本聪 2008 年发表的比特币白皮书,提出了无需可信第三方的点对点电子现金系统。
安全与密码学2017 · 536 分 · 394 评入门 · 约 45 分钟编辑精选GPRS 加密算法 GEA-1 的密码分析表明存在故意弱点
Cryptanalysis of GPRS Encryption Algorithms GEA-1 suggest intentional weakness
首次公开了对 GPRS 加密算法 GEA-1 和 GEA-2 的密码分析攻击。
安全与密码学2021 · 487 分 · 107 评专业 · 约 90 分钟编辑精选Signal 消息协议的形式化安全分析
A Formal Security Analysis of the Signal Messaging Protocol
用形式化方法分析 Signal 消息协议(TextSecure)的安全性:作者在多阶段密钥交换模型下,借助自动化证明工具对协议的密钥协商与 Double Ratchet 密钥更新…
安全与密码学2016 · 353 分 · 230 评专业 · 约 120 分钟编辑精选A2:模拟恶意硬件
A2: Analog Malicious Hardware
论文研究如何在芯片设计阶段植入模拟电路形式的恶意硬件后门,使其难以被常规检测发现。
安全与密码学2016 · 315 分 · 94 评专业 · 约 75 分钟编辑精选