【凤凰房产-注册安全分析报告-缺少轨迹的滑动条】

2024-06-18 18:04

本文主要是介绍【凤凰房产-注册安全分析报告-缺少轨迹的滑动条】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言

由于网站注册入口容易被黑客攻击,存在如下安全问题:

1. 暴力破解密码,造成用户信息泄露

2. 短信盗刷的安全问题,影响业务及导致用户投诉

3. 带来经济损失,尤其是后付费客户,风险巨大,造成亏损无底洞

在这里插入图片描述

所以大部分网站及App 都采取图形验证码或滑动验证码等交互解决方案, 但在机器学习能力提高的当下,连百度这样的大厂都遭受攻击导致点名批评, 图形验证及交互验证方式的安全性到底如何? 请看具体分析

一、 凤凰房产PC 注册入口

简介:凤凰网房产基于凤凰品牌的媒体特质,整合行业强势资源,对房地产市场进行客观详实解读, 为全球华人消费群体提供资讯、楼盘产品、购房信息及 ”生活+”服务。

在这里插入图片描述

二、 安全性分析报告:

凤凰房产研发的滑动条,存在一定的设计缺陷,缺少滑动条最重要的参数滑动轨迹的采集。

在这里插入图片描述

三、 测试方法:

  前端界面分析,这是凤凰房产自己研发的滑动条,网上没有现成的教学视频,但形式都差不多:

在这里插入图片描述
连滑动轨迹都没采集的滑动条
在这里插入图片描述

1 模拟器交互部分代码


public RetEntity send(WebDriver driver, String areaCode, String phone) {try {RetEntity retEntity = new RetEntity();driver.get(INDEX_URL);// 输入手机号WebElement phoneElement = driver.findElement(By.xpath("//input[contains(@placeholder,'请输入手机号')]"));phoneElement.clear();for (int i = 0; i < phone.length(); i++) {phoneElement.sendKeys(phone.charAt(i) + "");}driver.findElement(By.className("a-input-verify-send")).click();Thread.sleep(1000);WebElement dragElement = driver.findElement(By.className("drag"));WebElement moveElement = dragElement.findElement(By.className("handler-bg"));Actions actions = new Actions(driver);actions.moveToElement(moveElement).perform();Thread.sleep(500);// 获取生成轨道List<Integer> track = ActionMove.getTrack(245);// 执行拖动那个AliClient.move(driver, moveElement, track);Thread.sleep(2000);WebElement msgElement = driver.findElement(By.className("a-input-verify-counting"));String msg = (msgElement != null && msgElement.isDisplayed()) ? msgElement.getText() : null;System.out.println("msg=" + msg);if (msg != null && msg.contains("重新获取")) {retEntity.setRet(0);}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 滑动轨迹

/*** 移动* * @param driver* @param moveElemet* @param distance* @throws InterruptedException*/public static void move(WebDriver driver, WebElement moveElemet, List<Integer> trackList) {Actions actions = new Actions(driver);actions.clickAndHold(moveElemet).perform();// 按住鼠标左键不释放for (Integer distance : trackList) {actions.moveByOffset(distance, 0).perform();// 移动}actions.release(moveElemet).perform();// 释放鼠标左键}

3 测试结果

在这里插入图片描述

四丶结语

凤凰房产作为凤凰集团旗下的子公司,应该还是有一定科技实力的互联网知名媒体, 采用的是新研发的滑动条, 有胜过没,应该是参考了滑动条的代表是阿里, 可惜只学到表面,连滑动轨迹的数据都没采集,明明白白的样子工程, 用户体验一般,容易被破解, 一旦被国际黑客发起攻击,将会对老百姓形成骚扰,影响凤凰集团的品牌声誉。

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

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

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

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

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

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

这篇关于【凤凰房产-注册安全分析报告-缺少轨迹的滑动条】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Nginx分布式部署流程分析

《Nginx分布式部署流程分析》文章介绍Nginx在分布式部署中的反向代理和负载均衡作用,用于分发请求、减轻服务器压力及解决session共享问题,涵盖配置方法、策略及Java项目应用,并提及分布式事... 目录分布式部署NginxJava中的代理代理分为正向代理和反向代理正向代理反向代理Nginx应用场景

Redis中的有序集合zset从使用到原理分析

《Redis中的有序集合zset从使用到原理分析》Redis有序集合(zset)是字符串与分值的有序映射,通过跳跃表和哈希表结合实现高效有序性管理,适用于排行榜、延迟队列等场景,其时间复杂度低,内存占... 目录开篇:排行榜背后的秘密一、zset的基本使用1.1 常用命令1.2 Java客户端示例二、zse

Redis中的AOF原理及分析

《Redis中的AOF原理及分析》Redis的AOF通过记录所有写操作命令实现持久化,支持always/everysec/no三种同步策略,重写机制优化文件体积,与RDB结合可平衡数据安全与恢复效率... 目录开篇:从日记本到AOF一、AOF的基本执行流程1. 命令执行与记录2. AOF重写机制二、AOF的

MyBatis Plus大数据量查询慢原因分析及解决

《MyBatisPlus大数据量查询慢原因分析及解决》大数据量查询慢常因全表扫描、分页不当、索引缺失、内存占用高及ORM开销,优化措施包括分页查询、流式读取、SQL优化、批处理、多数据源、结果集二次... 目录大数据量查询慢的常见原因优化方案高级方案配置调优监控与诊断总结大数据量查询慢的常见原因MyBAT

分析 Java Stream 的 peek使用实践与副作用处理方案

《分析JavaStream的peek使用实践与副作用处理方案》StreamAPI的peek操作是中间操作,用于观察元素但不终止流,其副作用风险包括线程安全、顺序混乱及性能问题,合理使用场景有限... 目录一、peek 操作的本质:有状态的中间操作二、副作用的定义与风险场景1. 并行流下的线程安全问题2. 顺

Java JUC并发集合详解之线程安全容器完全攻略

《JavaJUC并发集合详解之线程安全容器完全攻略》Java通过java.util.concurrent(JUC)包提供了一整套线程安全的并发容器,它们不仅是简单的同步包装,更是基于精妙并发算法构建... 目录一、为什么需要JUC并发集合?二、核心并发集合分类与详解三、选型指南:如何选择合适的并发容器?在多

MyBatis/MyBatis-Plus同事务循环调用存储过程获取主键重复问题分析及解决

《MyBatis/MyBatis-Plus同事务循环调用存储过程获取主键重复问题分析及解决》MyBatis默认开启一级缓存,同一事务中循环调用查询方法时会重复使用缓存数据,导致获取的序列主键值均为1,... 目录问题原因解决办法如果是存储过程总结问题myBATis有如下代码获取序列作为主键IdMappe

Java中最全最基础的IO流概述和简介案例分析

《Java中最全最基础的IO流概述和简介案例分析》JavaIO流用于程序与外部设备的数据交互,分为字节流(InputStream/OutputStream)和字符流(Reader/Writer),处理... 目录IO流简介IO是什么应用场景IO流的分类流的超类类型字节文件流应用简介核心API文件输出流应用文

Android 缓存日志Logcat导出与分析最佳实践

《Android缓存日志Logcat导出与分析最佳实践》本文全面介绍AndroidLogcat缓存日志的导出与分析方法,涵盖按进程、缓冲区类型及日志级别过滤,自动化工具使用,常见问题解决方案和最佳实... 目录android 缓存日志(Logcat)导出与分析全攻略为什么要导出缓存日志?按需过滤导出1. 按

Linux中的HTTPS协议原理分析

《Linux中的HTTPS协议原理分析》文章解释了HTTPS的必要性:HTTP明文传输易被篡改和劫持,HTTPS通过非对称加密协商对称密钥、CA证书认证和混合加密机制,有效防范中间人攻击,保障通信安全... 目录一、什么是加密和解密?二、为什么需要加密?三、常见的加密方式3.1 对称加密3.2非对称加密四、