破解 6 位数验证码!! 黑客如何入侵你的账号? 漏洞技巧解析!
2022-8-2 20:1:0 Author: 网安之道(查看原文) 阅读量:28 收藏

破解 6 位数验证码!! 黑客如何入侵你的账号? 

漏洞技巧解析! 

相信各位在使用软件的时候都遇到过两步验证、短信验证、email验证的经历,这些验证码为了方便使用者输入大概都会维持在6位数左右,然后黑客就利用了一些技巧能够突破绕过这个6位数验证码,来达到所谓盗取账号的目的。那么这个6位数验证码到底是怎么被破解的呢?

在2019年的时候有一名印度的白帽黑客叫laxman在他的博客里就揭露了他如何入侵Instagram的任何账号的方式。

一开始这名黑客是从Instagram的重置密码开始测试,重置密码通常是黑客很喜欢的突破点,因为要使用这个功能可以不需要知道用户的密码,只要知道用户的部分信息就可以开始尝试攻击,也就是说只要能绕过这个重设密码的权限就能够重设用户的密码变成自己的密码,然后就可以登录账号。

当时这名白帽子在Instagram的重置密码这边并没有找到攻击点,但是他发现了有一个从手机号码恢复账号的一个流程,这个过程是当用户输入自己的手机号码时会收到一个6位数的验证码,输入验证码之后才可以更改密码。

假设要知道这个6位数验证码的所有组合,也就是说从000000到999999,因为有6位数每一个位数都有10种数字的可能性,也就是10的6次方总共等于100万次,以暴力破解来说,只要能够对这个输入框输入100万次的组合就可以成功破解了。但基本上做这种软件的工程师也不是笨蛋,往往工程师在一开始设计的时候可能会预防基本的暴力破解,基本上预防的手段就是提高攻击成本,可能是对每分钟能够尝试的次数有一定的限制,让一般人能够合理的尝试,但是又能够尽量防范这种黑客攻击对软件的大量尝试。所以通常会设一个规则,例如:同一IP在一分钟只能尝试5次等,所以接下来这名白帽子要继续攻击这个6位数验证码,肯定需要知道它的速率限制在哪里。基本上以APP来说,假设一个输入框输入、输出在这个过程中一定会有请求发送的目的地,这边透过一些软件监控通常都可以监听的到,接着攻击者通过程式尝试发送了1000个请求,发现有250个成功通过,有750个未通过。接着又发起了第二次的1000个请求,发现只有10个顺利通过。这里就可以推敲出系统对于速率限制的条件,不过到这边对于黑客来说其实已经掌握到一些关键的部分了。

同一个IP在大量短时间内发送的请求没有被限制成黑名单,即使在短时间内请求数量有限,也能够连续的发送成功。接着黑客会继续收集更多的信息。在接连几天的测试发现有两个条件可以绕过跟这个限速规则。第一个是Race Condition第二个是替换IP

什么是Race Condition?

Race Condition就是竞争危害的意思,简单的理解就是当我们遇到这种并行请求的时候,在程式没有控制好这个并行的情况下假设两个请求A比B要同时修改一个共享记忆体的时候,因为电脑在运算的过程中有可能最终会导致B比A还要快。最后形成相互竞争,比谁先输出内容。如果我们最后期望的结果是要依赖执行的顺序,这样的情况会导致我们预期的结果是错误的。也是因为这样,黑客发现同时使用多并发的IP去发送请求反而不受Instagram这个限速机制阻断。

接下来到这里的难题就是这6位数验证码只有10分钟的有效期限。要完成这个攻击必须在10分钟以内绕过速率限制尝试发送100万种组合。那么这就是一个数学问题,依照前面的经验,一个IP大概可以发送200个不会被速率限制卡住,如果有1000个IP就可以发送20万次请求,如果要100%破解就需要5000个IP,那么这时候黑客无需自身准备,可以直接从云服务商下手,租用大量的服务器。最终在2019年这名白帽子只要花150美金左右的成本就可以执行100万次的请求来完成这次攻击,最后提交给相应的安全部门得到了30000美金的奖励。

有趣的是他又以同样的一招拿去攻击微软,不过微软是7位数验证码,那就是1000万种组合,这时候他租用服务器的成本是很高的,但是这个想法实际可行。这名白帽子跟微软尝试了各种周旋,最终在微软拿到了50000美金作为这一次漏洞的奖励,微软不愧是有钱的金主爸爸。

然而这名白帽子黑客到苹果公司如法炮制,但是中间在跟苹果来回长达半年沟通的过程中并没有达成共识,最终也没有赚到半毛钱。苹果公司后来也悄悄修复了这个漏洞,也让这名白帽子感到很失望。到了最后,这名白帽子靠这一个漏洞赚了10万多的美金作为奖励。

以上就是突破6位数验证码的技术思路和讲解。在本篇文章结束后,本公众号将会把这名白帽子当时的视频过程发送在公众号内,敬请期待~

END

特别声明:由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,作者及平台不为此承担任何责任。作者有对此文章的修改和解释权。如欲转载或传播此文章,必须保证此文章的完整性,包括版权声明等全部内容。未经作者的允许,不得任意修改或者增减此文章内容,不得以任何方式将其用于商业目的。本文内容切勿用于非法,仅供网络安全技术学习参考,违者法律后果自负,与本平台及作者无关。


文章来源: http://mp.weixin.qq.com/s?__biz=MzIxMDI2ODM1OA==&mid=2651501721&idx=1&sn=c0860dace2285dcc3899932f1f8a5f84&chksm=8c992d30bbeea426abcc8030dca1657ccf80f8cefd752a4561c5af854649694de0089cd8f4b4#rd
如有侵权请联系:admin#unsafe.sh