SAM文件是WIN2000里面保存密码信息的文件
windowsNT及win2000中对用户帐户的安全管理使用了安全帐号管理器(securityaountmanager)的机制,安全帐号管理器对帐号的管理是通过安全标识进行的,安全标识在帐号创建时就同时创建,一旦帐号被删除,安全标识也同时被删除。安全标识是唯一的,即使是相同的用户名,在每次创建时获得的安全标识都时完全不同的。因此,一旦某个帐号被删除,它的安全标识就不再存在了,即使用相同的用户名重建帐号,也会被赋予不同的安全标识,不会保留原来的权限。
安全账号管理器的具体表现就是%SystemRoot%\system32\config\sam文件。sam文件是windowsNT的用户帐户数据库,所有NT用户的登录名及口令等相关信息都会保存在这个文件中。sam文件可以认为类似于unix系统中的passwd文件,不过没有这么直观明了。passwd使用的是存文本的格式保存信息,这是一个linuxpasswd文件内容的例子
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:FTPUser:/home/ftp:
15:nobody:I0iJ:99:99:Nobody:/home/>
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位的DESKEY,每一个8位的DESKEY都使用一个魔法数字(将用全是1的一个KEY进行加密获得的)再进行一次加密,将两组加密完后的字符串连在一起,这就是最终的口令散列。这个字符传看起来是个整体,但是象L0phtcrack这样的破解软件,他能将口令字符串的两部分独立的破解,因此,平馍厦嫠岬娇诹10位),由于口令已经被分解为两部分破解,而后面的那部分口令由于只有3位,破解难度可想而知并不困难。实际的难度就在前面的七位口令上了。因此就NT而言,一个10位的口令与一个7位的口令相比并没有太高的安全意义。由此还可以了解:1234567$#这样的口令可能还不如SHic6这样的口令安全。(关于如何设置安全口令的问题不是本文的范围,有兴趣的可以参考相关文章)
而正式的口令(加密NT版)是将用户的口令转换成unicode编码,然后使用MD4算法将口令加密。
NT之所以保留两种不同版本的口令是由于历史原因造成的,在一个纯NT的环境中应该将LANmanager口令关闭。因为LANmanager口令使用了较弱的DES密钥和算法,比较容易破解。相比较之下,使用较强加密算法的NT正式口令要安全些。
但是这两种口令的加密方法从总体上来说强度还是不足,因此,微软在winNT4的SP3之和以后的补丁中,提供了一个syskeyexe的小工具来进一步加强NT的口令。这个软件是可以选择使用的,管理员只要运行一下这个程序并回答一些设置问题就可以添加这项增强功能。(windows2000已经作为缺省安装设置了)
syskey被设计用来防止轻易获得SAM口令,它是如何工作的呢?
当syskey被激活,口令信息在存入注册表之前还进行了一次加密处理。然而,在机器启动后,一个旧的格式的信息还是会保存在内存中,因为这个旧格式的口令信息是进行网络验证的所需要的。
可以这样认为:syskey使用了一种方法将口令信息搞乱。或者说使用了一个密钥,这个密钥是激活syskey由用户选择保存位置的。这个密钥可以保存在软盘,或者在启动时由用户生成(通过用户输入的口令生成),又或者直接保存在注册表中。由于没有官方的正式技术说明如何关闭syskey,所以syskey一旦启用就无非关闭,除非用启用syskey之前的注册表备份恢复注册表。
将syskey激活后系统有什么发生了什么,如何关掉syskey呢
-1-
将syskey激活后,在注册表HKLM\System\\Control\Lsa下被添加了新的键值'SecureBoot'中保存了syskey的设置:
1-KEY保存在注册表中
2-KEY由用户登录时输入的口令生成
3-KEY保存在软盘中
但是把主键删除或者把值设成0并没能将syskey关闭,看来还有其他的地方
-2-
HKLM\SAM\Domains\Aount\F是一个二进制的结构,通常保存着计算机的SID和其他的描述信息。当syskey被激活后,其中的内容就变大了(大小大约是原来的两倍)增加的部分估计是加密的KEY一些标记和其他的数值,这些标记和数值中一定有一部分包括SecureBoot相同的内容。所以,在NT4(已安装SP6补丁包)将这些标记位设为0可能就可以关闭syskey了。在改变这些设置时系统给出了一个错误提示说明SAM和系统设置相互冲突,但是在重新启动计算机后,系统已经不再使用syskey了。
-3-
再win2000中还有另一个地方还存储着关于syskey的信息
HKLM\security\Policy\\
这也是一个二进制的结构,也是使用同样的存储方式,将这里相应部分同样设为0,syskey就已经从win2000中移除了。(如果这三部分修改出现错误(不一致),系统会在下次启动是自动恢复为默认值)
-4-
,然后就是口令信息部分。旧的口令信息是长度是16字节,但使用syskey后长度全部被增加到20字节。其中头四个字节看起来想是某种计数器,可能是历史使用记录计数器。奇怪的是,当syskey被激活时,他并不立即记录,而是在系统下次启动时才记录。而且,当密钥被改变时,口令信息似乎并没有相应更新。
gee引擎sql数据库打开步骤如下。找到要打开的数据库文件,该数据库文件后缀名为mdf,是SQLServer数据库的数据文件,这里将用SQLServer数据库对该文件进行打开。启动SQLServer数据库,启动SQLServerManagementStudio时的界面,登录后管理数据库数据。开启之后的界面如图提示用户输入用户名和登录密码,输入正确后,点击登录,进入管理界面,进入管理界面后,右键选择数据库,再选择附加功能,点击附加后,出现窗口,在附加数据库窗口中,点击添加按钮,提示选择要附加的数据库,选种要添加的数据库,点击确定,在管理界面中会出现添加的数据库打开数据库,就可以看到数据库中的表,表中的数据都可以看到。
作用如下:
一、系统表存储SQL所有的系统信息。
存储有关数据库服务中的元数据所谓元数据即(比如数据服务器有哪些用户数据库、数据库服务器有哪些登陆账号,数据库中都有哪些表,每个表都有哪些字段每个数据库有哪些存储过程、视图等等的数据),系统表一般sys开头。
二、了解数据库中系统表,可以编写sql语句或编程的时候用到。
在创建数据库的时候选判断数据库是否存在;创建数据库中对象(表、视图、存储过程、索引等)是否存在,存在返回,不存在则执行创建语句。批量删除数据库中对象,比如一次性删除某个具体数据库中的所有用户创建的表、视图、索引等对象。
三、重要的几个系统表
Sysxlogins:存在与Master数据库中,(所有数据库中用户和角色),记录着所有能登陆到Sqlserver的帐号。要重启服务或reconfigurewithoverride,:记录着当前系统所有的数据库。只有Master数据中有此系统表。
扩展资料:
一、数据库优点:
1、易于维护:都是使用表结构,格式一致;
2、使用方便:SQL语言通用,可用于复杂查询;
3、复杂 *** 作:支持SQL,可用于一个表以及多个表之间非常复杂的查询。
二、数据库缺点:
1、读写性能比较差,尤其是海量数据的高效率读写;
2、固定的表结构,灵活度稍欠;
3、高并发读写需求,传统关系型数据库来说,硬盘I/O是一个很大的瓶颈。
数据库是用来存储数据的,一般软件各自维护自己的数据库,当然,电脑上可以安装数据库服务的,这样就对外开放数据库服务了,一些软件就可以用你的数据库了,简单的说:比如你家有一个空房子,然后你想对外出租,于是你去打广告,这个时候你的房子就是你的数据库了
谁需要的话就要跟你联系
成功了他就可以用这个房子了
但是你的房子是有限的,数据库的大小看你的硬盘了
数据库启动不启动是看你想不想出租房子的,比如你又不做开发软件,也就上上网,聊聊天的,根本不需要装数据库软件
Microsoft® SQL Server™ 2000
使用一组 *** 作系统文件映射数据库。数据库中的所有数据和对象(如表、存储过程、触发器和视图)都存储在下列 *** 作系统文件中:
主要
该文件包含数据库的启动信息,并用于存储数据。每个数据库都有一个主要数据文件。
次要
这些文件含有不能置于主要数据文件中的所有数据。如果主文件可以包含数据库中的所有数据,那么数据库就不需要次要数据文件。有些数据库可能足够大故需要多个次要数据文件,或使用位于不同磁盘驱动器上的辅助文件将数据扩展到多个磁盘。
事务日志
这些文件包含用于恢复数据库的日志信息。每个数据库都必须至少有一个日志文件。
例如,创建简单的数据库 sales
时,可以只使用一个包含所有数据和对象的主文件和一个包含事务日志信息的日志文件。另一种情况是,创建更复杂的数据库 orders
时,可以使用一个主文件和五个辅助文件,数据库内的数据和对象扩展到所有的六个文件中,另外有四个日志文件包含事务日志信息。
文件组允许对文件进行分组,以便于管理和数据的分配/放置。例如,可以分别在三个硬盘驱动器上创建三个文件(Data1ndf、Data2ndf
和 Data3ndf),并将这三个文件指派到文件组 fgroup1 中。然后,可以明确地在文件组 fgroup1
上创建一个表。对表中数据的查询将分散到三个磁盘上,因而性能得以提高。在
RAID(独立磁盘冗余阵列)条带集上创建单个文件也可以获得相同的性能改善。然而,文件和文件组使您得以在新磁盘上轻易地添加新文件。另外,如果数据库超过单个
Microsoft Windows NT® 文件的最大大小,则可以使用次要数据文件允许数据库继续增长。
文件和文件组的设计规则
文件和文件组的设计规则包括:
文件或文件组不能由一个以上的数据库使用。例如,文件 salesmdf 和 salesndf 包含 sales
数据库中的数据和对象,任何其它数据库都不能使用这两个文件。
文件只能是一个文件组的成员。
数据和事务日志信息不能属于同一文件或文件组。
事务日志文件不能属于任何文件组。
1、首先我们需要下载安装好phpstudy,下载安装教程在我的上一个经验中,然后我们点击启动按钮。
2、启动之后我们需要打开我们的phpmyadmin,这时候我们点击mysql管理器,选择phpmyadmin,点击打开
3、打开之后我们会看到这样一个登录界面,这个帐号和密码是由phpstudy这个软件默认的,帐号和密码都是root,我们正确输入后点击登录
4、登陆之后我们就可以进行管理我们的PHPmyadmin了,如果想要新建一个数据库的话,点击左上角的数据库,然后输入想要创建的数据库名称,选择格式,点击创建就可以了
5、如果想要创建一个数据表的话,就点进一个数据库,然后输入数据表名称和字段,点击新建就可以新建数据表了。
6、PHPmyadmin是一个非常好用的数据库的管理方式,大家可以多研究一下
phpStudy是一个PHP调试环境的程序集成包。该程序包集成最新的Apache+PHP+MySQL+phpMyAdmin+ZendOptimizer,一次性安装,无须配置即可使用,是非常方便、好用的PHP调试环境。该程序不仅包括PHP调试环境,还包括了开发工具、开发手册等。
phpMyAdmin是一个以PHP为基础,以Web-Base方式架构在网站主机上的MySQL的数据库管理工具,让管理者可用Web接口管理MySQL数据库。借由此Web接口可以成为一个简易方式输入繁杂SQL语法的较佳途径,尤其要处理大量资料的汇入及汇出更为方便。其中一个更大的优势在于由于phpMyAdmin跟其他PHP程式一样在网页服务器上执行,但是您可以在任何地方使用这些程式产生的HTML页面,也就是于远端管理MySQL数据库,方便的建立、修改、删除数据库及资料表。也可借由phpMyAdmin建立常用的php语法,方便编写网页时所需要的sql语法正确性。
以上就是关于Cain&Abel如何获取SAM数据库(菜鸟驿站)全部的内容,包括:Cain&Abel如何获取SAM数据库(菜鸟驿站)、gee引擎sql数据库怎么打开、SQLSERVER数据库到底有什么具体作用(sql数据库的作用)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)