---

2015/10/25

layout: post
title: "浅析爆库和社工库扫描"
category: Reading Notes

tags: ["读文章", "杂项"]

{% include JB/setup %}

1. 目前网站中主流存放用户名和密码有三种:

* 明文存放。这种网络的用户数据特别危险,网络被黑客拿下,用户数据直接拿走。
* 可逆加密存放。密码被加密一次存放在网站的数据库中,可逆加密也是非常危险的。
* 不可逆加密。密码通过MD5等不可逆加密算法加密后存放在网络数据库中,比上述2中密码加密方式安全。(如果md5加密后的密码泄露,明文密码仍有通过查找表的方式反查出来的可能)

2. 黑客针对后台数据库的入侵手法:

爆库,指将网站的数据库下载到本地。防爆库不仅仅是防止别人拿到你的库,还要做到让别人拿去也没用。

密码明文存储的,一定是死路;可逆加密的,只要黑客用点心,基本也不安全;

不可逆的,类似md5加密(md5虽然被证明可逆,但是逆向的成本很高,基本无人使用)应该很多人认为比较安全,但是遇到碰撞也很无奈。类似于碰撞库,其规模已经非常巨大,常规的密码的破解几率大于95%。

3. 如何规避这样的行为呢?

一种是两次md5或者多次md5等加密保存方法,这种方法很好的避免了加密后的密码在碰撞库中出现。但是如果黑客拿到的数据库足够大时,有心的黑客会发现加密逻辑,还是有可能破解的。

Discuz就在使用一种低成本的安全密码保护策略,他们使用随机salt二次加密。这种方法会使黑客破解密码的成本大大提高。黑客如果想破解这样的密码,需要对每一个用户建立一个碰撞库,时间成本很高。对于大量用户的破解,黑客一般是选择放弃,投入产出比太低;但是对于单个明确目标的话,他们还是会乐于尝试的。

4. 社工库

简单来说,你可能会在很多网站使用同样的邮箱和密码,社工库扫描就是利用这点,知道你一个账户后,就可以得到其他更有价值的账号。哪怕密码不相同,这个密码作为暴力破解中的关键字,也能大大提高破解率。

对于社工库扫描,网站通常的做法就是验证码(防暴力破解也是这种方法)。但是简单的验证码是很容易

而BT的验证码却会伤害用户体验,目前黑客也有应对BT验证码的方法。他们会将验证码集中传回到一个集中的地方,在网上请廉价的网络打工者填写。虽然这种方法成本有所提高,但是对于收益还是很低廉的。