建新网站开发流程图,便利的邯郸网站建设,诸城哪有做公司网站的,建立网站和新媒体信息发布制度前言
由于网站注册入口容易被黑客攻击#xff0c;存在如下安全问题#xff1a;
暴力破解密码#xff0c;造成用户信息泄露短信盗刷的安全问题#xff0c;影响业务及导致用户投诉带来经济损失#xff0c;尤其是后付费客户#xff0c;风险巨大#xff0c;造成亏损无底洞…前言
由于网站注册入口容易被黑客攻击存在如下安全问题
暴力破解密码造成用户信息泄露短信盗刷的安全问题影响业务及导致用户投诉带来经济损失尤其是后付费客户风险巨大造成亏损无底洞
所以大部分网站及App 都采取图形验证码或滑动验证码等交互解决方案 但在机器学习能力提高的当下连百度这样的大厂都遭受攻击导致点名批评 图形验证及交互验证方式的安全性到底如何 请看具体分析
一、 社保通 PC端注册入口
简介云生集团成立于2015年以“让社会更高效”为使命致力于成为企业信任、人人信赖的人力资源科技和民生服务平台。为中国企业提供自主知识产权的数字化系统解决方案云生集团目前在全球超过260个城市设立了直营分支机构构建成服务全球的智慧企业服务骨干网络GSSN累计服务16000余家企业150W企业雇员。 二、 安全性分析报告
采用第三方的智能验证包含点击和滑动验证容易被模拟器绕过甚至逆向后暴力攻击滑动拼图识别率在 95% 以上。 在测试中点击登录后闪现出滑动验证的加载页面接着消失不能正常出现滑动验证估计存在BUG或智能验证算法存在问题导致一直跳过。 三、 测试方法
前端界面分析这是某第三方的版本比较简单网上有大量的文章参考 我们采用模拟器的方式关键点主要模拟器交互、距离识别和轨道算法3部分。 测试中发现模拟鼠标无法通过但采用物理鼠标后一点就过并且再也不会弹出滑动窗口。 1. 模拟器交互部分
private static String INDEX_URL https://web.hrwork.com/account/register;Overridepublic RetEntity send(WebDriver driver, String areaCode, String phone) {RetEntity retEntity new RetEntity();try {driver.get(INDEX_URL);// 1 输入手机号WebElement phoneElemet ChromeDriverManager.waitElement(driver, By.id(js-form-mobile), 10);phoneElemet.sendKeys(phone);// 2 获取验证码WebElement gtElement ChromeDriverManager.waitElement(driver, By.id(js-btn-send), 1);gtElement.click();// rectTopWebElement inteliElement driver.findElement(By.id(rectTop));inteliElement.click();// 3 阿里 滑动验证条Thread.sleep(1 * 1000);boolean isRobot false;int beginX 1490;int beginY 475;if (isRobot) {RobotMove.move(beginX, beginY, 460);} else {AliClient.moveExec(driver, 460);}Thread.sleep(1500);String gtInfo gtElement ! null ? gtElement.getText() : null;retEntity.setMsg(gtInfo);if (gtInfo.contains(重新发送)) {retEntity.setRet(0);} else {retEntity.setRet(-1);System.out.println(gtInfo gtInfo);}return retEntity;} catch (Exception e) {System.out.println(e.toString());return null;} finally {driver.manage().deleteAllCookies();}}
2. 物理鼠标移动算法
/*** 物理鼠标点击* * param beginX* param beginY*/public static void RobotClick(int beginX, int beginY) {Robot robot null;Double curX null, curY null;try {// 从当前位置移动到滑动条位置robot new Robot();Point location MouseInfo.getPointerInfo().getLocation();curX location.getX();curY location.getY();Double xAdd beginX - curX;Double yAdd beginY - curY;//System.out.println(RobotMove() init(curX curX ,curY curY ,xAdd xAdd ,yAdd yAdd ));Double p (xAdd.compareTo(yAdd) 0) ? Math.abs(yAdd) : Math.abs(xAdd);Double moveX curX;Double moveY curY;for (int k 0; k p.intValue(); k) {moveX xAdd / p;moveY yAdd / p;robot.mouseMove(moveX.intValue(), moveY.intValue());robot.delay(1);}robot.mouseMove(beginX, beginY);robot.mousePress(InputEvent.BUTTON1_MASK); // 按下左键} catch (Throwable e) {System.out.print(RobotMove() e.toString());} finally {if (robot ! null) {robot.mouseRelease(InputEvent.BUTTON1_MASK); // 松开左键robot.mouseMove(curX.intValue(), curY.intValue());}}}
3. 测试结果输出 四丶结语
云生集团成立于2015年以“让社会更高效”为使命致力于成为企业信任、人人信赖的人力资源科技和民生服务平台。为中国企业提供自主知识产权的数字化系统解决方案云生集团目前在全球超过260个城市设立了直营分支机构构建成服务全球的智慧企业服务骨干网络GSSN累计服务16000余家企业150W企业雇员拥有雄厚的技术实力但采用的是第三方的滑动验证 并且为了用户体验采用智能的方式不能正常加载导致安全隐患。 即使问题解决其安全性在机器学习的今天 已经无法应对攻击了并且正是由于该产品通俗 所以在网上破解的文章和教学视频也是大量存在并且经过验证滑动产品很容易被破解 所以除了滑动验证方式 花样百出的产品层出不穷但本质就是牺牲用户体验来提高安全。 很多人在短信服务刚开始建设的阶段可能不会在安全方面考虑太多理由有很多。 比如“ 需求这么赶当然是先实现功能啊 ”“ 业务量很小啦系统就这么点人用不怕的 ” “ 我们怎么会被盯上呢不可能的 ”等等。 有一些理由虽然有道理但是该来的总是会来的。前期欠下来的债总是要还的。越早还问题就越小损失就越低。 所以大家在安全方面还是要重视。血淋淋的栗子#安全短信# 戳这里→康康你手机号在过多少网站注册过
谷歌图形验证码在AI 面前已经形同虚设所以谷歌宣布退出验证码服务 那么当所有的图形验证码都被破解时大家又该如何做好防御呢
相关阅读 《腾讯防水墙滑动拼图验证码》 《百度旋转图片验证码》 《网易易盾滑动拼图验证码》 《顶象区域面积点选验证码》 《顶象滑动拼图验证码》 《极验滑动拼图验证码》 《使用深度学习来破解 captcha 验证码》 《验证码终结者-基于CNNBLSTMCTC的训练部署套件》