尽管现在可以选用许多方法进行用户身份验证,但多数用户仍然通过在键盘上结合输入用户名和密码来登录自己的计算机和远程计算机。某些产品使用了生物统计学、智能卡和一次性密码等更加安全的技术,而这些技术对于所有常用操作系统都可用;但实际情况是许多组织仍旧依赖于密码,并会在未来数年内维持现状。用户常常拥有许多不同的计算机帐户,分别用在工作、手机、银行、保险公司等各个方面。为简化密码的记忆任务,用户经常在每个系统中使用相同或相似的密码,而且多数用户会在允许的情况下选择简单易记的密码,例如自己的生日、母亲的娘家姓名或亲戚的姓名。对于攻击者来说,简短密码相对容易破解。攻击者用以破解受害者密码的部分常用方法包括:
· 猜测 - 攻击者企图通过反复猜测可能的字词(例如用户子女的姓名、用户的出生城市和当地运动队等)来使用用户帐户完成登录。
· 联机字典攻击 - 攻击者使用包括字词文本文件的自动程序。通过每次尝试时使用文本文件中的不同字词,该程序反复尝试登录目标系统。
· 脱机字典攻击 - 类似于联机字典攻击,攻击者获得存储哈希处理或加密处理后的用户帐户与密码的文件的副本,然后使用自动程序来破解每个帐户的密码。如果攻击者已经设法获得了密码文件的副本,此类攻击便可迅速完成。
· 脱机蛮力攻击 - 此类攻击是字典攻击的变体,但此类攻击的宗旨是破解字典攻击所用文本文件中可能没有包括的密码。尽管可以在联机状态下尝试蛮力攻击,但出于网络带宽和网络等待时间,一般是在脱机状态下使用目标系统密码文件的副本来实施此类攻击。在蛮力攻击中,攻击者将使用自动程序生成所有可能的密码的哈希值或加密值,然后将这些值与密码文件中的值进行比较。
通过使用强密码,可以显著降低所有这些攻击方法的速度,或甚至击退这些攻击。因此只要可能,对于自己的计算机帐户,计算机用户都应使用强密码。运行基于 Microsoft?Windows NT?的 Windows 版本(包括 Windows NT 4.0、Windows 2000、Windows XP 和 Windows Server2003)的计算机都支持强密码。在 Windows 中,如果某个密码中的字符来自下面“字符类别”表格中五组中的至少三组,该密码即为强密码。
字符类别
组 |
示例 |
小写字母 |
a、b、c... |
大写字母 |
A、B、C... |
数字 |
0, 1, 2, 3, 4, 5, 6, 7, 8, 9 |
非字母数字字符(符号) |
( ) ` ~ ! @ # $ % ^ & * - + = | \ { } [ ] : ; " ' < > , . ? / |
Unicode 字符 |
€、Γ、? 和 λ |
注意:空格字符不属于这五组字符中的任何一组,也不能提高密码复杂性。
高度机密帐户(例如管理员或高级管理者使用的帐户)的密码或者用以运行重要网络服务的密码应由四组甚至全部五组中的字符组成。而另一方面,由人类使用的密码必须易于记忆,丢失高级管理人员或关键管理员帐户的密码将造成严重后果。本文档说明 Windows 系列操作系统中如何存储密码,并为管理员就如何最大程度地提高密码安全性提供了指导。
这些矛盾的要求可以通过采用密码短语(而非单词密码)来克服。支持强密码的每个 Windows 版本都支持在帐户密码中使用空格和标点符号。例如,“I re@lly want to buy 11 Dogs!”即为一个有效密码短语。该密码的字符数超过了二十个,是一个超长的密码短语,且包含的字符来自 5 个可能的组中的 4 个。而且该密码短语也易于记忆!多数密码破解工具假设密码绝不会超过 14 个字符,而这也是 DOS 网络启动磁盘、Microsoft 远程安装服务 (RIS) 预执行环境 (PXE) 启动磁盘和更老的 LAN 管理器客户端 (Win9x) 必须使用的一种限制。即使并不复杂,超长密码(大于 14 个字符,最多 128 个字符)也可能可以十分有效地防止高度机密密码被破解。
注意:请不要将本文档中的示例密码用作您的密码。尽管上面讨论的密码“I re@lly want to buy 11 Dogs!”特别长和复杂,但攻击者可能会将该密码及本文档中的其他样例密码添加到他们的攻击工具中。
如果管理员须遵循旧版系统、RIS 或类似要求,或管理员仅仅是不喜欢处理过于长的密码,使用相对较短但包含复杂字符的密码也能提供不错的保护作用。但请注意,密码长度越大,其破解难度也越高。同时增加复杂程度和长度可以使密码成为最难以破解的密码。建立贵组织的密码策略可帮助保护用户免于被攻击者冒充,从而避免贵组织机密信息的丢失、暴露或破坏。
本文档说明 Windows 系列操作系统中如何存储密码,并为管理员就如何最大程度地提高密码安全性提供了指导,还向用户解释了如何新建既满足复杂性要求又易于记忆的密码。
本文档包括下列主题的相关信息和指导:
· |
有关密码破解的其他详细信息。 |
· |
Windows 如何存储包含有关 LAN 管理器 (LM) 哈希与 NTLM 哈希的信息的密码。 |
· |
Unicode 字符及通过输入 Alt 键组合来使用 Unicode 字符的相关说明。 |
· |
Windows 98 等旧系统的要求。 |
· |
创建组织的密码策略。 |
· |
向最终用户通告密码复杂性,包括可进行自定义或转发给组织内部工作人员的文本。 |
· |
有关其他信息的资源,包括指向一些网站(提供了可帮助在组织中创建强密码策略的相关信息)的链接。 |
在继续讨论密码策略的创建之前,很有必要真正明白密码哈希如何创建以及如何由 Windows 系列操作系统存储。另外,还有必要完全弄清楚 Entropy、Unicode 字符和 Alt 字符等其他与密码复杂性相关的概念。
Windows 中的密码存储默认情况下,Windows NT 4.0、Windows 2000、Windows XP 和 Windows Server 2003 绝不会使用纯文本格式保存密码。而是使用两种不同的密码表示方法(一般称为“哈希”)保存密码。第一种方法是 LAN 管理器 (LM) 哈希,其安全性远不及第二种方法,即 NTLM 哈希。同时存储两种表示方法的原因在于需要考虑与旧版应用程序和 Windows 98 等旧版操作系统的后向兼容性。
在技术层面上,LM 哈希根本不是哈希。其计算方法如下:
1. |
将密码中的所有小写字符转换为大写字符 |
2. |
使用空字符加长密码,直至密码长度恰为 14 个字符 |
3. |
将密码拆分为两个分别包含 7 个字符的字符块 |
4. |
分别使用各字符块作为 DES 密钥来加密特定字符串 |
5. |
将两个密码文本连接为一个 128 位字符串,然后存储结果 |
LM 哈希算法所产生的哈希非常易于破解。首先,即使对于长度大于 8 个字符的密码,也可在两个单独的字符块中对其进行破解。其次,整个小写字符集可被忽略。因此,多数密码破解工具将首先破解 LM 哈希,然后只需改变已破解密码中的字母字符,以生成区分大小写的密码。请注意,无论是本地登录还是远程登录运行 Windows 2000 的计算机,都将需要使用保留大小写的密码。
因为支持整个 Unicode 字符集,NTLM 哈希又称为 Unicode 哈希。NTLM 哈希的计算方法是首先获得纯文本密码,然后生成该密码的消息摘要 4 (MD4) 哈希。MD4 哈希实际存储在 Active Directory 数据库或本地安全帐户管理器 (SAM) 数据库中。NTLM 哈希抵御蛮力攻击的能力远远胜过 LM 哈希的抵御能力。蛮力破解 NTLM 哈希所需的时间长度相对于蛮力破解 LM 哈希的时间长度高出数个数量级。
Entropy 是系统中无序程度的度量标准。密码中的 Entropy 级别由其中字符的涵盖范围与排列顺序的随机程度确定。在选择抵御破解能力较强的密码时,请务必仔细选择 Entropy 及其在密码中的出现位置。多数蛮力密码破解工具首先搜索常用键盘上的字母数字字符和符号,例如 ` ~ ! @ # $ % ^ & * ( ) _ - + =(因为出现在多数美式键盘的顶行,这些符号有时称为“上行符号”)。了解这一点,即可以使用 [ ] { } < > 等不同的符号来提高密码抵御破解的能力。还可使用 Alt 键组合进一步提高其抵御破解的能力。请注意,出于 LM 哈希的创建方式,在八字符密码的第八位上放置一个符号作为唯一的 Entropy 对密码复杂性的影响不大。要获得最大程度的 Entropy 和复杂性,非字母数字字符需贯穿于整个密码。
在 Alt 键组合中使用 Unicode 字符大多数用户要找到易于记忆的密码短语应该没有问题,但对于拥有域管理员权限的帐户等高度机密帐户,强烈建议在使用 Alt 键组合的密码中包含 Unicode 字符。某些字符在标准美式键盘上并不出现。通过按住 Alt 键(或多数便携式计算机上的 FN 键和 Alt 键),然后在数字键盘(或便携式计算机上的数字重叠小键盘)上键入三位或四位数字,即可输入这些字符。
使用这几类字符可在两个方面大大加固密码:第一,密码破解工具常常无法测试绝大多数这些类型的字符。第二,使用这些字符可极大扩展密码中出现的字符的范围,从而将密码的潜在复杂性提高了数个数量级。在使用 Alt 键组合的过程中,如果存在前导零,请务必注意,因为遗漏前导零将会变成另一个字符。例如,Alt+128 表示 _,而 Alt+0128 表示 €。本节其余部分将集中讨论四位代码(访问整个 Unicode 字符集),而会忽略三位代码(仅访问 ASCII 扩展字符集)。
下表列出了可用作 Alt 键组合的数值。建议值范围是 0128 到 1024。下表中的每个单元都显示了单个数值或一系列数值。例如,第一个单元显示“0128-0159”。这表示您可以使用从 0128 到 0159 之间的任何值,例如 Alt+0135(对应于 Unicode 字符“_”)。
推荐用于 Alt 键组合的 Alt 代码
0128-0159 |
0306-0307 |
0312 |
0319-0320 |
0329-0331 |
0383 |
0385-0406 |
0408-0409 |
0411-0414 |
0418-0424 |
0426 |
0428-0429 |
0433-0437 |
0439-0447 |
0449-0450 |
0452-0460 |
0477 |
0480-0483 |
0494-0495 |
0497-0608 |
0610-0631 |
0633-0696 |
0699 |
0701-0707 |
0709 |
0711 |
0716 |
0718-0729 |
0731 |
0733-0767 |
0773-0775 |
0777 |
0779-0781 |
0783-0806 |
0808-0816 |
0819-0893 |
0895-0912 |
0914 |
0918-0919 |
0921-0927 |
0929-0930 |
0933 |
0935-0936 |
0938-0944 |
0947 |
0950-0955 |
0957-0959 |
0961-0962 |
0965 |
0967-1024 |
|
|
并非所有 Unicode 字符都可提高密码复杂性,因为这些字符将自动转换为 ASCII 字符,从而生成较弱的密码。下表显示了不应在密码中使用的字符代码及其转换后的目标 ASCII 字符。
不适用于 Alt 键组合的 ALT 代码
ALT 代码 | Unicode 字符 | 结果字符 |
0175 |
_ |
_ |
0190 |
_ |
_ |
0222 |
_ |
_ |
0254 |
_ |
_ |
0101 |
e |
E |
0200 |
_ |
E |
0202 |
_ |
E |
0203 |
_ |
E |
0232 |
_ |
E |
0234 |
_ |
E |
0235 |
_ |
E |
0100 |
d |
D |
0208 |
_ |
D |
0240 |
_ |
D |
0117 |
u |
U |
0217 |
_ |
U |
0218 |
_ |
U |
0219 |
_ |
U |
0249 |
_ |
U |
0250 |
_ |
U |
0251 |
_ |
U |
0192 |
_ |
A |
0193 |
_ |
A |
0194 |
_ |
A |
0195 |
_ |
A |
0224 |
_ |
A |
0225 |
_ |
A |
0226 |
_ |
A |
0227 |
_ |
A |
0065 |
A |
A |
0114 |
r |
R |
0174 |
? |
R |
0121 |
y |
Y |
0221 |
_ |
Y |
0253 |
_ |
Y |
0255 |
? |
Y |
0120 |
x |
X |
0215 |
_ |
X |
0111 |
o |
O |
0210 |
_ |
O |
0211 |
_ |
O |
0212 |
_ |
O |
0213 |
_ |
O |
0216 |
_ |
O |
0242 |
_ |
O |
0243 |
_ |
O |
0244 |
_ |
O |
0245 |
_ |
O |
0248 |
_ |
O |
0105 |
i |
I |
0204 |
_ |
I |
0205 |
_ |
I |
0206 |
_ |
I |
0207 |
_ |
I |
0236 |
_ |
I |
0237 |
_ |
I |
0238 |
_ |
I |
0239 |
_ |
I |
0169 |
? |
C |
0099 |
c |
C |
另外,用户还应经常更改自己的密码。即使长而强的密码相较短而简单的密码远难于破解,但它们仍然是可破解的。只要拥有足够的时间和计算能力,攻击者最终可以破解任何密码。一般情况下,密码应在 42 天内进行更改,而旧密码应永远不再重用。
开发组织的密码策略
本节提供了有关通过为组织创建并通告密码策略来提高安全性的分步说明。
· |
识别组织的网络中使用的计算机操作系统。 |
· |
了解这些操作系统的局限性 |
· |
定义组织中网络的密码技术要求 |
· |
确定关于记录和通告组织的密码策略的相应正规度 |
· |
书面记录密码策略 |
· |
在系统中实施密码策略之前向用户通告该策略 |
· |
在组织的计算机系统中实施密码策略 |
· |
时刻提醒用户遵守密码策略和其它企业安全策略的重要性 |
识别现有操作系统
要为登录到组织中的计算机的任何用户指定不会带来问题的密码策略,需要了解这些计算机所使用的操作系统。可能您已经确切了解网络中所使用的操作系统。如果尚不清楚,则需进行确定。此时,无需了解各操作系统的数量,也无需创建有关网络中所有系统的精确清单。要设计恰当的密码策略,仅需了解是否使用了旧系统。在您的网络中,很可能存在运行 Windows 95、Windows 98 或 Windows Millennium Edition 等旧操作系统的计算机。
· |
确定组织的网络中使用的计算机操作系统
|
了解某些操作系统的局限性
如前文所述,运行 Windows NT 4.0、Windows 2000、Windows XP 和 Windows Server 2003 的计算机都支持长而强的密码。而运行 Windows 95、Windows 98 和 Windows Millennium Edition 的计算机则不可以。如果网络中有计算机运行任何这些 Windows 版本,密码策略都必须支持这些计算机。
对于有计算机运行 Windows 95、Windows 98 或 Windows Millennium Edition 的组织,用户密码不得超过 14 个字符,且不能包括通过 Alt 键组合生成的字符。
如果组织内的所有计算机运行的都是 Windows NT 4.0、Windows 2000、Windows XP 或 Windows Server 2003,则用户密码的最大长度可以是 128 个字符,且密码可以包含通过 Alt 键组合生成的字符。
定义密码技术要求
对于运行 Windows 2000、Windows XP 和 Windows Server 2003 的计算机,可以强制执行最多五项与密码特性相关的设置。
在此步骤中,我们为您提供了设置定义和针对这些设置的建议。您将决定贵组织将要强制执行的值。
密码技术要求
设置 | 描述 | 建议 | ||||||
强制密码历史记录 |
确定在可以重用旧密码之前用户必须使用的独一无二的新密码的数量。其值的设置范围是 0 到 24;如果设为 0,则强制密码历史记录将被禁用。 |
大多数组织都设为记忆 24 个密码。 | ||||||
密码最长期限 |
确定在用户必须更改密码之前该密码可以使用的天数。其值的设置范围是 0 到 999;如果设为 0,则密码永不过期。设置该值过低可能会给用户带来巨大的麻烦,而过高设置或禁用该设置则会为潜在攻击者提供更多时间来尝试破解用户密码。 |
大多数组织都设为 42 天。 | ||||||
密码最短期限 |
确定在用户可以更改新密码之前该用户必须保留该密码的天数。此设置须与“强制密码历史记录”设置配合使用,这样用户就不能快速重置其密码 24 次,然后将其密码重新设置为原来的密码。其值的设置范围是 0 到 999;如果设为 0,用户即可立即多次更改自己的密码。 |
大多数组织都设为 2 天。 | ||||||
最短密码长度 |
确定密码的最小长度。尽管运行 Windows 2000、Windows XP 和 Windows Server 2003 的计算机最多可支持 128 个字符,但此设置仅可设为 0 到 14 个字符。如果设为 0,用户则可拥有空白密码;此值绝不可使用。 |
设为 8 个字符。 | ||||||
密码必须符合复杂性要求 |
确定是否强制执行密码复杂性。
|
启用此设置。 |
接下来,需要确定记录组织的密码策略时的正规度。 至少应该书面记录将在组织网络的计算机中强制执行的设置。
某些组织可能要求以正式策略声明的形式记录密码策略。如果认为这一正规度适合贵组织,您可能需要查看本文档稍后的“相关信息”中指向样例策略的链接。
某些组织可能制订有记录此类企业策略的相关规章要求。如果确定组织订有规章要求,则应在实施策略及向用户通告策略之前请组织的法律顾问对该策略进行检查。
向用户通告密码策略任何重大策略变更都需向组织内的工作人员明确通告。在更改或实施密码策略的过程中,请务必向相关人员清楚解释此举的内容与原因。
您可以复制下列文本并向同事分发。尽管这些文本现在即可使用,但可能需要更改特定条款以更好地满足您自己的需要和特定密码策略要求。
您将会发现,此样例文本没有讨论或建议使用 Alt 键组合;这是因为使用此类键组合对于许多用户可能要求过高。对于管理员等拥有强大或机密帐户的技术精通用户,建议使用 Alt 键组合。
对于组织成员:
弱和空白的密码是攻击者入侵计算机与组织网络的最简单方法之一。很长时间持续使用的密码或频繁重用的密码也可能更加易于被攻击者破解。
要增强对网络中帐户的保护,访问企业计算机系统时必须使用强密码。您应该定期更改自己的密码,以及使用与以前密码不同的密码。
强密码是长度不低于八个字符的密码,且所用字符须来自下列五组中的三组:
1. |
小写字母 |
2. |
大写字母 |
3. |
数字(例如 1、2、3) |
4. |
符号(例如 @、=、- 等等) |
5. |
Unicode 字符 |
密码还不得包含用户帐户名中所具有的三个或更多连续字母。每 42 天即要求更改一次密码,且不得重用密码。
在更改密码之后,新密码将自动进行复杂度检查并与旧密码进行比较。这些要求可能听似令人不快,您也可能会因而记下自己的密码,并将密码记录粘贴于书桌、计算机显示器或其他一些方便位置。但如此做法即会将您的计算机和整个组织暴露于极大危险的威胁之下,因为任何人都可以接近您的计算机并使用您的凭据登录网络。因此,绝不要将密码写下来。而是应该创建易于记忆的密码。
下面,您将了解一些关于密码安全的其他背景信息以及关于如何创建易于记忆的强密码的具体建议。
相对于使用“单词密码”,使用“密码短语”进行思维也许还会更简单一些。如果计算机运行的是 Windows NT 4.0 或更低版本、Windows 2000、Windows XP 和 Windows Server 2003,则可以支持十五个或更多字符(包括空格)。因此,“You can try to break this until the cows come home!”是一个完全有效的密码短语,即便使用现有最好的密码破解工具,攻击者要破解此密码也难乎其难。如果您的计算机运行上述操作系统之一,请尝试使用很长的密码短语,并包含大写字母、小写字母、数字与符号的组合。
请注意,实际应用时不应使用本文档中的示例密码,尽管上面讨论的密码“You can try to break this until the cows come home”非常长,但攻击者可能会将此密码及本文档中的其他样例密码添加到他们自己的攻击工具中。这些密码是示例密码,您应始终创建自己独有的密码。
下面的信息提供了有关创建和记忆单词密码与密码短语的各种提示,以及应执行或不应执行的操作。
1. |
使用多个单词 |
2. |
使用符号而不是字符 |
3. |
选择记忆中的事件或人物 |
4. |
使用单词谐音 |
5. |
不要害怕创建长密码 |
6. |
使用短语的首字母 |
· |
组合易于自己记忆而他人难以猜测的字母、符号和数字。 |
· |
创建易于自己记忆的可读密码(即便这些密码不是单词),避免写下自己的密码。 |
· |
尝试使用自己喜欢的短语的首字母,特别是那些包含了数字或特殊字符的组合。 |
· |
选择两个相似字符、符号或数字,将其布置于某个数字或特殊字符的两侧。或者,也可更改拼写,在密码中包括特殊字符。这样,即得到了陌生密码(一个不错的密码,因为该密码方便您自己且仅是您自己的记忆,而对于他人则难以破解)。请参见下列示例: |
“Phone + 4 + you”=“Phone4you”或“Fone4y0u”
“cat + * + Mouse”=“cat*Mouse”或“cat*Mou$e”
“attack + 3 + book”=“attack3booK”或“@tack3booK”
· |
不要使用个人信息,例如自己 ID 的派生形式、家庭成员的姓名、娘家姓、汽车、牌照、电话号码、宠物、生日、社会保险号码、地址或爱好。 |
· |
不要使用正序或逆序拼写的任何语言的任何单词。 |
· |
不要将密码与月份联系起来,例如不要在五月使用“Mayday”。 |
· |
不要新建与以前使用的密码极为相似的密码。 |
至此,新密码策略的指定、记录和通告等工作已经完成,现在应该在网络中实施密码策略了。
,自由广告区 |
![]() |
分类导航 |
邮件新闻资讯: IT业界 | 邮件服务器 | 邮件趣闻 | 移动电邮 电子邮箱 | 反垃圾邮件|邮件客户端|网络安全 行业数据 | 邮件人物 | 网站公告 | 行业法规 网络技术: 邮件原理 | 网络协议 | 网络管理 | 传输介质 线路接入 | 路由接口 | 邮件存储 | 华为3Com CISCO技术 | 网络与服务器硬件 操作系统: Windows 9X | Linux&Uinx | Windows NT Windows Vista | FreeBSD | 其它操作系统 邮件服务器: 程序与开发 | Exchange | Qmail | Postfix Sendmail | MDaemon | Domino | Foxmail KerioMail | JavaMail | Winwebmail |James Merak&VisNetic | CMailServer | WinMail 金笛邮件系统 | 其它 | 反垃圾邮件: 综述| 客户端反垃圾邮件|服务器端反垃圾邮件 邮件客户端软件: Outlook | Foxmail | DreamMail| KooMail The bat | 雷鸟 | Eudora |Becky! |Pegasus IncrediMail |其它 电子邮箱: 个人邮箱 | 企业邮箱 |Gmail 移动电子邮件:服务器 | 客户端 | 技术前沿 邮件网络安全: 软件漏洞 | 安全知识 | 病毒公告 |防火墙 攻防技术 | 病毒查杀| ISA | 数字签名 邮件营销: Email营销 | 网络营销 | 营销技巧 |营销案例 邮件人才:招聘 | 职场 | 培训 | 指南 | 职场 解决方案: 邮件系统|反垃圾邮件 |安全 |移动电邮 |招标 产品评测: 邮件系统 |反垃圾邮件 |邮箱 |安全 |客户端 |