安全测试 : 小米(xiaomi.com)网站短信接口安全测试,如何保护短信接口?
– “隐患险于明火,防范胜于救灾,责任重于泰山”
安全问题不容忽视,不要亡羊补牢!
- 前言
- 一丶找到对外短信接口
- 二丶分析外部防御措施
- 三丶分析测试
- 1. 分析测试要点
- 2. 编写代码模拟操作进行测试
- 五丶结果分析
- 六丶结语
前言
本文详细介绍了针对发送短信验证码接口的安全性测试过程,包含思路、部分测试代码已经测试结果。
本次测试网站 —小米(xiaomi.com)
小米是一家以手机、智能硬件和IoT平台为核心的互联网公司,以智能手机、智能电视、笔记本等丰富的产品与服务。
一丶找到对外短信接口
从该网站注册入口可以发现,也是通过发送手机短信验证码来完成注册。
二丶分析外部防御措施
- 输入手机号并点击获取验证码
这里需要先拖动滑块完成滑动拼图验证码,完成后才可发送
外部防御措施:滑动验证码
三丶分析测试
1. 分析测试要点
- 通过模拟器模拟人为操作
- 识别滑动验证码
2. 编写代码模拟操作进行测试
该网站的滑动验证码为极验滑动验证码:
识别方法:图像识别算法,找到阴影位置。
大致思路:
- 将图片通过降噪,二值化等方式处理
- 在通过模板匹配算法找到阴影位置。
这里不做赘诉,感兴趣可以看下相关验证码识别的文章:
《极验滑动拼图验证码》
接着进行测试。部分代码如下:
// 输入手机号By phoneBy = By.name("phone");GeetSplitApi.waitForLoad(driver, phoneBy);WebElement phoneElemet = driver.findElement(phoneBy);phoneElemet.clear();for (int i = 0; i < phone.length(); i++) {char c = phone.charAt(i);phoneElemet.sendKeys(c + "");phoneElemet.click();}Thread.sleep(1 * 1000);
// 点击发送By clickBy = By.className("ant-btn-link");GeetSplitApi.waitForLoad(driver, clickBy);WebElement clickElemet = driver.findElement(clickBy);clickElemet.click();Thread.sleep(3 * 1000);// 下面的js代码根据canvas文档说明而来// 完整背景图geetest_canvas_fullbg geetest_fade geetest_absoluteString fullImgJs = "return document.getElementsByClassName(\"geetest_canvas_fullbg geetest_fade geetest_absolute\")[0].toDataURL(\"image/png\");";String fullImgPath = GeetCanvasApi.getImgByJs(driver, fullImgJs, input);// 含有缺口背景图geetest_canvas_bg geetest_absoluteString bgImgJs = "return document.getElementsByClassName(\"geetest_canvas_bg geetest_absolute\")[0].toDataURL(\"image/png\");";String bgImgPath = GeetCanvasApi.getImgByJs(driver, bgImgJs, input);// 获取滑动按钮By moveBy = By.className("geetest_slider_button");GeetSplitApi.waitForLoad(driver, moveBy);WebElement moveElemet = driver.findElement(moveBy);
启动测试:
五丶结果分析
测试目标:
针对发送短信验证码接口进行安全性测试。
测试思路:
1.找到请求接口
2.分析防御机制
3.测试绕过方法
测试结果:
通过
测试结论:
前台通过滑动验证码进行限制,后台手机号和Ip均无频率限制或次数限制,当遇到大量手机号以及IP的攻击时,该网站的所有防御措施均无效。
风险等级: 中高
六丶结语
很多人在短信服务刚开始建设的阶段,可能不会在安全方面考虑太多,理由有很多。
比如:“ 需求这么赶,当然是先实现功能啊 ”,“ 业务量很小啦,系统就这么点人用,不怕的 ” , “ 我们怎么会被盯上呢,不可能的 ”等等。有一些理由虽然有道理,但是该来的总是会来的。前期欠下来的债,总是要还的。越早还,问题就越小,损失就越低。
所以大家在安全方面还是要重视。(血淋淋的栗子!)#安全短信#
戳这里→康康你手机号在过多少网站注册过!!!
谷歌图形验证码在AI 面前已经形同虚设,所以谷歌宣布退出验证码服务, 那么当所有的图形验证码都被破解时,大家又该如何做好防御呢?
>>相关阅读
《腾讯防水墙滑动拼图验证码》
《百度旋转图片验证码》
《网易易盾滑动拼图验证码》
《顶象区域面积点选验证码》
《顶象滑动拼图验证码》
《极验滑动拼图验证码》
《使用深度学习来破解 captcha 验证码》
《验证码终结者-基于CNN+BLSTM+CTC的训练部署套件》
安全测试 : 小米(xiaomi.com)网站短信接口安全测试,如何保护短信接口?相关推荐
- 安全测试 : 途牛旅游网(tuniu.com)网站短信接口安全测试,什么是短信轰炸,什么是短信防刷,CICi .
– "隐患险于明火,防范胜于救灾,责任重于泰山" 安全问题不容忽视,不要亡羊补牢! 前言 一丶找到对外短信接口 二丶分析外部防御措施 三丶查看请求报文 四丶分析测试 1. 分析测试 ...
- 安全测试 : 潮点视频(shipin520.com)网站短信接口安全测试,你的网站安全吗?这一漏洞可能让你瞬间损失过万。
– "隐患险于明火,防范胜于救灾,责任重于泰山" 安全问题不容忽视,不要亡羊补牢! 前言 一丶找到对外短信接口 二丶分析外部防御措施 三丶查看请求报文 四丶分析测试 1. 分析测试 ...
- 听云短信接口安全测试,你的短信接口到底有多危险,可能瞬间损失过万,短信接口防盗刷测试
– "隐患险于明火,防范胜于救灾,责任重于泰山" 安全问题不容忽视,不要亡羊补牢! 前言 一丶找到对外短信接口 二丶分析外部防御措施 三丶查看请求报文 四丶分析测试 1. 直接在浏 ...
- php网站短信接口接入核心代码—动力思维乐信
php网站短信接口接入步骤: ①首先需要注册动力思维乐信短信接口平台账号,注册地址:(http://www.lx598.com/acc/x5?i=110792),注册免费送100条测试短信: ②登录接 ...
- 安全测试:孔夫子旧书网短信接口安全测试,你的短信接口到底有多危险,可能瞬间损失过万,短信接口防盗刷测试
– "隐患险于明火,防范胜于救灾,责任重于泰山" 安全问题不容忽视,不要亡羊补牢! 前言 一丶找到对外短信接口 二丶分析外部防御措施 三丶查看请求报文 四丶分析测试 1. 分析测试 ...
- android手机不能发短信,小米4手机收短信正常但无法发送短信怎么办?
小编的手机最近突然出现了这样一个问题,什么也没动,突然就无法发送短信了,而状况是一切都正常,收短信也正常,只是发不出去.后来去网上查询,原来很多网友都和小编遇到同样的问题,经过一番折腾,终于找到了解决 ...
- php短信接口调用网站,PHP网站短信接口函数示例
PHP网站短信接口函数示例 发布时间:2011-02-14来源:九天企信王作者:过竹雨 php调用sms9短信接口的函数: function sendsms($mobile,$content) { $ ...
- 实现网站短信验证功能
短信验证码现在已经成为了网站的标配,网站的用户注册.安全登录.密码找回等都会用到短信验证码,那么网站如何开通短信验证码功能呢?有一些站长不怎么了解,在此乐信小编就来为大家介绍一下. 实现网站短信验证功 ...
- 玩3D游戏花屏显卡测试过没有问题?网站测试咋测才能减少Bug
在上一篇文章中,小编为您详细介绍了关于<如何更改显卡的刷新频率?台式电脑64位 显卡N卡 GTX680 用驱动精灵更新 过后 屏幕分辨率只有800X60070>相关知识.本篇中小编将再为您 ...
最新文章
- 学计算机哪家强?清华竟是2018全球第1!(附排名)
- HTTP请求状态码404相关问题解决
- TypeScript 使用 字典 Dictionary
- love2d教程3--输入和音乐
- android 生命周期 Activity/Fragment lifecycle
- go语言for循环中修改临时变量无效
- java foreach和for循环区别_java相关:老生常谈foreach(增强for循环)和for的区别
- GetManifestResourceStream得到的Stream是null的解决
- 表空间自动报警存储过程
- tensorflow对应的numpy版本_版本更新 | TensorFlow 2.4.0 候选版本发布
- 软件天才都是训练出来的
- iphone捷径未能连接服务器,ios13无法安装第三方捷径怎么办 不允许不受信任的快捷指令解决方法...
- 计算机格式化没有fat32,无需格式化 U盘FAT32转NTFS格式教程
- 怎么把腾讯视频qlv格式转成mp4格式
- 初学Java简易自助饮品消费系统项目实践
- idea2018激活方式
- YDOOK: STM32: 波特率的定义 波特率计算 波特率是什么?
- 2016鄂教版小学信息技术初识计算机软件,鄂教版(2016)五年级全册信息技术 25.揭秘计算机工作世界--初识计算机工作原理 教案...
- 2023北京联合大学计算机考研信息汇总
- 工具条研究手记(2) - 认识CToolBar工具条类