实战挖掘短信验证码漏洞

本期素材为YanXia提供

短信验证码漏洞属于web程序中的逻辑漏洞,随着互联网技术与电子商务的不断发展与,互联网所带来的安全问题也日益严重,业务安全也愈加受到人们的关注。

都说互联网是一把双刃剑,在我们享受它带来的红利同时,我们也遭受到其的干扰

实战挖掘短信验证码漏洞插图

由于开发人员的安全意识浅薄,逻辑漏洞屡出不穷。(业务逻辑漏洞主要是由于业务流程的缺陷而导致的BUG,其包括篡改数据,水平越权,垂直越权,接口恶意调用,信息泄露等等)

 

0x01如何寻找短信验证码漏洞?短信验证码漏洞与邮箱轰炸漏洞多存在于登入与注册以及任何会调用到手机号or邮件接收信息的地方而短信轰炸验证码又分为两种:1.针对1个手机号无限制发送短信2.针对多个手机号无限制发送短信

0x02配置Burp Suite

Burp Suite 是用于攻击web 应用程序的集成平台,包含了许多工具。Burp Suite为这些工具设计了许多接口,以加快攻击应用程序的过程。所有工具都共享一个请求,并能处理对应的HTTP 消息、持久性、认证、代理、日志、警报

其能高效率地与多个工具一起工作,例如:一个中心站点地图是用于汇总收集到的目标应用程序信息,并通过确定的范围来指导单个程序工作。

其能高效率地与多个工具一起工作,例如:一个中心站点地图是用于汇总收集到的目标应用程序信息,并通过确定的范围来指导单个程序工作。

实战挖掘短信验证码漏洞插图1

在一个工具处理HTTP 请求和响应时,它可以选择调用其他任意的Burp工具。例如:代理记录的请求可被Intruder 用来构造一个自定义的自动攻击的准则,也可被Repeater 用来手动攻击,也可被Scanner 用来分析漏洞,或者被Spider(网络爬虫)用来自动搜索内容。应用程序可以是“被动地”运行,而不是产生大量的自动请求。Burp Proxy 把所有通过的请求和响应解析为连接和形式,同时站点地图也相应地更新。由于完全的控制了每一个请求,你可以以一种非入侵的方式来探测敏感的应用程序

当你浏览网页(这取决于定义的目标范围)时,通过自动扫描经过代理的请求能发现安全漏洞IburpExtender 是用来扩展Burp Suite 和单个工具的功能。一个工具处理的数据结果,可以被其他工具随意的使用,并产生相应的结果

它的功能

Proxy——是一个拦截HTTP/S的代理服务器,作为一个在浏览器和目标应用程序之间的中间人,允许你拦截,查看,修改在两个方向上的原始数据流。

Spider——是一个应用智能感应的网络爬虫,它能完整的枚举应用程序的内容和功能。Scanner[专业版]——是一个的工具,执行后,它能自动地发现web 应用程序的安全漏洞。

Intruder——是一个定制的高度可配置的工具,对web应用程序进行自动化攻击,如:枚举标识符,收集有用的数据,以及使用fuzzing 技术探测常规漏洞。

Repeater——是一个靠手动操作来补发单独的HTTP 请求,并分析应用程序响应的工具。Sequencer——是一个用来分析那些不可预知的应用程序会话令牌和重要数据项的随机性的工具。

Decoder——是一个进行手动执行或对应用程序数据者智能解码编码的工具。

Comparer——是一个实用的工具,通常是通过一些相关的请求和响应得到两项数据的一个可视化的“差异”。那么接下来,我将为大家一一演示,如何利用Burp Suite 来进行攻击测试

链接:https://pan.baidu.com/s/1XfSV7hh7hz9dNi2wGnWeFg 提取码:mz4n下载完直接打开BurpLoader.jar即可(PS:请预先安装好java环境,这个不详细介绍了)

配置Burp Suit

urp Suit是通过拦截代理的方式来拦截所有通过代理的网络流量以及客户端各种请求数据与服务端返回数据首先我们需要先配置好burp的代理用于监听

1.选择Proxy选项然后点击options选项进入设置界面,请按照图片上的箭号来配置代理信息

实战挖掘短信验证码漏洞插图2

2.接下来我们打开2345浏览器(大多浏览器皆可,只是习惯这款浏览器)点击右上角的菜单→工具→代理服务器设置→局域网设置,如下图

实战挖掘短信验证码漏洞插图3

这样子,我们已经配置好了burp的代理模式可以进行下一项操作

Proxy模块

该模块为Burp suit进行测试的核心,其由Forward,Drop,Interception is on/off,Action构成1Forward-是将我们拦截修改后的数据包继续发送到服务端,令服务端继续处理并返回信息Drop- 表示丢弃当前拦截的数据包Interception is on/off- ON代表了开启拦截功能,相反OFF代表关闭拦截的功能Action-将当前拦截数据包继续发送到spider,scanner等模块进行进一步测试当我们开始拦截数据包时,我们可以在Intercept选项卡中查看该数据包

实战挖掘短信验证码漏洞插图4

0x03实战正文

我们先在登入页面进行一波测试

实战挖掘短信验证码漏洞插图5

抓包之后,我们在raw里右键然后选择 send to Repeater

实战挖掘短信验证码漏洞插图6

然后我们对箭头所标记的地方进行修改并重放(点击GO会重新发送数据包至服务端)

实战挖掘短信验证码漏洞插图7
实战挖掘短信验证码漏洞插图8

\u67e5\u65e0\u6b64\u4eba\uff0c\u8bf7\u6838\u5b9

这串是Unicode编码,所以我们现在打开http://tool.chinaz.com/tools/unicode.aspx 进行转换,得到:查无此人,请核实说明这里登入接口暂时是无短信验证码漏洞的(因为有的站点可以直接用手机号登入,所以我们需要对于登入接口进行测试。这里我说暂时是由于时间原因,所以我没有注册账号来进行测试,小伙伴们以后在挖掘src时可以自行测试)

既然登入接口没有,我们试试注册接口吧(重复的操作不演示了),下图为在注册接口抓的包

实战挖掘短信验证码漏洞插图9

u53d1u9001u6210u529f解密得:发送成功。

那么接下来我们依旧是右键send to intruder

实战挖掘短信验证码漏洞插图10

我们先点击clear按钮把$消除,然后我们在phone那边add$操作如下

实战挖掘短信验证码漏洞插图11

这里不一定是选择后四位进行爆破,只是我习惯而已

实战挖掘短信验证码漏洞插图12

然后我们选择payload选项卡,点击load添加文件(文件中是字典,字典自己收集或用burp自带字典点击add for list)这些都做好后,我们打开最右上角的intruder然后点击 start attack

实战挖掘短信验证码漏洞插图13

看,这里的Unicode编码即为发送成功,而图中的Status那一列的状态码一致,说明这些数据包状态一致。短信都发送成功

实战挖掘短信验证码漏洞插图14

0x04修复建议

1.增加验证码,发送一次短信,需要填一次限制ip

2.在单位时间内发送短信数量以及每日单个手机接收短信数

3.限制每个手机号发送的时间间隔

本文章出自微信公众号 天禧信安 本站已受原作者授权,转载请保留原文链接。

© 版权声明
THE END
喜欢就亲吻一下吧
分享
评论 抢沙发
头像
评论一下幻城的文章吧
提交
头像

昵称

取消
昵称代码图片

    暂无评论内容