密码管理与破解技术详解
1. 密码存储概述
Unix 类操作系统长期使用扁平文件来存储用户信息,最初这些信息都存于 /etc/passwd 文件中。但不同系统实用程序需引用该文件来查找与文件信息和用户名关联的用户标识号,而操作系统实际使用的是与用户名关联的用户标识号。与使用长字符串作为 SID 的 Windows 系统不同,像 Linux 这样的 Unix 类系统使用数字,且通常数值不大,例如 Kali Linux 和 Ubuntu 的用户 ID 从 1000 开始,其他实现可能从 500 开始。
为解决 passwd 文件需被无 root 权限的系统实用程序访问的问题,创建了影子文件(shadow file)。若任何人都能读取存储实际密码哈希值的文件,就可能获取哈希值并尝试破解密码。于是密码从 passwd 文件中分离出来,存于影子文件中。影子文件存储用户名、密码以及与密码相关的其他信息,如上次密码更改时间和下次需更改的时间。
以下是 Kali 系统上影子文件的部分示例:
polkitd:!*:19572::::::
rtkit:!:19572::::::
colord:!:19572::::::
nm-openvpn:!:19572::::::
nm-openconnect:!:19572::::::
kilroy:$y$j9T$S.C3jLr76P6HuMi3PUCQC/$ytE1tyv98Nme4XzxdL0ez42HKcFDTNUt
IQSPeTSrbn4: ↩
19572:0:99999:7:::
_gophish:!:19572::::::
D
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



