⚠️ 重要声明: 本文内容仅供安全教育和自我保护用途。未经授权破解他人的密码、系统或网络是违法行为。了解攻击方式是为了更好地防御,而不是成为攻击者。所有演示技术均针对”忘记自己密码”的场景。
前言:密码真的在保护你吗?
密码学理论上坚不可摧——AES-256 的密钥空间是 2²⁵⁶,用全世界的算力算到宇宙热寂也算不完。
但在现实中,密码系统的弱点几乎从来不在数学上。
攻击者不会去正面硬刚 AES-256。他们会:
- 猜你的密码是「123456」还是「password」
- 找到你把密钥和密文放在一起的蠢设计
- 在你睡着的时候拿你的手指按指纹锁
- 用 GPU 每秒试 100 万次直到试对为止
- 绕过加密层,直接从内存里偷密钥
本文逐一拆解普通人日常生活中会用到的每一种密码保护机制——文档加密、压缩包、Windows 登录、手机锁屏、Wi-Fi、指纹、硬盘加密、浏览器密码……扒开它的底层实现,告诉你弱点在哪里,以及怎么被破解。
每节的最后,都会给出一份「你现在就该做的事」——防御指南。
一、压缩包加密:ZIP / RAR / 7z
这是普通人最常遇到的「加密」场景。下载了一个压缩包要密码,或者自己忘了曾经设的密码。
1.1 底层原理速览
| 格式 | 加密算法 | KDF(密钥派生) | GPU 破解速度(RTX 4090) |
|---|---|---|---|
| ZIP Legacy(PKZIP) | 自研 ZipCrypto(弱) | 无 | 15 亿 H/s,8 位小写字母 ≈ 2 分钟 |
| ZIP WinZip AES | AES-256 | PBKDF2(1000 轮) | 约 40 万 H/s |
| RAR3 | AES-128 | 自定义(约 26 万轮) | 约 10 万 H/s |
| RAR5 | AES-256 | PBKDF2-HMAC-SHA256(约 32 万轮) | 约 10 万 H/s |
| 7z | AES-256 | SHA-256 KDF(约 52 万轮) | 约 10 万 H/s |
关键信息:PKZIP(旧版 ZIP 加密)形同裸奔。RAR5 和 7z 因为 KDF 轮数高,破解极慢。
1.2 破解方法全景
方法一:字典攻击(首选,成功率 90%)
用包含常见密码的字典逐一尝试。rockyou.txt(1400 万条)是最有名的字典,里面全是真人用过的密码。
1 | # Hashcat 字典攻击 RAR5 |
方法二:掩码攻击(知道部分信息时)
如果你记得密码是 6 位纯数字:
1 | hashcat -m 13000 -a 3 rar_hash.txt ?d?d?d?d?d?d |
方法三:已知明文攻击(PKZIP 专属杀招)
如果你知道压缩包内某个文件的完整或部分内容(比如里面有一个 readme.txt 你手头正好有原文件),可以用 bkcrack 从已知明文反推密钥——不用猜密码,直接解密整个压缩包。
1 | # 要求:至少 12 字节的已知明文内容 |
这招对 PKZIP(ZipCrypto)有效,对 AES 加密的 ZIP 无效。
1.3 实战:完整破解流程
1 | Step 1: 提取哈希 |
1.4 防御指南
现在就该做的:
- 创建加密压缩包时,选择 RAR5 或 7z 格式,并勾选「加密文件名」
- 密码至少 12 位,包含大小写字母+数字+符号
- 绝对不要用 ZIP Legacy(传统 ZIP 加密)——那是给破解者送人头
- 不要用出生日期、手机号、姓名拼音当密码
二、办公文档加密:Word / Excel / PDF
2.1 底层原理
Microsoft Office 的加密随版本演进变化很大:
| Office 版本 | 加密算法 | 破解难度 |
|---|---|---|
| Office 97-2003(.doc/.xls/.ppt) | RC4(40 位密钥) | 秒破——攻击的不是密码,是直接打 40 位的密钥空间 |
| Office 2007-2010(.docx/.xlsx) | AES-128 + SHA-1 | 需要暴力破解 |
| Office 2013-2024(.docx/.xlsx) | AES-256 + SHA-512(10 万轮 PBKDF2) | 极难——每次尝试要算 10 万次哈希 |
Office 2007 以后的文件,密码不存于文件中——文件只存 PBKDF2 的验证数据。没有后门,没有万能密码,只能暴力猜。
一个重要的陷阱: Excel 的「工作表保护」和「VBA 密码」不是加密——只是界面锁定。用 16 位 XOR 混淆校验值,任何恢复工具都能秒移除,不管密码多长。
2.2 破解方法
Excel 97-2003(.xls):直接打密钥空间
利用 RC4 40 位密钥的弱点,直接逆向密钥而不是猜密码。任何工具都能秒解,100% 成功。
Excel 2007+(.xlsx):暴力破解
1 | # 提取哈希 |
PDF 加密:分两种情况
| 类型 | 说明 | 破解 |
|---|---|---|
| Owner Password(权限密码) | 禁止打印/编辑但能打开 | 在线工具秒移除 |
| User Password(打开密码) | 不输入打不开 | 需暴力破解,PDF 1.4 及以前用 RC4(弱),1.5+ 用 AES(强) |
1 | # PDF 哈希提取 |
工作表/VBA 保护:秒解
1 | # 方式一:直接把 .xlsx 改名 .zip |
2.3 防御指南
现在就该做的:
- 用 Office 2013 以上版本做加密(AES-256 + 10 万轮 PBKDF2)
- 不要把「工作表保护」当加密用——它是纸糊的
- 关键文档密码和压缩包一样:12 位以上混合
三、Windows 系统登录密码
3.1 密码存在哪里
Windows 登录密码以 NTLM Hash 形式存储在 C:\Windows\System32\config\SAM 文件中。
生成方式非常弱:
1 | NTLM Hash = MD4( Unicode(密码明文) ) |
MD4 是 1990 年的老算法,GPU 暴力破解极快。 在 RTX 4090 上,NTLM Hash 的破解速度可达每秒数百亿次。
但 SAM 文件在系统运行时被锁定,且受 SYSKEY 加密保护,无法直接读取。攻击者需要先获得管理员权限或物理访问。
3.2 Windows 10/11 内存中的明文密码
在 Windows 10 2012R2 之前版本中,系统会将登录密码的明文缓存在 lsass.exe 进程中。Mimikatz 可以直接读出来。
1 | # Mimikatz 一键抓取(需管理员权限) |
输出示例:
1 | Username : Administrator |
Windows 10 2012 R2 及更高版本默认禁用了内存明文缓存,但可以通过修改注册表重新开启:
1 | reg add HKLM\SYSTEM\CurrentControlSet\Control\SecurityProviders\WDigest \ |
3.3 离线破解:偷 SAM 文件
如果你有物理访问权限(或已获得管理员权限):
1 | # Step 1: 导出注册表 |
3.4 绕过登录:粘滞键后门
这是一条经典的物理绕过路径,不需要破解密码本身:
- 用 Windows PE U 盘启动
- 将
C:\Windows\System32\sethc.exe(粘滞键)替换为cmd.exe - 重启,在登录界面连按 5 次 Shift → 以 SYSTEM 权限打开命令提示符
net user Administrator NewPassword→ 密码被改了
Windows Defender 和 Secure Boot 可以防御此攻击,但很多老旧系统或配置不当的电脑仍然中招。
3.5 RDP 凭证窃取
如果你在远程桌面连接时勾选了「记住密码」,Windows 会用 MasterKey 将密码加密保存在:
1 | %userprofile%\AppData\Local\Microsoft\Credentials\ |
Mimikatz 可以从内存中提取 MasterKey 并解密这些凭据:
1 | mimikatz.exe "privilege::debug" "dpapi::cred /in:C:\Users\xxx\AppData\Local\Microsoft\Credentials\xxx" |
3.6 防御指南
现在就该做的:
- 使用 Windows Hello(PIN + TPM) 代替密码登录
- 不要勾选 RDP/浏览器/应用的「记住密码」
- 打开 Secure Boot
- 对高价值设备启用 BitLocker + TPM + PIN(见第七章)
- 管理员账户密码至少 14 位
四、手机锁屏密码:Android / iOS
4.1 两类系统的根本差异
| Android | iOS | |
|---|---|---|
| 加密模型 | 基于文件的加密(FBE),密钥由锁屏密码保护 | 硬件安全隔区(Secure Enclave),密码与加密绑定 |
| 绕过难度 | 厂商五花八门,漏洞多 | 极高,但可重置 |
| 数据保留 | 部分工具声称能保留数据 | 几乎所有方法都会擦除数据 |
4.2 Android 锁屏破解
方法一:Google 查找我的设备(远程擦除)
如果你知道 Google 账号密码,访问 android.com/find → 擦除设备 → 锁屏密码随数据一起被清除。数据会丢失。
方法二:ADB 删除密码文件(需事先开启 USB 调试)
如果之前开启了 USB 调试:
1 | adb shell rm /data/system/gesture.key # 图案锁 |
方法三:商业工具(如 Dr.Fone / DroidKit / PassFab)
原理是利用 Android 恢复模式(Download Mode)刷入解锁固件。支持的型号和 Android 版本有限,且可能丢失数据。费用 $30-$70。
方法四:利用 Find My Mobile(仅三星)
三星的 Find My Mobile 可以在不解锁屏幕的情况下远程解锁。前提是手机登录了三星账号且已开启该功能。
方法五:TWRP Recovery 删除密码
如果设备已安装 TWRP(第三方 Recovery)且 Bootloader 已解锁:
- 进入 TWRP → 文件管理器
- 导航到
/data/system/ - 删除
locksettings.db及相关.key文件 - 重启 → 锁屏消失
方法六:FRP(Factory Reset Protection)绕过
这是针对 Android 5.1+ 的「防盗保护」。恢复出厂设置后会要求输入之前的 Google 账号。理论上这是好设计,但每个 Android 版本都有 FRP 绕过漏洞被不断发现和修补。
4.3 iOS 锁屏破解
核心认知:现代 iPhone 无法「破解」——只能「重置」。
iOS 的 Secure Enclave 是一个独立的硬件安全芯片。锁屏密码和加密密钥绑定在一起。错误 10 次(如果开启了「抹掉数据」),所有数据自动销毁。
可行的路径:
| 方法 | 数据保留 | 前提条件 |
|---|---|---|
| 恢复模式 + Finder/iTunes | ❌ 全清 | 电脑 + 数据线 |
| iCloud 查找 → 抹掉 | ❌ 全清 | 知道 Apple ID 密码 |
| Apple Devices 应用(Windows) | ❌ 全清 | 电脑 + 数据线 |
| iOS 17 忘记密码 → 旧密码重设 | ✅ 保留 | 72 小时内刚改过密码 |
| iOS 15.2+ 锁屏直接抹掉 | ❌ 全清 | 连接网络、知道 Apple ID |
| 第三方工具(Passixer / MagFone) | ❌ 全清 | $30-$50 |
| Apple Watch 解锁 | ✅ 保留 | 提前设置、戴着手表 |
Apple Watch 解锁是最骚的一条路:戴口罩时,Apple Watch 可以解锁 iPhone。如果提前设置好了,戴上手表、戴上口罩、唤醒 iPhone —— 锁屏就打开了。然后你可以在「设置」中重设密码。
4.4 防御指南
现在就该做的:
- 使用 6 位或更长的 PIN(不要用 4 位数字)
- Android:不要解锁 Bootloader,不要开启「允许 OEM 解锁」
- Android:关闭 USB 调试(除非开发时需要)
- iPhone:开启「抹掉数据」(10 次错误自动清除)
- iPhone:记住你的 Apple ID 密码——它是最后的救命稻草
- 不要让手机离开视线——物理接触是绕过锁屏的前提
五、Wi-Fi 密码:你家路由器到底安全吗?
5.1 WEP / WPA / WPA2 / WPA3 一图看懂
| 协议 | 发布年份 | 加密 | 破解难度 |
|---|---|---|---|
| WEP | 1997 | RC4(静态 IV,24 位) | 秒破——抓几万个包就能算出密码 |
| WPA(TKIP) | 2003 | RC4 + TKIP | 比 WEP 好但已知攻击存在 |
| WPA2(AES-CCMP) | 2004 | AES-CCMP | 弱密码可字典破解 |
| WPA3 | 2018 | AES-GCMP + SAE | 离线字典攻击不再可行 |
5.2 WPA2 的四次握手与破解原理
WPA2 的致命弱点不在于 AES——而在于你可以抓取握手包做离线密码测试,而且没有速率限制。
1 | 四次握手核心过程: |
5.3 实战:WPA2 破解完整流程
准备工作: 需要一张支持监听模式(Monitor Mode)的无线网卡(如 Atheros AR9271、Realtek RTL8812AU 芯片的外置 USB 网卡)。
1 | # Step 0: 进入监听模式 |
5.4 PMKID 攻击——更快更静默
不需要客户端在线! 只要 AP 支持 PMKID(绝大多数都支持),直接向 AP 发送关联请求就能获取 PMKID,然后离线破解。
1 | sudo hcxdumptool -i wlan0mon --enable_status=1 -o pmkid.pcapng \ |
5.5 WPS PIN 攻击(老路由的致命漏洞)
WPS 的设计是用一个 8 位 PIN 码快速连接。但这个 PIN 码的验证方式有严重缺陷:最后一位是校验位(只剩 7 位有效),且 PIN 被分成两半验证——前 4 位和后 3 位各自独立验证。这意味着攻击者只需要试 10⁴ + 10³ = 11,000 次就能穷举 PIN。
1 | # Reaver 工具自动化攻击 |
防御:关闭路由器的 WPS 功能!
5.6 WPA3 也不完美
WPA3 修复了离线字典攻击(SAE 每次尝试都需要与 AP 在线交互),但引入了新攻击面:
- 过渡模式降级攻击: 很多路由器同时开 WPA2 + WPA3(过渡模式),攻击者可以伪装成「只支持 WPA2 的设备」迫使客户端降级到 WPA2
- Dragonblood 漏洞(已修补): SAE 协议的侧信道信息泄露
5.7 防御指南
现在就该做的:
- 立即关闭路由器的 WPS
- 使用 WPA2-AES 或 WPA3
- Wi-Fi 密码至少 12 位,含大小写字母+数字+符号
- 不要用「中文+数字」当密码(大部分字典覆盖不到,但如果攻击者定向生成就不安全)
- 开启路由器的 MAC 地址过滤(额外一层门槛,但不要当为主要防御)
- 定期查看路由器已连接设备列表
六、指纹识别:手机 / 门锁 / 笔记本
6.1 三种指纹传感器
| 类型 | 原理 | 破解难度 | 常见设备 |
|---|---|---|---|
| 电容式 | 测量指纹脊与谷的电容差异生成图像 | 中(硅胶指纹膜 + 导电材料可骗过) | 手机 Home 键、后置指纹、智能门锁 |
| 光学式 | 发光照亮指纹,反射光成像 | 低(高清照片经过处理即可) | 屏下光学指纹、老式门禁 |
| 超声波 | 发出超声波,不同深度反射波形不同 | 较高(需要 3D 模具) | 三星旗舰屏下指纹 |
6.2 指纹破解的三种路径
路径一:电容硅胶指纹膜
国家市场监管总局的官方实验室在 2023 年做过测试,77% 的受测智能手机被电容硅胶指纹膜成功解锁。测试结论:
“常见带有指纹识别功能的消费品大多数均可被电容硅胶指纹膜解锁……智能门锁与门禁的指纹头大多采用电容式指纹传感器,被电容硅胶指纹膜解锁成功率较高。”
制作流程(来自公开安全研究报告):
- 从玻璃杯、手机屏幕等表面提取残留指纹
- 用 Photoshop 处理提高清晰度
- 3D 打印模具 → 注入导电硅胶/织物胶水
- 将指纹膜贴在手指上按压传感器
路径二:导电胶带「指纹学习」攻击
2018 年央视报道的漏洞:将导电笔画了图案的透明胶带贴在指纹传感器上,机主正常解锁 3 次——手机会把胶带上的导电图案「学」进指纹模板。此后,任何人的手指(甚至橘子皮)都能解锁。原理是手机指纹匹配的相似度阈值过低(可能只需 20% 匹配)。
路径三:高清照片 + 打印
对于光学指纹传感器(很多屏下指纹手机),用足够高分辨率的指纹照片打印在透明胶片上,即可骗过传感器。
但说实话: 对普通人而言,被指纹膜攻击的概率极低——制作门槛高、需要定向采集指纹。更大的风险是:你手机被偷后,对方可以用你的锁屏密码(而不是指纹)重置指纹。
6.3 防御指南
现在就该做的:
- 重新录入指纹(如果担心胶带攻击)
- 查看指纹传感器上有没有被贴不明胶带/膜
- 手机重启后第一次解锁必须用密码(iOS 和大部分 Android 都是这样)——这是一个重要安全设计
- 智能门锁:选择带 3D 结构光人脸识别 + 指纹的双重验证
- 不要把指纹留在明显能拍摄到的玻璃表面
七、硬盘加密:BitLocker / FileVault / VeraCrypt
7.1 全盘加密的原理
全盘加密(FDE)在系统启动前加密整个硬盘,解密密钥由用户密码保护。
1 | 你的密码 → [KDF 密钥派生] → 解密 → 卷主密钥(VMK)→ 解密 → 全盘加密密钥(FVEK) |
关键问题: FVEK 在系统运行期间存储在 RAM 中。一旦 FVEK 离开 TPM 进入了内存,保护就降级了。
7.2 冷启动攻击(Cold Boot Attack)—— 全盘加密的阿克琉斯之踵
DRAM 内存芯片在断电后会逐渐丢失数据(数据残留效应)。如果把内存冷却到 -50°C(用一罐压缩空气倒过来喷就行),数据可以保留数分钟甚至数十分钟。
攻击流程:
- 拿到一台正在运行或处于睡眠状态的电脑
- 强制重启(拔电池或按电源键硬断电)
- 立即从 U 盘启动一个轻量级操作系统
- 转储 RAM 内容到文件
- 在内存转储中搜索 AES 密钥特征模式
- 用找到的 FVEK 解密整个硬盘
这个攻击对 BitLocker(TPM 模式)、FileVault、dm-crypt、VeraCrypt 全部有效,因为它不是攻击加密算法,而是攻击内存中还没被擦除的密钥。
7.3 BitLocker 的 TPM-only 陷阱
TPM-only 是 BitLocker 的默认配置。TPM 验证系统启动链未被篡改后,自动将 VMK 释放给操作系统——用户什么都不需要做,开机就直接进桌面。
这意味着: 一旦电脑被偷时处于关机状态,攻击者开机后 TPM 会正常释放密钥,然后冷启动攻击拿走 FVEK → 全盘解密。
微软自己的研究团队也在 2025 年发现了一种名为「BitUnlocker」的 BitLocker 全盘加密绕过技术,通过操纵早期启动条件和恢复环境来诱骗 TPM 释放密钥。
7.4 防御指南
现在就该做的:
- BitLocker 使用 TPM + PIN 模式:开机需要输入 PIN,没有 PIN 就没有密钥
- 离开电脑时关机(不是睡眠、不是休眠)
- 启用 Kernel DMA Protection(防止通过 Thunderbolt/FireWire 直接读内存)
- macOS 用户:FileVault 默认就安全——苹果强制要求用户密码才能解锁
- 如果必须用睡眠:将睡眠模式改为 S4(休眠),数据写入加密磁盘后断开内存供电
八、浏览器保存的密码:你的保险柜钥匙就在门垫下面
8.1 Chrome / Edge(Chromium 内核)
Chrome 将保存的密码加密存储在 SQLite 数据库中:
1 | %LocalAppData%\Google\Chrome\User Data\Default\Login Data |
加密用的是 AES-256-GCM——看起来很强。但:
加密密钥就放在同一个目录下的 Local State 文件中。
用记事本打开这个文件,搜索 encrypted_key,这就是你的密钥。
Chrome 依赖 Windows 的 DPAPI(Data Protection API) 来保护这个密钥。DPAPI 的加密绑定到当前登录的 Windows 用户——意味着任何以你身份运行的程序都可以调用 CryptUnprotectData() 函数解密这个密钥,然后打开你的密码数据库。
一句话总结:Chrome 把保险箱和钥匙放在同一个房间,然后用一个「谁来叫我开门就开门」的门锁。
Chrome 官方在 2013 年对此的回应是:「如果有人已经获取了你系统账户的访问权限,再多安全措施也无用。」——这更像甩锅。
v127 之后的新变化: Chrome 引入了「应用绑定加密」(App-Bound Encryption),Local State 中的密钥以 v20 前缀开头,解密需要注入 Chrome 进程上下文调用 IElevator COM 接口。门槛提高了,但对有管理员权限的攻击者来说仍然不是问题。
8.2 Firefox
Firefox 使用 Network Security Services(NSS)库 nss3.dll 进行加密。存储位置在用户配置文件夹(随机名称)下的 logins.json 和 key4.db。
差异: Firefox 提供了主密码功能——如果启用,所有密码必须先用主密码解锁,否则即使在同一用户下也无法读取。但默认情况下这个功能是关闭的。
8.3 浏览器的信息窃取木马产业
现实中,浏览器密码泄露的主要威胁不是有人坐在你电脑前手动操作,而是恶意软件。
信息窃取木马(Infostealer,如 Azorult、RedLine、Vidar)的工作流程:
- 通过钓鱼邮件 / 恶意下载安装到受害者电脑
- 找到 Chrome/Firefox/Edge 的数据目录
- 调用
CryptUnprotectData()自动解密所有保存的密码 - 连同浏览历史、Cookie、信用卡信息一起打包上传到攻击者服务器
- 通常在几秒内完成,用户毫无感知
Azorult 曾占所有 Trojan-PSW 类恶意软件攻击的 25% 以上。
8.4 防御指南
现在就该做的:
- 不要在浏览器中保存重要密码——改用密码管理器(见第九章)
- Firefox 用户:开启主密码
- 不要让不信任的人接触你的电脑
- 不要下载来路不明的 exe/msi
- 如果已经保存了密码:立即清空 Chrome 的「已保存密码」列表,全量迁移到 Bitwarden/KeePass
九、密码管理器主密码:零知识架构的最后防线
9.1 密码管理器的安全模型
以 Bitwarden 为例,密码管理器使用「零知识」架构:
1 | 你的主密码 |
关键设计:
- 服务器永远看不到你的主密码
- 解密只在你的客户端发生
- 即使 Bitwarden 服务器被入侵,攻击者只能拿到加密后的 blob
- 如果忘了主密码:永远找不回来(这正是安全性的保证)
9.2 破解密码管理器主密码
密码管理器的主密码一旦被破解,你的所有密码全部暴露——这是单点故障。
1 | # Bitwarden 导出(导出为未加密的 JSON 时,实为导出加密后的 .json 文件) |
Bitwarden 使用 PBKDF2-SHA256(默认 60 万轮迭代,可调至 200 万轮),比纯 NTLM(无 KDF)慢了很多,但 GPU 仍然能以每秒数千次的速度测试。
9.3 防御指南
现在就该做的:
- 主密码至少 16 位,不包含任何个人信息
- 用口令短语(passphrase)代替复杂密码:
correct-horse-battery-staple比Tr0ub4dor&3更好记也更安全- Bitwarden 用户:在设置中将 KDF 改为 Argon2id,迭代数拉到设备承受范围内的最高值
- 开启双因素认证(2FA)——即使主密码泄露,没有 2FA 也无法从新设备登录
- 主密码绝不在任何其他地方使用
十、SSH 私钥密码:你服务器的最后一关
10.1 SSH 私钥的加密机制
SSH 私钥可以设置一个密码短语(passphrase)来保护。即使私钥文件被偷,不知道密码短语也无法使用。
私钥文件的头部会标明加密方式:
1 | -----BEGIN OPENSSH PRIVATE KEY----- |
支持的加密算法:aes256-ctr、aes256-cbc、aes128-gcm@openssh.com 等。
10.2 破解 SSH 私钥密码
前提: 攻击者已经获取了你的私钥文件(通过 Git 泄露、服务器入侵、恶意软件等途径)。
1 | # Step 1: 将私钥转化为可破解的哈希 |
John the Ripper 对 SSH 的支持非常好——无论是 RSA、DSA、ECDSA 还是 Ed25519 密钥,格式统一用 --format=ssh。
10.3 私钥泄露的常见途径
- Git 仓库误提交: 全球每天都有私钥被 push 到 GitHub 公有仓库
- 服务器
/tmp目录残留 - 备份文件未加密
- ~/.ssh/ 目录被恶意软件扫描上传
10.4 防御指南
现在就该做的:
- SSH 私钥必须设置密码短语(passphrase)
- 使用 ssh-agent,只在会话开始时输入一次密码
- 生成 Ed25519 密钥(
ssh-keygen -t ed25519),比 RSA 更快更安全.gitignore中务必包含所有私钥格式(id_*、*.pem、*.key)- 定期轮换密钥(如同定期换密码)
- GitHub 用户:开启 Push Protection——push 时检测到私钥会自动拦截
十一、在线账号密码:攻击者的金矿
这一节不讲技术原理——因为在线服务的安全性完全取决于服务提供方和你的使用习惯,不是你能控制的加密算法。
11.1 凭据填充(Credential Stuffing)
最常见、最有效的攻击方式。
原理:你在 A 网站注册的账号密码,A 网站被拖库了(泄露)。攻击者拿到这组邮箱+密码,在你注册过的 B、C、D、E、F 网站全部试一遍。只要你在任何一个其他地方用了相同密码,账号就没了。
2023 年有 240 亿组凭据在地下论坛流通。
11.2 钓鱼攻击——绕过一切加密
不管你的密码多强,用了什么 2FA——如果你自己在假网站上输入了,加密就白做了。
现代钓鱼攻击越来越精致:
- 中间人反向代理(Evilginx 类): 攻击者的服务器在真实网站和你的浏览器之间做代理,你的登录请求被原封不动转发给真实网站,连 2FA 的 session cookie 一起偷走
- 同形异义攻击: arnazon.com(注意那个 n)vs amazon.com
- 短信钓鱼: 「您的快递配送失败,请点击链接更新地址」
11.3 防御指南
现在就该做的:
- 不同网站用不同密码——密码管理器帮你做到
- 开启 2FA——优先用 TOTP(Google Authenticator / Authy)或硬件密钥(YubiKey),其次才是短信验证码
- 收到链接先看域名——不要只看文字
- 定期检查 https://haveibeenpwned.com ——看你的邮箱是否在已知泄露中
- 密码管理器还可以帮你对每个网站生成随机密码
十二、工具速查表:你可以上手的实战工具
| 场景 | 工具 | 用途 | 难度 |
|---|---|---|---|
| 压缩包密码 | John the Ripper (rar2john/zip2john) + Hashcat | 提取哈希 + GPU 破解 | ⭐⭐ |
| 压缩包(PKZIP已知明文) | bkcrack | 12 字节已知明文反推密钥 | ⭐⭐⭐ |
| Office 文档 | office2john + Hashcat | 提取哈希 + 破解 | ⭐⭐ |
| Excel 工作表保护 | Passcovery / 手动编辑 XML | 秒移除 | ⭐ |
| PDF 密码 | pdf2john.pl + John | 提取哈希 + 破解 | ⭐⭐ |
| PDF 权限密码 | Smallpdf / iLovePDF 在线工具 | 秒移除 | ⭐ |
| Windows NTLM Hash | Mimikatz / Impacket + Hashcat | 提取 + GPU 破解 | ⭐⭐⭐ |
| Windows 密码绕过 | Windows PE U盘 + 粘滞键替换 | 物理绕过 | ⭐⭐ |
| 手机锁屏 | DroidKit / Dr.Fone / Android ADB | 商业工具或 ADB 操作 | ⭐⭐ |
| 手机远程擦除 | Google 查找我的设备 / iCloud 查找 | 远程重置 | ⭐ |
| Wi-Fi WPA2 | aircrack-ng 套件 + Hashcat | 抓握手包 + 字典破解 | ⭐⭐⭐ |
| Wi-Fi PMKID | hcxdumptool + Hashcat | 静默抓取 + 破解 | ⭐⭐ |
| 指纹测试 | 电容硅胶指纹膜材料 | 自制假指纹(仅限安全研究) | ⭐⭐⭐ |
| BitLocker 密钥提取 | Cold Boot 攻击工具 | 内存冷启动转储 + 密钥搜索 | ⭐⭐⭐⭐ |
| Chrome 密码提取 | Sharp-HackBrowserData / BrowserGhost | 本机密码解密提取 | ⭐⭐ |
| SSH 私钥 | ssh2john + John the Ripper | 提取哈希 + 字典破解 | ⭐⭐ |
| 泄露检测 | haveibeenpwned.com | 检查邮箱是否已泄露 | ⭐ |
十三、总结:普通人最少花费、最大收益的安全清单
如果你不想读前面一万字,以下是你现在就可以做的事——按重要性排序:
🔴 立刻做(今天,5 分钟)
- 关掉路由器 WPS → 登录路由器管理界面找到 WPS 设置,关掉
- 不同网站用不同密码 → 安装 Bitwarden,花 2 分钟注册
- 开启重要账号的 2FA → 邮箱、银行、支付平台至少开启 TOTP 或短信验证
- 清空浏览器保存的密码 → 全部迁移到 Bitwarden 后,逐条删除
🟡 本周做
- 修改 Wi-Fi 密码 → 至少 12 位混合
- BitLocker 加 PIN → 开启 TPM+PIN 模式
- Firefox 开主密码 → 设置 → 隐私与安全 → 主密码
- 检查 haveibeenpwned.com → 看你的邮箱/密码是否已泄露
🟢 本月做
- 所有加密压缩包都用 RAR5/7z 格式,密码 12 位以上
- SSH 私钥全部换成 Ed25519 + passphrase
- 手机 PIN 从 4 位改 6 位,iPhone 开抹掉数据
- 做一遍 Git 仓库安全审计:确认没有私钥、密码、token 被误提交
最后的最后:
密码系统的安全性 = 算法强度 × 实现正确性 × 人的使用习惯。
三个因子中,算法是最强的那个,人是最弱的那个。攻击者不是黑掉 AES-256 的,他们是黑掉那个用「password123」当万能密码的你。
花 30 分钟做好上面的清单,你就能防住 99% 针对普通人的攻击。剩下的 1% 是国家级对手——如果真有那一天,你需要的不再是这篇文章。
本文技术信息截止 2026 年 7 月,所有工具和方法仅适用于合法密码恢复和安全审计场景。