思科type7加密存在漏洞分析

Cisco Type7 Password,是由思科公司自研的,用于IOS口令加密的算法。严格来说,Type7并不能算是加密算法,它更应该算是一种加了随机数的可逆纯文本编码方式。

一、加解密原理简要说明

Type7在加密的过程中,会从一个有26位ASCII的字符表中,首先产生随机种子(SEED),将SEED分解成两位数,放在密码前两位;再用随机种子和明文密码的首字符进行异或,产生密文放在3、4位;接着将随机种子加一,和第二个字符进行异或,再放在随后的位置……逐位运算完成运算,形成密文。

解密过程就是反向对加密过程进行运算,从前两位先取得SEED,再逐步从密文中取出字符与ASCII字符表进行异或,最终恢复出密文。

二、存在的问题

1.密码容易逆向推导

据悉,思科的26位ASCII的字符表已经被明确,如下:

{
0×64, 0×73, 0×66, 0×64, 0x3b, 0x6b, 0×66, 0x6f,
0×41, 0x2c, 0x2e, 0×69, 0×79, 0×65, 0×77, 0×72,
0x6b, 0x6c, 0×64, 0x4a, 0x4b, 0×44, 0×48, 0×53 , 0×55, 0×42
};

我们可以很容易根据密文和加密算法,逆向推导出真实的明文口令。这方面,网上相关的资料和工具有很多,这里就不进行赘述了。

2.字符表爆破风险大

其实,我更想说的是,即使思科的26位字符表未被泄露,也很容易爆破出来。其复杂度只和加密字符的长度有关,存在着很大被爆破的风险,我们将在下文详细分析。

三、利用PassLib演示Type7可逆性

PassLib是一个基于python的密码散列库,提供了超过30种密码散列算法的跨平台实现,以及管理现有密码散列的框架。其中PassLib也实现了Cisco Type7 Password,我用它来验证Type7的加密强度。

PassLib需要基于Python环境,因为我安装的是Anaconda,所以我的安装PassLib库的命令是:

conda install passlib

当然,你也可以选择安装好Python3后,用pip3进行安装。

第一步,我对cisco_type7类生成进行了测试。

from passlib.hash import cisco_type7

h1 = cisco_type7.hash('cisco123')

h2 = cisco_type7.hash('cisco123cisco123')

print('h1: ' + h1 + '\n' + 'h2: ' + h2)

得出结果如下:

h1: 1511021F07257A767B
h2: 070C285F4D0648574411021F07257A767B

可以看到:密文长度,等于明文长度X2+2。例如h1明文cisco123长度为7,密文长度就是16;h2明文长度为14,密文长度为30。

第二步,我们推导一下加密结果的重复情况。

from passlib.hash import cisco_type7

encodeH = [] # 加密结果
ReapeateTimes = {}# 重复次数

# 加密5000次cisco123
for i in range(5000):
    encodeH.append(cisco_type7.hash('cisco123'))

# 密文的重复情况
for j in encodeH:
    ReapeateTimes[j] = ReapeateTimes.get(j,0)+1

print(ReapeateTimes)

得出结果如下:

'00071A1507545A545C': 310, 
'05080F1C22431F5B4A': 324, 
'02050D4808095E731F': 326, 
'104D000A061843595F': 299, 
'110A1016141D5A5E57': 299, 
'070C285F4D06485744': 314, 
'01100F175804575D72': 311, 
'1511021F07257A767B': 322, 
'045802150C2E1D1C5A': 304, 
'060506324F41584B56': 312, 
'13061E010803557878': 307, 
'094F471A1A0A464058': 314, 
'030752180500701E1D': 316, 
'14141B180F0B7B7977': 322, 
'0822455D0A16544541': 342, 
'121A0C0411045D5679': 278}

同一个密码加密5000次出现了16个不同的密文,在知道算法的情况下,我们可以很容易推导出PassLib使用了一个16位ASCII字符表作为种子。

同理,在不同的环境下,我们可以设定一个足够长的明文,通过Type7加密方式进行加密,进而再利用逐位推导的方式把字符表推导出来,使加密不再可靠。

结论

总而言之,Type7加密方式可爆破可逆推,并不安全。而截止目前,仍有部分设备在使用它,我猜原因可能只是因为方便吧。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,402评论 6 499
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,377评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,483评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,165评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,176评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,146评论 1 297
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,032评论 3 417
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,896评论 0 274
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,311评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,536评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,696评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,413评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,008评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,659评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,815评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,698评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,592评论 2 353

推荐阅读更多精彩内容

  • CTF中那些脑洞大开的编码和加密 0x00 前言 正文开始之前先闲扯几句吧,玩CTF的小伙伴也许会遇到类似这样的问...
    查无此人asdasd阅读 6,002评论 0 19
  • 这篇文章主要讲述在Mobile BI(移动商务智能)开发过程中,在网络通信、数据存储、登录验证这几个方面涉及的加密...
    雨_树阅读 2,408评论 0 6
  • 加密的原因:保证数据安全 加密必备要素:1、明文/密文 2、秘钥 3、算法 秘钥:在密码学中是一个定长的字符串...
    Winnifred_阅读 13,068评论 0 3
  • 概述 之前一直对加密相关的算法知之甚少,只知道类似DES、RSA等加密算法能对数据传输进行加密,且各种加密算法各有...
    Henryzhu阅读 3,016评论 0 14
  • 并不那么光鲜的华尔街——《清算》读后 《清算:华尔街的日常生活》,讲的是华尔街投行家的故事。本书作者何柔宛,普林斯...
    冯雪松_4d76阅读 172评论 0 0