网络攻防技术:口令攻击
01 口令与身份认证
口令(密码)是身份认证中最基础、最广泛使用的要素。
口令攻击的三大分类
根据攻击目标和手法的不同,口令攻击可分为三类:
- 针对口令强度的攻击:利用弱口令或通过计算手段破解口令
- 针对口令存储的攻击:从存储位置直接获取口令或口令表示
- 针对口令传输的攻击:在口令传输过程中截获或窃听
这三类攻击构成完整的口令攻击链条,攻击者会根据目标情况选择最有效的攻击路径:
02 针对口令强度的攻击
强口令与弱口令
弱口令通常具有以下特征:
- 长度过短(少于8个字符)
- 使用常见词汇(如password、admin)
- 纯数字或纯字母组合
- 使用个人公开信息(生日、姓名)
- 默认口令或空口令
强口令的特点:
- 长度至少12个字符
- 混合大小写字母、数字和特殊符号
- 不包含字典词汇或个人信息
- 随机性强,难以预测
针对口令强度的攻击方法
1. 暴力破解攻击
尝试所有可能的字符组合,直到找到正确口令。
- 原理:数学上的穷举法
- 效率:受口令长度和字符集影响极大
- 示例:4位纯数字口令仅需最多10000次尝试
2. 字典攻击
使用预定义的单词列表进行尝试,而非随机组合。
- 原理:利用人们偏好使用实际单词的习惯
- 效率:比暴力破解高效得多,成功率惊人
- 现代字典:包含多种语言单词、常见组合、泄露口令等
3. 组合攻击
字典攻击的变种,在字典单词前后添加前缀和后缀。
- 原理:针对"Password123!"这类复杂化简单密码
- 技巧:添加常见数字(123、2024等)和特殊符号(!、@、#)
4. 撞库攻击
利用从其他服务泄露的口令尝试登录目标服务。
- 原理:人们习惯在不同服务使用相同口令
- 规模:自动化工具可同时测试数亿个凭证组合
- 防御:使用不同口令 for 不同服务

通过预计算的口令哈希链,在空间和时间之间取得平衡。
- 原理:使用时间-空间权衡技术破解哈希值
- 效果:可快速破解大多数简单口令的哈希
- 应对:加盐哈希可有效防御彩虹表攻击
Windows系统远程口令猜解
基于IPC的远程口令猜解
IPC(进程间通信)共享是Windows早期版本中的常见功能。
- 攻击原理:通过尝试建立IPC连接测试口令
- 利用工具:Legion、SMBrute等
- 现代防护:现代Windows版本已加强IPC安全
基于Terminal Service的远程口令猜解
针对远程桌面服务的攻击。
- 攻击原理:暴力尝试RDP服务登录凭证
- 特点:可直接获取图形化界面访问权限
- 防护:限制登录尝试次数、使用网络级认证
03 针对口令存储的攻击
针对口令存储的攻击方法
1. 针对缓存口令的攻击
操作系统会缓存部分口令或凭证以便后续验证。
- Windows认证缓存:域凭证缓存可被工具提取
- Linux:sudo缓存、密钥环等可能成为目标
- 工具:mimikatz是著名的Windows凭证提取工具
2. 针对口令文件的攻击
获取存储口令哈希的文件进行离线破解。
- Windows SAM文件:存储本地账户口令哈希
- Linux /etc/shadow文件:存储用户口令哈希
- 攻击路径:通过系统漏洞或物理访问获取文件
3. 口令的其他存储位置
- 注册表:Windows注册表中可能存储各种服务的口令
- 配置文件:应用配置文件常含数据库连接字符串
- 内存:运行中的进程内存可能包含明文口令
Windows系统账号口令攻击
SAM文件提取与破解:
- 通过离线访问或卷影副本获取SAM和SYSTEM文件
- 使用工具提取口令哈希值
- 使用彩虹表或暴力破解还原明文口令
LSASS进程内存提取:
- 获取系统级权限
- 从LSASS进程内存中提取登录会话信息
- 可能获得明文口令或可重用的令牌
04 针对口令传输的攻击
口令嗅探
在网络传输过程中截获包含口令的数据包。
- 技术:ARP欺骗、交换机端口镜像、无线监听
- 目标协议:FTP、Telnet、HTTP等明文传输协议
- 防护:使用加密协议(SSH、HTTPS、VPN)
键盘记录
通过恶意软件记录用户的键盘输入。
- 类型:软件键盘记录器和硬件键盘记录器
- 传播途径:恶意邮件附件、捆绑软件、漏洞利用
- 检测难点:难以被传统防病毒软件发现
网络钓鱼
通过伪装成可信实体诱骗用户主动提供口令。
- 形式:伪造登录页面、紧急安全通知、账户验证请求
- 技术:域名混淆、内容欺骗、社会工程学
- 演进:鱼叉式钓鱼、短信钓鱼、语音钓鱼

重放攻击
截获合法的认证数据并在后续重新发送。
- 原理:不尝试破解口令,而是重用认证会话
- 目标:基于挑战-响应认证的系统
- 防护:使用时间戳、随机数、一次性令牌
05 口令攻击的防范:构建全方位的防护体系
技术防护措施
强化口令策略
- 复杂度要求:强制使用混合字符类型
- 最小长度:至少12个字符
- 定期更换:90天强制更换,但避免过度频繁更换
- 口令历史:防止重复使用近期口令
多因素认证
- 因素组合:结合知识因素、拥有因素和固有因素
- 认证应用:Google Authenticator、Microsoft Authenticator
- 硬件令牌:YubiKey等物理安全密钥
- 生物识别:指纹、面部识别、虹膜扫描
账户锁定策略
- 失败尝试限制:5-10次失败尝试后暂时锁定账户
- 锁定时间:逐渐增加的锁定持续时间
- 异常检测:基于地理位置、设备指纹的智能检测
加密与哈希加固
- 加盐哈希:为每个口令添加随机盐值
- 自适应哈希:bcrypt、scrypt、Argon2等抗ASIC算法
- 传输加密:全程TLS/SSL加密,禁用老旧协议
管理防护措施
安全意识培训
- 口令教育:培训创建强口令的技巧
- 钓鱼识别:定期进行钓鱼演练和测试
- 策略宣传:确保员工理解并遵守安全策略
技术管控
- 权限最小化:按需分配权限,避免过度授权
- 日志监控:全面记录和监控认证相关事件
- 定期审计:检查口令强度、重复使用情况
结语
口令安全是一场永无止境的攻防博弈。技术手段可以解决大部分问题,但最终的安全仍取决于人的意识与习惯。