密码安全|《隐身的艺术》第一章摘要

THe Art of the Invisibility: the world's most famous hacker teaches you how to be safe in the age of big brother and big data

The Art of the Invisibility: the world’s most famous hacker teaches you how to be safe in the age of big brother and big data

(从英文版出版社得知,这本书的中译本将由湛卢文化出版,期待!)

延伸阅读文章:


密码

我们使用密码存在的安全问题是:

  • 密码字符过短;

  • 相同密码在不同账户重复使用;

  • 密码中含有账户名/个人真实属性信息。

对应的策略有 5 点,具体的介绍在下面:

  • 增加密码字符长度。

  • 使用密码管理器(例如 1Password、LastPass)给使用的每个网站设置随机、唯一的密码。

  • 尽可能的启用双重身份验证(2FA),二次验证登录者身份。通常是通过手机短信、邮件、Authentication App 获取随机验证码。在网站 https://turnon2fa.com 可以查看到如何启用 2FA.

  • 给密码管理器设置一个安全、容易记住的管理密码,并打开 2FA, 保存好备份代码。

  • 复杂规则密码的更好替代方法是不使用已经被破坏泄漏的密码。

EPPB(Elcomsoft Phone Password Breaker)的目的是使执法机构、政府机构获取 iCloud 账户的软件,并且可以公开销售。

为了保护你的 iCloud 和其它在线账户,必须设置一个强密码。

除了工作相关的密码之外,还有那些可以保护大部分个人账户的密码。选择一个难以猜测出来的密码,并不能避免 oclHashcat 这类黑客工具可能攻破你的密码,但是它可以使破译过程变慢,使得攻击者转向更容易的目标。

我们可以合理猜想,在 2015 年 7 月的 Ashley Madison 黑客事件中,暴露出来的一些密码肯定正在被用于其它地方,包括银行账户、甚至工作电脑。在公布在网上的 110,000,00 个 Ashley Madison 密码中,最常见的是「123456」「12345」「password」「DEFAULT」「123456789」「qwerty」「12345678」「abc123」「1234567」。如果你看见你自己的密码有上述这些,你很可能容易受到数据破坏。

Pwned 安全检查

邮箱账户

可以在网站 https://www.haveibeenpwned.com 检查你的邮箱账户信息是否出现过泄漏。

Selection_005

邮箱账户没有发生过泄漏

Selection_007

邮箱账户在 3 个网站发生过泄漏

Selection_008

邮箱账户发生泄漏的详细说明

密码暴露

https://haveibeenpwned.com/Passwords 可以检查密码是否已经在数据泄漏中暴露,如果显示红色背景的以下信息,说明查询的密码已经不能再使用了。

Selection_002

如果显示结果是 Good news–no pwnage found!,也只是表示这个密码在密码泄漏库中没有,但并不表示它是强密码。

Selection_003

在延伸阅读《开发者如何错误地使用密码》文章中提到了 Troy Hunt, 他是澳大利亚微软区域总监兼微软开发者安全专家。从 2011 年开始参与微软社区里的网络安全问题。他参与的重要项目之一就是 Have I been pwned,这是一项免费服务,收集了数据泄漏,帮助网民确认他们是否受到了网络恶意行为的影响。

在 21 世纪,我们可以做得更好,也就是用字母和数字组合的更长、更复杂的密码。以下是自动、手动两种作法。

自动管理密码:使用密码管理器

最简单的方式是放弃创建你自己的密码,使用简单的自动化生成。有若干数字密码管理工具。它们不仅可以把密码存储在一个加密的金库里,当你需要密码的时候也允许一键获取,密码管理工具还可以为每个网站生成新的强、独特的密码。

使用密码管理器会有两个问题。

  • 其一,密码管理器使用一个管理员密码来获得其它密码。如果有人碰巧使用恶意软件感染了你的电脑,当恶意软件记录每次按键输入,会盗取密码数据和管理员密码。这下就完蛋了!黑客会利用密码管理软件的后门获取密码。

  • 其二,如果你丢失了管理员密码,意味着你丢了所有密码。最终,即使你可以重置每个密码,但如果有大量账户,这将会是一个很大的工作量。

尽管存在这些缺点,但下列小技巧应该足够保证密码安全。

  1. 强密码口令(短语),而不是密码,应该足够长,至少 20-25 字符。 随机字符的作用最好,但人类大脑难以记住随机序列。所以需要使用一个密码管理工具。推荐使用开源的密码管理工具,只在你的电脑本地存储数据,例如 Password Safe、KeePass.

  2. 对两个不同的帐号,从不使用相同的密码。 密码管理工具可以生成和存储强而唯一的密码。

在延伸阅读中提到,从 20 世纪 70 年代开始考虑安全存储密码,经过了使用哈希处理、BCrypt 算法处理密码,算法处理已经来不及抵挡强制破解密码,再加上很多网站还没有限制连续重复登录请求、使用验证码的情况下,要求用户在设置密码的时候遵守「至少只用数字、标点符号」这类复杂规则,并没有帮助解决密码重复使用、密码弱、将个人信息输入密码的问题

手动创建并写下密码

  1. 用纸写下密码,不要直接把账户、密码全部写出来,例如:中国银行:3sto7ghendp1vbs*.
  2. 用隐晦的词汇代替账户,密码只写一部分

密码保护之外的设备保护

不要轻易随便与别人共享帐号密码。

除了密码保护在线服务,也应该用密码保护个人设备(电脑、手机、平板等),需要设置一个开机密码或者屏保密码。

三种常见的给手机(Android/iOS/其它类型)加锁方法

  1. passcode:最常见的一种方式,以特别的顺序输入的一连串数字

    1. 不要用手机号码里的数字设置
    2. 有些设备也支持 text-based passcode , 字母与数字混合
  2. 另一种是 visual
    Android:Android lock patterns:140704 种组合
    alps

  3. 第三种:biometrics 指纹解锁,人脸识别

建议 Biometrics 和 passcode 结合使用。