简介
本文档介绍思科密码加密背后的安全模型,以及该加密的安全限制。
背景
某非 Cisco 来源发布了对 Cisco 配置文件中的用户口令(及其他口令)进行解密的程序。程序不解密使用 enable secret
命令。该程序在思科用户中引起的意外问题已引起怀疑,许多用户依赖思科密码加密来获得比其设计的安全性更高的安全性。
注意:思科建议所有Cisco IOS®设备实施身份验证、授权和记帐(AAA)安全模型。AAA 可以使用本地、RADIUS 和 TACACS+ 数据库。
先决条件
要求
本文档没有任何特定的要求。
使用的组件
本文档不限于特定的软件和硬件版本。
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您的网络处于活动状态,请确保您了解所有命令的潜在影响。
规则
有关文件规则的更多信息请参见“ Cisco技术提示规则”。
用户密码
用户密码和大多数其他密码(不是 enable secret
s)使用按现代加密标准非常薄弱的方案进行加密。
虽然思科不分发解密程序,但至少有两种Cisco IOS密码的解密程序可供互联网上的公众使用;思科知道的这种程序的首次公开版本是在1995年初。我们期望任何业余密码学家都能轻而易举地创造出一个新的程序。
Cisco IOS用于用户密码的方案绝不是为了抵御确定的智能攻击。加密方案旨在通过简单的监听或嗅探来避免密码失窃。它从来不是为了防止有人对配置文件执行密码破解操作。
由于加密算法较弱,思科始终坚持以下立场:用户将任何包含密码的配置文件视为敏感信息,就像处理密码的明文列表一样。
使能加密和使能口令命令
此 enable password
不再建议使用命令。请使用 enable secret
命令以获得更好的安全性。唯一一个 enable password
当设备处于不支持的boot模式时, enable secret
命令。
使能加密使用MD5算法进行散列。据思科人员所知,不可能根据配置文件的内容恢复启用密码(除非受到明显的字典攻击)。
注意:这仅适用于使用 enable secret
,而不是使用设置密码 enable password
.实际上,所用加密的强度是这两个命令之间唯一的显着差异。
哪个Cisco IOS映像支持使能加密口令?
使用 show version
命令(完整的Cisco IOS映像),查看启动映像是否支持 enable secret
命令。如果是,请删除 enable password
.如果启动映像不支持 enable secret
请注意以下警告:
-
如果您有物理安全性,则无需使用启用密码,这样便没有人可以将设备重新加载到引导映像。
-
如果有人对设备具有物理访问权限,则无需访问启动映像即可轻松破坏设备安全性。
-
如果您设置了 enable password
与 enable secret
,您已经将 enable secret
攻击和攻击的 enable password
.
-
如果您设置 enable password
由于启动映像不支持,因此转换为不同的值 enable secret
,您的路由器管理员必须记住一个不常用于不支持 enable secret
命令。使用单独的使能密码,管理员在强制软件升级停机时需要记住密码,这是登录到引导模式的唯一原因。
其他密码
Cisco IOS配置文件中的几乎所有密码和其他身份验证字符串都使用用户密码使用的弱的可逆方案进行加密。
要确定使用哪种方案加密特定密码,请在配置文件中检查加密字符串之前的数字。如果该数字是7,则密码已使用弱算法加密。如果数字是5,则使用更强大的MD5算法对该密码进行哈希处理。
例如,在配置命令中:
enable secret 5 $1$iUjJ$cDZ03KKGh7mHfX2RSbDqP.
使能加密已使用MD5进行哈希处理,而在命令中:
username jdoe password 7 07362E590E1B1C041B1E124C0A2F2E206832752E1A01134D
密码已使用弱可逆算法加密。
配置文件
在电子邮件中发送配置信息时,请清除第7类密码中的配置。您可以使用 show tech-support
命令,默认情况下清除信息。示例 show tech-support
命令输出如下所示:
...
hostname routerA
!
aaa new-model
aaa authentication login default local
aaa authentication ppp default if-needed local
enable secret 5
!
username jdoe password 7
username headquarters password 7
username hacker password 7
...
在简单文件传输协议(TFTP)服务器上保存配置文件时,请更改该文件在不使用时的权限或将其置于防火墙之后。
算法可以改变吗?
思科目前没有计划支持更强的Cisco IOS用户密码加密算法。如果思科确实决定将来引入此类功能,则此功能肯定会给选择利用它的用户带来额外的管理负担。
在一般情况下,无法将用户密码切换到用于使能加密的基于MD5的算法,因为MD5是单向散列,并且密码根本无法从加密数据中恢复。为了支持某些身份验证协议(尤其是CHAP),系统需要访问用户密码的明文,因此必须使用可逆算法存储这些密码。
密钥管理问题会使切换到更强的可逆算法(如数据加密标准(DES))成为一项不容易完成的任务。虽然修改Cisco IOS以使用DES加密密码比较容易,但是如果所有Cisco IOS系统都使用相同的DES密钥,这种方法不会具有安全优势。如果不同的系统使用不同的密钥,将会给所有Cisco IOS网络管理员带来管理负担,并且会破坏系统之间配置文件的便携性。用户要求更强的可逆密码加密已经很小。
相关信息