『第 5 楼』:
使用 LLM 解释/回答一下
标 题: Re: 有NT的SAM文件,怎么得到密码?
机器就在身边,可以取得sam文件?
意味着what?
就是说有Admin权限的用户在上面,你不想改密码,也不想创建用户
只想取得当前用户的密码?or 更多的密码?
:
因为nt(2k)为了方便一些网络功能使用,当前用户的密码是放在了内存中的.
所以可以很轻松的从内存中读取到当前用户的密码,有一个psdump的软件
可以做到这一点.o,shit,太不负责任了,nt怎么能这样呢?如果你把这个psdump
做成服务的话,也就是每一个登陆的用户都会很轻松暴露自己的密码,<img src="images/smilies/face-laugh.png" align="absmiddle" border="0">)shrug
还是意味着你在其他系统下,可以读取sam文件?
因为nt或者2k在使用状态是不能读取sam文件的.至多可以读dump过的sam_文件.
如果是用了syskey的2k的话,你只能通过辅助软件绕过syskey取得sam的哈希表
:
如果你想得到sam文件中所有用户的密码,用l0phtcrack跑吧,比较容易跑出来.
nt用DES的算法来加密sam是极其不负责任的,对当前我们能够拥有的pc的能力
来说,暴力破解一个sam文件只需要有限的时间.(我目前能作到的是2week)
前提是用户的密码设置足够复杂.够的上安全密码的话,也不过2周.
因为2000最多支持14位长度密码
但应该是7位或者14位理论上为最安全
简单的看sam文件是如何储存密码的吧?
:
*** NT的帐号信息在SAM文件中是如何存储的呢?***
在SAM文件中保存了两个不同的口令信息:LanManager(LM)口令散列算法和更加强大的
加密NT版。LM就是NT口令文件的弱点。我们来看看LM口令算法是如何加密口令的,考虑
这样一个口令:Ba01cK28tr,这样的口令已经可以称的上是一个安全的口令了,虽然没
有!#等特殊字符,但是已经包含大写字母,小写字母和数字,并且具有无规律性。可以
认为是符合安全的要求的一个口令。
LM对口令的处理方法是:如果口令不足14位,就用0把口令补足14位,并把所有的字
母转称大写字母。之后将处理后的口令分成两组数字,每组是7位。刚才我们所提到的
口令经处理后就变成BA01CK2和8TR0000部分。然后由这两个7位的数字分别生成8位的
DES KEY,每一个8位的DES
KEY都使用一个魔法数字(将0x4B47532140232425用全是1的一个KEY进行加密获得的)再
进行一次加密,将两组加密完后的字符串连在一起,这就是最终的口令散列。这个字
符传看起来是个整体,但是象L0phtcrack这样的破解软件,他能将口令字符串的两部
所以,一个安全的win2k的密码应该是7位或者14位,并且在7位中要包含数字,字母和
特殊字符,而且分布要在键盘上尽量的均匀无序,例如:W4x;!i0
这样一个密码的安全期限对于我目前拥有的机器的破解能力来说是2个星期左右。
也就意味着你在2个星期以内应该换一次密码,<img src="images/smilies/face-laugh.png" align="absmiddle" border="0">)
如果对方的密码不幸的话,设置并不合理,可能你只许要几个小时就ok了,<img src="images/smilies/face-laugh.png" align="absmiddle" border="0">)
【 在 lucida (^ōō^凶猛) 的大作中提到: 】
建议放弃
有lc3可以算,但是是暴力破解
数据量巨大
【 在 freebsdnewer (我爱freebsd) 的大作中提到: 】
: 机器就在身边,但没有管理员密码,也没有用户密码,可以读SAM文件,
: 有什么办法吗?是用chntpw软件吗?
|