问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

SAM是何种文件格式?请指教!

发布网友 发布时间:2022-05-17 00:12

我来回答

3个回答

热心网友 时间:2023-09-15 23:54

SAM文件是WIN2000里面保存密码信息的文件

windows NT及win2000中对用户帐户的安全管理使用了安全帐号管理器(security account manager)的机制,安全帐号管理器对帐号的管理是通过安全标识进行的,安全标识在帐号创建时就同时创建,一旦帐号被删除,安全标识也同时被删除。安全标识是唯一的,即使是相同的用户名,在每次创建时获得的安全标识都时完全不同的。因此,一旦某个帐号被删除,它的安全标识就不再存在了,即使用相同的用户名重建帐号,也会被赋予不同的安全标识,不会保留原来的权限。

安全账号管理器的具体表现就是%SystemRoot%\\system32\\config\\sam文件。sam文件是windows NT的用户帐户数据库,所有NT用户的登录名及口令等相关信息都会保存在这个文件中。sam文件可以认为类似于unix系统中的passwd文件,不过没有这么直观明了。passwd使用的是存文本的格式保存信息,这是一个linux passwd文件内容的例子

0: root:8L7v6:0:0:root:/root:/bin/bash
1: bin:*:1:1:bin:/bin:
2: daemon:*:2:2:daemon:/sbin:
3: adm:*:3:4:adm:/var/adm:
4: lp:*:4:7:lp:/var/spool/lpd:
5: sync:*:5:0:sync:/sbin:/bin/sync
6: shutdown:*:6:0:shutdown:/sbin:/sbin/shutdown
7: halt:*:7:0:halt:/sbin:/sbin/halt
8: mail:*:8:12:mail:/var/spool/mail:
9: news:*:9:13:news:/var/spool/news:
10: uucp:*:10:14:uucp:/var/spool/uucp:
11: operator:*:11:0perator:/root:
12: games:*:12:100:games:/usr/games:
13: gopher:*:13:30:gopher:/usr/lib/gopher-data:
14: ftp:*:14:50:FTP User:/home/ftp:
15: nobody:I0iJ.:99:99:Nobody:/home/httpd:/bin/bash
16: david:c6CuzM:500:500::/home/david:/bin/bash
17: mmy:fIVTl4IgU:501:503::/home/mmy:/bin/bash
18: msql:!!:502:504::/home/msql:/bin/bash
unix中的passwd文件中每一行都代表一个用户资料,每一个账号都有七部分资料,不同资料中使用":"分割格式如下
账号名称:密码:uid:gid:个人资料:用户目录:shell
除了密码是加密的以外(这里的密码部分已经shadow了)其他项目非常清楚明了。
而NT中就不是这样,虽然他也是用文件保存账号信息,不过如果我们用编辑器打开这些NT的sam文件,除了乱码什么也看不到。因为NT系统中将这些资料全部进行了加密处理,一般的编辑器是无法直接读取这些信息的。注册表中的
HKEY_LOCAL_MACHINE\\SAM\\SAM
HKEY_LOCAL_MACHINE\\SECURITY\\SAM
保存的就是SAM文件的内容,在正常设置下仅对system是可读写的。

*** 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这样的破解软件,他能将口令字符串的两部分独立的破解,因此,破解上面所提到口令(10位),由于口令已经被分解为两部分破解,而后面的那部分口令由于只有3位,破解难度可想而知并不困难。实际的难度就在前面的七位口令上了。因此就NT而言,一个10位的口令与一个7位的口令相比并没有太高的安全意义。由此还可以了解:1234567*$#这样的口令可能还不如SHic6这样的口令安全。(关于如何设置安全口令的问题不是本文的范围,有兴趣的可以参考相关文章)
而正式的口令(加密NT版)是将用户的口令转换成unicode编码,然后使用MD4算法将口令加密。

NT之所以保留两种不同版本的口令是由于历史原因造成的,在一个纯NT的环境中应该将LAN manager口令关闭。因为LAN manager口令使用了较弱的DES密钥和算法,比较容易破解。相比较之下,使用较强加密算法的NT正式口令要安全些。
但是这两种口令的加密方法从总体上来说强度还是不足,因此,微软在win NT4的SP3之和以后的补丁中,提供了一个syskey.exe的小工具来进一步加强NT的口令。这个软件是可以选择使用的,管理员只要运行一下这个程序并回答一些设置问题就可以添加这项增强功能。(windows2000已经作为缺省安装设置了)
syskey被设计用来防止轻易获得SAM口令,它是如何工作的呢?
当syskey被激活,口令信息在存入注册表之前还进行了一次加密处理。然而,在机器启动后,一个旧的格式的信息还是会保存在内存中,,因为这个旧格式的口令信息是进行网络验证的所需要的。
可以这样认为:syskey使用了一种方法将口令信息搞乱。或者说使用了一个密钥,这个密钥是激活syskey由用户选择保存位置的。这个密钥可以保存在软盘,或者在启动时由用户生成(通过用户输入的口令生成),又或者直接保存在注册表中。由于没有官方的正式技术说明如何关闭syskey,所以syskey一旦启用就无非关闭,除非用启用syskey之前的注册表备份恢复注册表。

*** 将syskey激活后系统有什么发生了什么,如何关掉syskey呢?***

-1-

将syskey激活后,在注册表HKLM\\System\\CurrentControlSet\\Control\\Lsa下被添加了新的键值\'SecureBoot\'中保存了syskey的设置:
1 - KEY保存在注册表中
2 - KEY由用户登录时输入的口令生成
3 - KEY保存在软盘中
但是把主键删除或者把值设成0并没能将syskey关闭,看来还有其他的地方......

-2-
HKLM\\SAM\\Domains\\Account\\F 是一个二进制的结构,通常保存着计算机的SID和其他的描述信息。当syskey被激活后,其中的内容就变大了(大小大约是原来的两倍) 增加的部分估计是加密的KEY+一些标记和其他的数值,这些标记和数值中一定有一部分包括 SecureBoot 相同的内容。所以,在NT4(已安装SP6补丁包)将这些标记位设为0可能就可以关闭syskey了。在改变这些设置时系统给出了一个错误提示说明SAM和系统设置相互冲突,但是在重新启动计算机后,系统已经不再使用syskey了。

-3-
再win2000中还有另一个地方还存储着关于syskey的信息
HKLM\\security\\Policy\\PolSecretEncryptionKey\\
这也是一个二进制的结构,也是使用同样的存储方式,将这里相应部分同样设为0,syskey就已经从win2000中移除了。(如果这三部分修改出现错误(不一致),系统会在下次启动是自动恢复为默认值)

-4-
,然后就是口令信息部分。旧的口令信息是长度是16字节,但使用syskey后长度全部被增加到20字节。其中头四个字节看起来想是某种计数器,可能是历史使用记录计数器。奇怪的是,当syskey被激活时,他并不立即记录,而是在系统下次启动时才记录。而且,当密钥被改变时,口令信息似乎并没有相应更新。

热心网友 时间:2023-09-15 23:54

SAM文件基础知识

windows NT及win2000中对用户帐户的安全管理使用了安全帐号管理器(security account manager)的机制,安全帐号管理器对帐号的管理是通过安全标识进行的,安全标识在帐号创建时就同时创建,一旦帐号被删除,安全标识也同时被删除。安全标识是唯一的,即使是相同的用户名,在每次创建时获得的安全标识都时完全不同的。因此,一旦某个帐号被删除,它的安全标识就不再存在了,即使用相同的用户名重建帐号,也会被赋予不同的安全标识,不会保留原来的权限。

安全账号管理器的具体表现就是%SystemRoot%\system32\config\sam文件。sam文件是windows NT的用户帐户数据库,所有NT用户的登录名及口令等相关信息都会保存在这个文件中。sam文件可以认为类似于unix系统中的passwd文件,不过没有这么直观明了。

SAM文件是WIN2000里面保存密码信息的文件

热心网友 时间:2023-09-15 23:55

SAM文件是WIN2000里面保存密码信息的文件
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
想你花就开了是什么意思 ...轻弹簧下端固定在水平面上.一个小球从弹簧正上方某一高度处由静止... ...弹簧下端固定在水平地面上,质量为m的小球从轻弹簧的正上方某一高处... ...一竖直弹簧下端固定于水平地面上,小球从弹簧的正上方高为h的地方自... ...结婚证,孩子户口也在女方家,男方可以要求拿抚养权吗? 小男孩适合戴哪些翡翠小男孩适合戴什么翡翠 产后尿道口痛是什么原因 产后尿道口疼怎么回事 ...同种点电荷连线上和中垂线上电势的变化规律 办理北京银行需要什么手续 温开水兑蜂蜜喝了能不能养胃 若是买苹果官方MFI认证数据线,选择哪个品牌好? 苹果MFi认证数据线各位知道多少?想选个可靠的品牌。 手机如何下载同步推软件 同步推下载的免费的那种,都可以玩吗?完整吗?谢谢 黔农云怎么转账到支付宝 ipad2。 同步推越狱版为什么有些软件不能免费下载?就是右边那个免费下载按钮是灰色的 怎么在贵州交通app上看车辆行驶证有效期? 黔农云上未认证用户是什么意思? 农商互联云平台是做什么的? 为什么同步推里的有些软件不能免费下载 得给每个日期前加个2020. 怎样一下都弄上? 日期是2020年7月02日,保质期10个月过期了吗? 请问2020年什么日期什么时间立春? 有关◆传奇3◆的问题,高手进(满意追加分数) 延世大学离SM公司多远? 俄罗斯精简狂人win7怎么安装 有没有无任何精简的win7系统 http://smzt.aiyou521.com/6960-55297.html?ssrc=2&sc=168648065&spl=52tian.net&skwid=0该网页里歌是啥 10-01-2020日期怎么解读? sam是什么格式 怎么把文本文档sam文件格式 python有什么可以读写SAM格式的库吗 SAM文件的破解 忘了密码 LMHOSTS.SAM文件在哪里啊 篮球护指带在哪个手指上好?(左手好还是右手好?) 篮球护指套哪几根手指 1feet是多少厘米 打篮球时戴护指有用吗? 打篮球的人手指上套的是什么,有什么用? 篮球中的护指有什么用? 打比赛中怎么让自己不累, 每次进攻费多少力?我们这打40分钟 小孩几岁能去电影院看电影 宝宝多大可以去电影院看电影合适 几岁宝宝可以去电影院看电影 多大的孩子可以去电影院看电影? 涂宇星这个名字怎么样? 上海星宇涂料厂有限公司怎么样? 有好玩的手游吗,要回合制的,不花钱的 告知 有哪些回合制手游 不花钱耐玩的