做兼职的网站都有哪些工作,学校官网网站建设的现状分析,阳江seo网站推广,dw做的网站怎么上传图片前言
由于网站注册入口容易被黑客攻击#xff0c;存在如下安全问题#xff1a;
1. 暴力破解密码#xff0c;造成用户信息泄露
2. 短信盗刷的安全问题#xff0c;影响业务及导致用户投诉
3. 带来经济损失#xff0c;尤其是后付费客户#xff0c;风险巨大#xff0c;造…前言
由于网站注册入口容易被黑客攻击存在如下安全问题
1. 暴力破解密码造成用户信息泄露
2. 短信盗刷的安全问题影响业务及导致用户投诉
3. 带来经济损失尤其是后付费客户风险巨大造成亏损无底洞 所以大部分网站及App 都采取图形验证码或滑动验证码等交互解决方案 但在机器学习能力提高的当下连百度这样的大厂都遭受攻击导致点名批评 图形验证及交互验证方式的安全性到底如何 请看具体分析
一、 汽车之家会员注册入口
简介汽车之家纽约证券交易所股票代码ATHM港交所股票代码2518以科技驱动持续降低汽车行业决策和交易成本秉持着专业、好玩的态度为消费者提供“省心、省时、又省钱”的便捷汽车消费服务体验致力于成为国际领先的2B和2C的“内容生态工具服务交易平台”一站式汽车生活服务提供商实现真正的“看车-买车-用车-换车”的生态闭环。 二、 安全性分析报告 采用数美的滑动验证码容易被模拟器绕过甚至逆向后暴力攻击滑动拼图识别率在 95% 以上。 三、测试方法
前端界面分析采用的是数美的滑动验证码 网上有现成的逆向文章及视频参考不过我们这次不用逆向 只是采用模拟器的方式关键点主要模拟器交互、距离识别和轨道算法3部分。
测试发现问题
运行时偶尔出现停留时间异常的提示 后来发现纯人工操作也会出现 害人呀 模拟器交互部分 public RetEntity send(WebDriver driver, String areaCode, String phone) {try {RetEntity retEntity new RetEntity();driver.get(INDEX_URL);// 点击验证码登录WebElement tabEleme driver.findElement(By.xpath(//span[contains(text(),验证码登录)]));tabEleme.click();Thread.sleep(500);// 输入手机号WebElement phoneElement driver.findElement(By.id(phoneno));phoneElement.sendKeys(phone);// 数美滑动按钮WebElement moveElement driver.findElement(By.className(shumei_captcha_slide_btn));Actions actions new Actions(driver);actions.moveToElement(moveElement).perform();Thread.sleep(1000);String spCode autohome;long t System.currentTimeMillis();String path dataPath / spCode / t /;// 获取大图WebElement bigElement driver.findElement(By.xpath(//img[classshumei_captcha_loaded_img_bg]));String bgUrl bigElement.getAttribute(src);if (bgUrl null) {System.out.println(bgUrl bgUrl);return retEntity;}File bFile new File(path big.png);FileUtils.copyURLToFile(new URL(bgUrl), bFile);byte[] bigBytes FileUtils.readFileToByteArray(bFile);// 获取小图WebElement smallElement driver.findElement(By.xpath(//img[classshumei_captcha_loaded_img_fg]));String smallUrl smallElement.getAttribute(src);File smllFile new File(path small.png);FileUtils.copyURLToFile(new URL(smallUrl), smllFile);byte[] smallBytes FileUtils.readFileToByteArray(smllFile);if (smallUrl null) {System.out.println(smallUrl smallUrl);return retEntity;}String ckSum GenChecksumUtil.genChecksum(bigBytes);String[] result cv2.getOpenCvDistance(ckSum, bigBytes, smallBytes, spCode, 2);// 计算距离Double width Double.parseDouble(result[0]);Double d (Double.parseDouble(result[1]) - width) * 0.64;int distince d.intValue();System.out.println(distince distince);ActionMove.move(driver, moveElement, distince);Thread.sleep(3000);// 点击获取验证码driver.findElement(By.id(aGetphoneno)).click();Thread.sleep(1000);WebElement msgElement driver.findElement(By.id(phonemsg));String msg (msgElement ! null msgElement.isDisplayed()) ? msgElement.getText() : null;retEntity.setMsg(msg);if (msg ! null msg.contains(验证码已发送)) {retEntity.setRet(0);} else {System.out.println(msg msg);}return retEntity;} catch (Exception e) {System.out.println(send() e.toString());StringBuffer er new StringBuffer(send() e.toString() \n);for (StackTraceElement elment : e.getStackTrace())er.append(elment.toString() \n);System.out.println(er.toString());return null;} finally {driver.manage().deleteAllCookies();}}
2. 距离识别
轨道生成及移动算法 OpenCv 轮廓匹配测试样例
四丶结语
汽车之家作为汽车资讯行业的知名网站 采用的却是通俗的滑动验证产品 该产品稳定并且市场占有率很高 在一定程度上提高了用户体验 但安全性在机器学习的今天 已经无法应对攻击了并且正是由于该产品通俗 所以在网上破解的文章和教学视频也是大量存在并且经过验证滑动产品很容易被破解 所以除了滑动验证方式 花样百出的产品层出不穷但本质就是牺牲用户体验来提高安全。 很多人在短信服务刚开始建设的阶段可能不会在安全方面考虑太多理由有很多。 比如“ 需求这么赶当然是先实现功能啊 ”“ 业务量很小啦系统就这么点人用不怕的 ” “ 我们怎么会被盯上呢不可能的 ”等等。 有一些理由虽然有道理但是该来的总是会来的。前期欠下来的债总是要还的。越早还问题就越小损失就越低。 所以大家在安全方面还是要重视。血淋淋的栗子#安全短信# 戳这里→康康你手机号在过多少网站注册过
谷歌图形验证码在AI 面前已经形同虚设所以谷歌宣布退出验证码服务 那么当所有的图形验证码都被破解时大家又该如何做好防御呢
相关阅读 《腾讯防水墙滑动拼图验证码》 《百度旋转图片验证码》 《网易易盾滑动拼图验证码》 《顶象区域面积点选验证码》 《顶象滑动拼图验证码》 《极验滑动拼图验证码》 《使用深度学习来破解 captcha 验证码》 《验证码终结者-基于CNNBLSTMCTC的训练部署套件》