如果给你源码,和网站数据库,你是否能破解出来密码?
都是数字弱密码。
http://www.etherdream.com/webscrypt/example/login/
破解之后有红包拿,来试试吧
源码在这里: https://github.com/EtherDream/WebScrypt/tree/master/example/login
1
cnwtex OP |
2
helloccav 2017-02-12 18:16:55 +08:00
人肉穷举出了最简单的那个,然而很久没用支付宝,不知道口令红包怎么用,留给下位朋友吧,谢谢楼主了.
|
3
ipconfiger 2017-02-12 18:19:30 +08:00
给你 sha256 的源码, 除了穷举, 还有别的办法?
如果数字弱密码, 不要源码也能穷举, 拿源码出来干嘛? 毫无意义 |
4
em70 2017-02-12 18:22:00 +08:00
都知道算法了,用字典计算后去撞库就行了,体力活,谁有空谁弄去
|
5
ic3z 2017-02-12 18:47:13 +08:00 via Android
向大佬学习😊
|
6
cnwtex OP |
7
loading 2017-02-12 20:12:23 +08:00 via Android
前端运算,目测是先对密码算一下 hash 这样然后再发送到后端?
前端都暴露出来了,毫无意义。 |
8
blackanger 2017-02-12 20:56:35 +08:00
重点在于前端那个 dkHex
|
9
blackanger 2017-02-12 21:14:17 +08:00
大思路虽然是穷举,但是重点是前端的加密,就像 @cnwtex 说的,前端提高运算量,防穷举,这个需要仔细研究下源码里的算法了:
var dkHex: String = bytesToHex(CModule.ram, mDkPtr, mDkLen); bytesToHex 函数及其三个参数的意义,模拟一个算法,得到 dkHex ,后面的就简单了,加盐比对 sha256 加密密码,穷举。 |
10
blackanger 2017-02-12 21:15:56 +08:00
前端生成一个 dk 的时间,大概是 1 秒:
time: 1089 main.js:21 dk: e3ed2afeb0be3bc5f4ddee429a367f99417ac99a40039de1e5bf39ab498627c4 |
11
shiny 2017-02-12 21:42:40 +08:00
写了一个简单的 node 穷举程序,还是非常费运算量的。如果 CPU 核心多点并发跑,跑这个题目还是容易的;但如果密码再复杂点就费劲了。
|
12
l1093178 2017-02-12 22:49:05 +08:00
有点意思,不过最大的意义其实就是把服务器端跑 Scrypt 的消耗丢给了客户端。
|
13
cnwtex OP @shiny 这个很适合用在网站上,但是貌似手机支持不太友好,可以测试。
@blackanger 以消耗合适的 cpu 运算来认证前端工作,还能起到验证码的作用。 @l1093178 正解,如果网站用上,除了防穷举,还能防机器登录(消耗运算增加机器人工作)。 @loading 意义需要自己理解。 |
14
ihuotui 2017-02-13 00:43:31 +08:00 via iPhone
我需要你的密码明文吗?我只需要你传送什么给后台就可以了。
|
15
zzNucker 2017-02-13 00:46:00 +08:00
发现钓出来好几个脑子都不动就在吹逼的,哈哈哈哈
|
16
ryd994 2017-02-13 02:24:51 +08:00 via Android
这个想法其实不错的。利用 proff of work 来验证客户端的“诚意”
只是老有半桶水程序员想拿这个代替 HTTPS 这是用来做验证码的,不是用来做加密的 |
17
arron 2017-02-13 11:08:39 +08:00
程序已经上了 asm ,算法速度也不好优化了, 6 位数单核跑得几天时间。
|
18
shiny 2017-02-13 18:30:10 +08:00 1
一个简单的 node 穷举程序: https://github.com/shiny/WebScrypt-Crack-Example
4 位没多久就跑出来了。跑 6 位就太不环保了。 |
20
zjcqoo 2017-02-14 11:08:15 +08:00 2
这个代码是我写的,哈哈:) 看到 @shiny 破解代码里的链接发现这个帖。。。
其实拖库后暴力破密码原理都是一样的。不过这个项目的意义就是把 PBKDF 的计算放到浏览器里,节省服务器成本而已。 另外对于在线撞库,每猜一次密码浏览器都得计算 PBKDF ,很耗资源,所以可以通过 CPU 资源限制攻击频率。 |
22
mingyun 2017-02-19 14:12:17 +08:00
会玩
|