短信验证码回显


前言

持续更新:整理下渗透测试工作中发现过的漏洞(包含漏洞描述、漏洞等级、漏洞验证、修复建议),这里不深究漏洞产生的各种后利用或者绕过方式,漏洞验证过程不局限于文章中的方法,能够证明漏洞存在即可。

0x01 漏洞描述

- 短信验证码回显 -

由于网站程序开发人员在设计验证码时为了方便使用,会选择将验证码回显在响应中,来判断用户输入的验证码是否和响应中的验证码一致,如果一致就会通过身份校验。攻击者可以通过拦截数据包等手段获取短信验证码值,根据短信验证码使用场景的不同,将会导致任意账户登录、任意密码重置、用户身份盗用等更多高危的风险产生。

0x02 漏洞等级

威胁级别 高危 中危 低危

0x03 漏洞验证

输入手机号,点击获取验证码,并拦截数据包。

响应数据包中返回了发送手机号的验证码值,证明漏洞存在。

0x04 漏洞修复

  1. 禁止将验证码值在响应包中显示。
  2. 验证码仅存放于服务端完成校验,不要通过其他任何方式直接调用。

文章作者: LuckySec
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 LuckySec !
评论
 上一篇
Weblogic反序列化远程代码执行漏洞(CVE-2016-3510) Weblogic反序列化远程代码执行漏洞(CVE-2016-3510)
Weblogic Server是Oracle公司的一款适用于云环境和传统环境的应用服务器,它提供了一个现代轻型开发平台,支持应用从开发到生产的整个生命周期管理,并简化了应用的部署和管理。Oracle Weblogic Server将反序列化的对象封装进了Weblogic.corba.utils.MarshalledObject,然后再对MarshalledObject进行序列化。当字节流反序列化时MarshalledObject不在Weblogic黑名单里,可正常反序列化,在反序列化时MarshalledObject对象调用readObject时对MarshalledObject封装的序列化对象再次反序列化,从而绕过黑名单的检查导致远程命令执行漏洞。
2022-11-01
下一篇 
短信验证码爆破 短信验证码爆破
短信验证码一般由4位或6位数字组成,若服务端未对验证时间、次数进行限制,则存在被爆破成功的可能性。输入手机号获取验证码,输入任意短信验证码发起请求并抓取数据包,将短信验证码参数字段设置成payloads取值范围为000000-999999进行暴力破解,根据返回响应包状态或长度等特征进一步判断是否爆破成功。
2022-10-30
  目录