来客网

奇虎360密盘破解方法,技术分析及安全建议

声明:本文转载自 「腾讯科技」, 或因排版与篇幅原因进行过编辑,内容未经本站独立核实,不代表本站立场、观点或建议。 如涉及版权问题,请联系我们,核实后立即删除。 [ 免责声明 ]

360 出密盘的时候,号称10万年无法破解,我当时以为这个密盘用的是公开的AES,RSA算法,因为这个算法目前来说非常的可靠,而且数学理论证明纯算法方式是无法破解的,而且只要加大密钥位数,就可以轻易的抵抗穷举法的破解,所以只要密钥位数足够的大,说10万年100万年不能破解都是很正常的。

可现在的资料发现,360 的密盘只是一个用 FileDisk 源代码修改出来的东西,而加密原理居然还只是用了16位二进制密钥进行简单的 Xor 运算,解密的时候再用这密钥进行 Xor 运算就可以了。天哪,这种抄袭别人的源码,再加上毫无技术含量的算法,拼凑出来的垃圾,居然就称为周某某口里所谓的技术全球第一的密盘了!360 果然是吹牛本事天下第一啊。

下面说一下 Xor 异或操作,从二进制运算看就是:0 Xor 1 = 1,1 Xor 0 = 1,0 Xor 0 = 0,1 Xor 1 = 0 。

假设A为原始内容,B为密钥,C为加密后数据,就是:

加密过程 ------ A Xor B = C

解密过程 ------ C Xor B = A

从这过程本身看没啥大问题,因为密钥 B 是只有加密者才有的,而且16位的密钥位数也够长,所以看上去也貌似蛮安全的。但其中有一个很杯具的地方,就是从异或操作本身看, 0 Xor B = B ,也就是说,如果 A 的数据当中,有连续的16个 0 的话(因为360的密钥长度是16位),那进行 Xor 处理后的数据,就会和密钥 B 是一样的了。

好了,接下去就是一个很幽默的地方了,360 密盘本身是一个 NTFS 格式的虚拟硬盘格式文件(毕竟是用 FileDisk 源代码修改出来的,没有自己的专用格式),而我们知道,NTFS 的第一个扇区就是固定的 48 个二进制 0,于是,在第一扇区的加密中,密钥 B 和这些 0 进行 Xor 操作后,得到的结果还是 B。也就是说,第一个扇区的数据经过了那所谓的10万年无法被破解的高技术加密之后,结果居然就等于那16位密钥 B 重复了三次。这结果实在是太惊人了,简直是太震精了!

既然原理很清楚了,那破解也就很简单了,只需要找到 360 密盘文件中对应第一个扇区的数据,取出16个字节(这16个字节重复了三遍,就算不懂 NTFS 格式,也很好找)就是密钥 B 了,既然密钥 B 已经有了,那只需要简单的用 Xor 异或处理一下密文 C,就可以得到明文 A 了。。。

这就是所谓10万年无法被破解的 360 密盘。。。相信 360 是绝对不会承认他是用了这么低能的算法的,或许在很短的时间内,他会升级密盘程序去封堵这个 BUG,也可能会去修改密盘现在加密算法,再通过他的水军去制造舆论,继续忽悠小白,继续愚弄大众。。。

360,如果你能把拿来忽悠、夸大、欺骗、扯谈、流氓的精力,用在研究技术上该多好!!不过这只是奢望罢了,因为这个企业的文化本质就是流氓。

补充: 已经有人用这个原理写出了破解还原程序,使用方法很简单,下载附件并解压,在命令行方式下输入下面的命令执行 Dec360mipan.exe test.360sv test.img ,其中 test.360sv 是 360 密盘文件(该文件保存在磁盘根目录下的隐藏目录 360mipan 中), test.img 是解密后的镜像文件(解密速度非常快,因为只是 Xor 运算嘛)。。。然后你可以直接使用 winimage 软件打开 test.img ,里面那所谓的10万年不能被破解的内容一览无遗~~~

建议需要加密文件的朋友使用TrueCrypt或GnuPG 这两个软件,这两个软件都是开源软件(Open source software),不会有后门,而且完全免费.加密算法可以使用公认可靠的AES,RSA算法.不要用来历不明,不知道加密算法,或不是开源软件的加密软件,因为这些软件很可能有后门,360密盘就是很好的坏例子.

其他注意事项,可以参考下面这篇文章:

教你保障eMail电邮安全和加密的方法,中国国内邮箱全部被监控

中国国内公共电子邮箱的内容全部被监控!

国内的公共电子邮箱是有监控系统的,系统先由电脑对邮件内容进行基于关键字的检查,然后由人工再进行抽检,主要是检查附件的内容,因为附件用电脑比较难进行检查.

由于Gmail一类的邮箱的服务器在国外,不受中国监控.因此由Gmail等国外邮箱发邮件到国内邮箱时,经常会出现邮件的正文收到,而附件收不到的现象.这是因为邮件正文的内容可以用电脑程序监控,而附件内容只能用人工监控,工作量之大显然不可能每个附件都检查,所以国内邮箱就直接把Gmail的附件拦截了.

保护邮箱内容,防止被监控窃听方法问答:

一、邮箱使用 Gmail 或 Google Apps 的,而且用软件收发邮件都是用IMAP,那么如果我用 eMail,是不是本身就有 SSL 加密了?

答:通过网页介面访问时,Gmail / Google Apps 的邮箱默认是加密的。如用电邮客户端软件访问,Gmail 的 IMAP 和 SMTP协议都需要走加密通道。另外,Gmail 也支持加密的 POP3 协议,虽然不推荐大家使用,但是如果你的客户端不支持 IMAP的话,可以这样设置。

二、在这种情况下,再加上 SSH 隧道,VPN 或 SOCKS proxy(SOCKS 代理,如"目田门",Tor等),对加密性有无提高?

答:有提高,可以防止"中间人攻击"(MITM攻击)。SSL 加密依赖于 Public Key Infrastructure, 这个东西有个致命的缺陷就是默认相信所有的 Certificate Authorities (CA)。问题出在哪里呢?提示:危险的CNNIC CA证书也是一个被接受的 CA证书。

如果你在电脑里手工移除了 CNNIC ROOT 之后,这个影响就要稍微小些。不过仍然有被https "中间人攻击"的可能(Man-in-the-Middle Attack,简称“MITM攻击”),还是先走VPN,SSH 隧道或加密代理服务器上网,再用https加密登录到 Gmail 保险。同时还要防范钓鱼网站,例如著名的钓鱼网站ndns01'com攻击电子邮箱窃取密码事件.

三、有了一和二点,电子邮件email还需要加密吗?(这里只谈邮件加密,先不考虑伪造身份的问题。)

答:需要。一、二点和电子邮件加密解决的是不同层级的问题。前两者只是解决你如何能够安全的连接到 Gmail 的服务器发送和接受邮件的问题,但是并不解决邮件通过 Gmail 服务器和你的收信人、发信人之间的通信的安全。例如,如果你通过Gmail 给一个使用 163 邮箱的人发信,这过程中如果你的邮件没有加密或者身份验证,那么就有可能被窃听和伪造。

当然如果你发送的对方也是使用 Gmail 邮件服务,那么由于这个邮件中转不需要离开 Gmail 的数据中心,因此相对安全。但是邮件内容还是明文的(SSL 只是保证从你电脑发到 Gmail 服务器这段路程中是加密的),网页版 Gmail 因此才可以索引你的邮件内容提供 AdWords 侧边广告。

电子邮件email加密方法:

电子邮件加密可以用PGP, TrueCrypt, GnuPG, 这三个公认安全的加密软件.加密软件要尽可能用开源软件(Open source software),以防止有后门.千万不要用来历不明的加密软件!

加密软件的加密算法可以用:RSA,AES 或多重加密(用多个加密算法反复加密).

RSA的密钥长度必需要选2048位(2048 bit)或以上,如是重要内容最好选4096位(4096 bit)或以上密钥长度.

AES的密钥长度必需要选256位(256 bit)或以上.

用软件加密邮件时可以同时加上数字签名,防止邮件被伪造.

四、从加密的角度说,如果我用无线上网, Wi-Fi 的加密方法已经是 WPA / WPA2 了,是不是就没有必要用 VPN 了?

答:有必要。WPA/WPA2 只保证你的电脑到无线路由器之间的安全连接,但是无线路由器到 ISP,再到互联网这段是不受保护的。有了 VPN,从VPN服务器到你的电脑这整个过程都是加密的,风险少很多。

结论:

一、尽量用 Gmail. 如你是网站管理员,把你自己架的邮箱的后台程序换成 Google Apps。目前主流的免费邮箱里只有Gmail 提供全站强制 HTTPS 加密。

二、如果你习惯用电邮客户端软件处理邮件,请到 Gmail 的 Settings >

>

Forwarding and IMAP/POP 里勾选「Enable IMAP」,并在客户端的设置里改用 IMAP。

三、国内邮箱的邮件内容全部被监控.不要将涉及机密内容的邮件发给任何国内邮箱,以及任何以 .cn 结尾的邮箱。你可以礼貌地向对方说明邮件的机密性,并问对方有没有 Gmail。

四、发送机密邮件时,打开 VPN,SSH 隧道 或SOCKS proxy,防止"中间人攻击"(MITM攻击),防止被钓鱼,例如著名的钓鱼网站ndns01'com攻击事件.

五、最好再加上数字签名和加密。可以用PGP, TrueCrypt, GnuPG,这三个公认安全的加密软件.RSA的密钥长度必需要选2048位(2048 bit)或以上,AES的密钥长度必需要选256位(256 bit)或以上.

六、把家里的无线 Wi-Fi 加密算法改成 WPA / WPA2,不要使用 WEP 加密算法。

七、使用没有加密的无线 Wi-Fi 信号上网时,一定打开 VPN 或 SSH 隧道或SOCKS proxy(SOCKS 代理)。

评论 (0)