针对口令强度攻击
字典攻击
把使用概率高的口令用不同的变异规则组成猜测字典。
强力攻击
用足够快的计算机尝试所有可能的口令。
组合攻击
在字典单词末尾串接任意字母和数字,介于字典攻击和强力攻击之间。
撞库攻击
收集已泄露的用户名和密码,登录其他网站(利用很多人只有一套用户名和密码)。
彩虹表攻击
彩虹表是一种破解哈希算法的技术,也用于跨平台破解密码,主要用于破解HASH、MD5等。基于内存-时间衡量方法,通过用内存换时间,提高破解率和破解速度。
针对口令存储攻击
针对缓存口令
进行用户身份验证时,必须把口令或者口令的密文加载到内存中,所以可以通过搜索内存空间获得缓存的口令。口令记忆功能同理利用。
针对口令文件
获取口令存储文件(通常存的是口令密文),离线暴力破解。
- Linux的shadow存储的密码字段有3个部分:使用的算法、salt和密码哈希。通常采用多轮哈希来避免暴力攻击。salt可以缓解字典攻击和彩虹表攻击,因为salt是随机的,导致无法预计算哈希值。
- Windows的SAM的保护措施:
1)SAM文件锁定:操作系统运行期间,SAM被system账号锁定,管理员权限也无法访问。
2)隐藏:SAM在注册表中的备份是被隐藏的。
3)不可读:系统保存SAM文件时经过压缩处理,不具有可读性。 - NTLM认证协议:win7采用的密码加密机制,第一步把口令转换为unicode字符串,第二步用MD4对口令进行单向哈希,生成16字节哈希值。NTLMv2增加了双向验证功能。
针对口令传输攻击
口令嗅探
被动攻击方式,目标难以察觉。嗅探器可以是软件或硬件,他把系统的网络接口设为混杂模式,可以监听所有流经同一以太网网段的数据包。嗅探程序把所有捕获的数据存入log文件,等待攻击者下载。注意嗅探主机和被监听主机必须在同一网段上,嗅探程序必须用管理员身份运行。
键盘记录
键盘记录好处是可以在口令加密和传输之前就可以得到明文密码。
- 硬件截获
修改主机键盘接口(PS/2或USB),使之在向主机传递IO数据时将信息发送给攻击者。 - 软件截获
通常作为木马功能的一部分,通过监视操作系统处理键盘输入的接口,记录键盘输入内容后发给远程攻击者。
网络钓鱼
重放攻击
- 简单重放
监听双方通信内容并记录,之后进行重放。 - 反向重放
比如AB之间确定了一种挑战应答方式,攻击者没有A的合法账号,用A给B发出请求,B返回一个挑战值,攻击者不知道合法应答方式所以暂时将这个会话挂起;等B向A发出请求时,A把先前收到的挑战值发给B,B会返回正确的应答。所以A把B的应答值再发给B,即可通过B的挑战验证。
防止口令猜测
- 关闭不需要的服务和端口
- 硬盘分区采用NTFS格式:支持大容量文件和超大分区,还包括长文件名、压缩分区、事件追踪、文件索引、高容错性、数据保护和恢复、加密访问等。但是会记录详细的硬盘读写操作,因此对于闪存会有很大的负担和伤害。