安全测试 : 奇安信(qianxin.com)网站短信接口安全测试,这个隐患要十分注意,不然可能瞬间损失数万!

本文主要是介绍安全测试 : 奇安信(qianxin.com)网站短信接口安全测试,这个隐患要十分注意,不然可能瞬间损失数万!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

– “隐患险于明火,防范胜于救灾,责任重于泰山”

安全问题不容忽视,不要亡羊补牢!

      • 前言
      • 一丶找到对外短信接口
      • 二丶分析外部防御措施
      • 三丶查看请求报文
      • 四丶分析测试
        • 1. 分析测试要点
        • 2. 编写代码模拟请求进行测试
      • 五丶结果分析
      • 六丶结语

前言

本文详细介绍了针对发送短信验证码接口的安全性测试过程,包含思路、部分测试代码以及测试结果。
本次测试网站 —奇安信(qianxin.com)
奇安信是一家提供安全服务的网站平台。

在这里插入图片描述

一丶找到对外短信接口

从该网站注册入口可以发现,也是通过发送手机短信验证码来完成注册。

在这里插入图片描述

二丶分析外部防御措施

  1. 输入手机号发送验证码
    在这里插入图片描述

外部防御措施:无

三丶查看请求报文

1. 找到发送短信的请求

按下F12打开浏览器控制台,再次点击发送验证码按钮通过控制台找出发送短信的请求。在这里插入图片描述

2. 查看请求方式

在这里插入图片描述

3. 查看请求报文头
在这里插入图片描述

4. 查看请求参数
在这里插入图片描述
据观察请求参数使用了base64加密

在这里插入图片描述使用在线解码工具可以看到加密参数中除了参数名phone和手机号码外还有些特殊字符
在这里插入图片描述由于前面的特殊字符和参数名都为固定值,所以我们只需要将手机号码加密替换掉原参数的手机号码加密串即可。

5. 查看返回值

在这里插入图片描述

四丶分析测试

1. 分析测试要点
  • 参数使用base64加密
2. 编写代码模拟请求进行测试

接着利用Java模拟报文请求 ,进行测试。部分代码如下:

//配置请求头inheads.put("Content-Type", "application/grpc-web-text");inheads.put("Host", "passport.qianxin.com");inheads.put("Origin", "https://passport.qianxin.com");inheads.put("Accept", "application/grpc-web-text");inheads.put("User-Agent", "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/77.0.3865.120 Safari/537.36");inheads.put("Referer", "https://passport.qianxin.com/reg/register");
//配置请求参数String str = "AAAAABoQABgBIhQKBXBob25lEgsx"+Base64.encode(phone.substring(1, phone.length()));
//配置请求retEntity = this.userClick(httpclient, cookieStore, "post", "https://passport.qianxin.com/api/zeus.CodeV1/CreateCode", inheads, outheads, input, phone);

启动测试:

1次:

在这里插入图片描述

手机号码唯一,IP唯一:

10次 --间隔时间1秒:

在这里插入图片描述

手机号码不唯一,IP唯一:

10次 --间隔时间1秒:

在这里插入图片描述

五丶结果分析

测试目标:

针对发送短信验证码接口进行安全性测试。

测试思路:

1.找到请求接口
2.分析请求报文
3.模拟请求测试

测试结果:

请求参数加密
但手机号码频率限制

测试结论:

当遇到更换手机号以及IP的攻击时,该网站的所有防御措施均无效。

风险等级: 极高

六丶结语

很多人在短信服务刚开始建设的阶段,可能不会在安全方面考虑太多,理由有很多。
比如:“ 需求这么赶,当然是先实现功能啊 ”,“ 业务量很小啦,系统就这么点人用,不怕的 ” , “ 我们怎么会被盯上呢,不可能的 ”等等。

有一些理由虽然有道理,但是该来的总是会来的。前期欠下来的债,总是要还的。越早还,问题就越小,损失就越低。

所以大家在安全方面还是要重视。(血淋淋的栗子!)#安全短信#

戳这里→康康你手机号在过多少网站注册过!!!

谷歌图形验证码在AI 面前已经形同虚设,所以谷歌宣布退出验证码服务, 那么当所有的图形验证码都被破解时,大家又该如何做好防御呢?

>>相关阅读
《腾讯防水墙滑动拼图验证码》
《百度旋转图片验证码》
《网易易盾滑动拼图验证码》
《顶象区域面积点选验证码》
《顶象滑动拼图验证码》
《极验滑动拼图验证码》
《使用深度学习来破解 captcha 验证码》
《验证码终结者-基于CNN+BLSTM+CTC的训练部署套件》

这篇关于安全测试 : 奇安信(qianxin.com)网站短信接口安全测试,这个隐患要十分注意,不然可能瞬间损失数万!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/297608

相关文章

Java controller接口出入参时间序列化转换操作方法(两种)

《Javacontroller接口出入参时间序列化转换操作方法(两种)》:本文主要介绍Javacontroller接口出入参时间序列化转换操作方法,本文给大家列举两种简单方法,感兴趣的朋友一起看... 目录方式一、使用注解方式二、统一配置场景:在controller编写的接口,在前后端交互过程中一般都会涉及

SpringBoot基于配置实现短信服务策略的动态切换

《SpringBoot基于配置实现短信服务策略的动态切换》这篇文章主要为大家详细介绍了SpringBoot在接入多个短信服务商(如阿里云、腾讯云、华为云)后,如何根据配置或环境切换使用不同的服务商,需... 目录目标功能示例配置(application.yml)配置类绑定短信发送策略接口示例:阿里云 & 腾

JAVA保证HashMap线程安全的几种方式

《JAVA保证HashMap线程安全的几种方式》HashMap是线程不安全的,这意味着如果多个线程并发地访问和修改同一个HashMap实例,可能会导致数据不一致和其他线程安全问题,本文主要介绍了JAV... 目录1. 使用 Collections.synchronizedMap2. 使用 Concurren

usb接口驱动异常问题常用解决方案

《usb接口驱动异常问题常用解决方案》当遇到USB接口驱动异常时,可以通过多种方法来解决,其中主要就包括重装USB控制器、禁用USB选择性暂停设置、更新或安装新的主板驱动等... usb接口驱动异常怎么办,USB接口驱动异常是常见问题,通常由驱动损坏、系统更新冲突、硬件故障或电源管理设置导致。以下是常用解决

Python从零打造高安全密码管理器

《Python从零打造高安全密码管理器》在数字化时代,每人平均需要管理近百个账号密码,本文将带大家深入剖析一个基于Python的高安全性密码管理器实现方案,感兴趣的小伙伴可以参考一下... 目录一、前言:为什么我们需要专属密码管理器二、系统架构设计2.1 安全加密体系2.2 密码强度策略三、核心功能实现详解

go中空接口的具体使用

《go中空接口的具体使用》空接口是一种特殊的接口类型,它不包含任何方法,本文主要介绍了go中空接口的具体使用,具有一定的参考价值,感兴趣的可以了解一下... 目录接口-空接口1. 什么是空接口?2. 如何使用空接口?第一,第二,第三,3. 空接口几个要注意的坑坑1:坑2:坑3:接口-空接口1. 什么是空接

浅谈mysql的sql_mode可能会限制你的查询

《浅谈mysql的sql_mode可能会限制你的查询》本文主要介绍了浅谈mysql的sql_mode可能会限制你的查询,这个问题主要说明的是,我们写的sql查询语句违背了聚合函数groupby的规则... 目录场景:问题描述原因分析:解决方案:第一种:修改后,只有当前生效,若是mysql服务重启,就会失效;

最新Spring Security实战教程之Spring Security安全框架指南

《最新SpringSecurity实战教程之SpringSecurity安全框架指南》SpringSecurity是Spring生态系统中的核心组件,提供认证、授权和防护机制,以保护应用免受各种安... 目录前言什么是Spring Security?同类框架对比Spring Security典型应用场景传统

如何用java对接微信小程序下单后的发货接口

《如何用java对接微信小程序下单后的发货接口》:本文主要介绍在微信小程序后台实现发货通知的步骤,包括获取Access_token、使用RestTemplate调用发货接口、处理AccessTok... 目录配置参数 调用代码获取Access_token调用发货的接口类注意点总结配置参数 首先需要获取Ac

讯飞webapi语音识别接口调用示例代码(python)

《讯飞webapi语音识别接口调用示例代码(python)》:本文主要介绍如何使用Python3调用讯飞WebAPI语音识别接口,重点解决了在处理语音识别结果时判断是否为最后一帧的问题,通过运行代... 目录前言一、环境二、引入库三、代码实例四、运行结果五、总结前言基于python3 讯飞webAPI语音