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

news2025/1/22 13:05:29

前言

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

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.coloradmin.cn/o/1837559.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Eureka 学习笔记(1)

一 、contextInitialized() eureka-core里面&#xff0c;监听器的执行初始化的方法&#xff0c;是contextInitialized()方法&#xff0c;这个方法就是整个eureka-server启动初始化的一个入口。 Overridepublic void contextInitialized(ServletContextEvent event) {try {init…

Win32:第一个窗口程序-注册窗口类(Part.2)

在part 1中我们阐述了窗口模板程序中的相关宏、全局函数和相关函数声明后我们Part2就来说一下part 1中声明的一个函数MyRegisterClass注册窗口类函数&#xff08;函数中也使用到了定义的一些全局变量&#xff09;&#xff0c;为什么要注册窗口类在part 1中已经阐述过了&#xf…

本地快速部署 SuperSonic

本地快速部署 SuperSonic 0. 引言1. 本地快速部署 supersonic2. 访问 supersonic3. 支持的数据库4. github 地址 0. 引言 SuperSonic融合Chat BI&#xff08;powered by LLM&#xff09;和Headless BI&#xff08;powered by 语义层&#xff09;打造新一代的BI平台。这种融合确…

Python 数据可视化 散点图

Python 数据可视化 散点图 import matplotlib.pyplot as plt import numpy as npdef plot_scatter(ref_info_dict, test_info_dict):# 绘制散点图&#xff0c;ref横&#xff0c;test纵plt.figure(figsize(80, 48))n 0# scatter_header_list [peak_insert_size, median_insert…

如何实现埋点日志精准监控

作者 | 张小七 导读 日志中台承载了百度千亿量级PV的埋点流量&#xff0c;如何对这些流量进行准确监控&#xff0c;并支持个性化字段的抽取、下钻&#xff0c;是日志中台的一大难题。本文简单介绍了日志中台的基本概念及实时流架构&#xff0c;并基于此深入讲解了低成本实现可扩…

【调试笔记-20240618-Windows- Tauri 调试中关闭自动重构的功能】

调试笔记-系列文章目录 调试笔记-20240618-Windows- Tauri 调试中关闭自动重构的功能 文章目录 调试笔记-系列文章目录调试笔记-20240618-Windows- Tauri 调试中关闭自动重构的功能 前言一、调试环境操作系统&#xff1a;Windows 10 专业版调试环境调试目标 二、调试步骤搜索相…

【CSS in Depth2精译】1.1.2 行内样式~1.1.3 选择器的优先级

文章目录 1.1.2 行内样式1.1.3 选择器的优先级1.1.3.1 优先级的写法1.1.3.2 关于优先级的思考 1.1.2 行内样式 如果无法通过样式表来源规则解决样式冲突&#xff0c;浏览器则会考察它们是否通过 行内样式 作用于该元素。当使用 HTML 的 style 属性声明样式时&#xff0c;该样式…

kaggle notebook和jupyter notebook读取csv

kaggle本地比赛用打开notebook的示例代码可以获取当前比赛的文件数据路径&#xff0c;进而后续直接复制读取 jupyter notebook读取csv 直接下载数据集到电脑上&#xff0c;并用本地路径读取就行。

ElasticSearch学习篇13_《检索技术核心20讲》进阶篇之LSM树

背景 学习极客实践课程《检索技术核心20讲》https://time.geekbang.org/column/article/215243&#xff0c;文档形式记录笔记。 内容 磁盘和内存数据读取特点 工业界中数据量往往很庞大&#xff0c;比如数据无法全部加载进内存&#xff0c;无法支持索引的高效实时更新&…

QT day04

一、思维导图 二、登录界面优化 代码&#xff1a; 界面&#xff1a; *{background-color: rgb(255, 255, 255); }QFrame#frame{border-image: url(:/Logo/shanChuan.jpg);border-radius:15px; }#frame_2{background-color: rgba(110, 110, 110, 120);border-radius:15px; }Q…

ionic 项目通过 android studio 打开报错 capacitor.settings.gradle 文件不存在

问题出现 原因分析 在程序相应的目录上面&#xff0c;没有找到对应的配置文件&#xff0c;但是这个文件不是我们自己生成的&#xff0c;而是通过 ionic 编译之后生成。 处理方案 先执行 ionic build&#xff0c;将 ionic 项目打包出来然后执行 npx cap sync 再使用 Android…

【小白专用 已验证24.6.18】C# SqlSugar操作MySQL数据库实现增删改查

【小白专用24.6.18】C# SqlSugar&#xff1a;连接数据库实现简单的&#xff0c;增、删、改、查-CSDN博客 SqlSugar .Net ORM 5.X 官网 、文档、教程 - SqlSugar 5x - .NET果糖网 SqlSugar项目创建 通过NuGet包管理器搜索SqlSugar&#xff08;MySql还要安装MySql.Data、Newton…

C++ | Leetcode C++题解之第165题比较版本号

题目&#xff1a; 题解&#xff1a; class Solution { public:int compareVersion(string version1, string version2) {int n version1.length(), m version2.length();int i 0, j 0;while (i < n || j < m) {long long x 0;for (; i < n && version1[…

HTML+CSS+PHP实现网页留言板功能(需要创建数据库)

话说前头&#xff0c;我这方面很菜滴。这是我网页作业的一部分。 1.body部分效果展示&#xff08;不包括footer&#xff09; 2、代码 2.1 leaving.php&#xff08;看到的网页&#xff09; <!DOCTYPE html> <html lang"en"> <head> <met…

Flask之模板

前言&#xff1a;本博客仅作记录学习使用&#xff0c;部分图片出自网络&#xff0c;如有侵犯您的权益&#xff0c;请联系删除 目录 一、模板的基本用法 1.1、创建模板 1.2、模板语法 1.3、渲染模板 二、模板辅助工具 2.1、上下文 2.2、全局对象 2.3、过滤器 2.4、测试…

低市值Pow赛道解析,探寻百倍潜力项目

随着铭文的火爆出圈&#xff0c;比特币减半的到来&#xff0c;关于Pow赛道的讨论也在变得火热&#xff0c;不少投资机构都将Pow赛道作为2024年分析的重点。Pow赛道又来已久&#xff0c;不少项目的市值都超过10亿美元&#xff0c;而对于大多数投资者来说&#xff0c;低市值高回报…

Mp3文件结构全解析(一)

Mp3文件结构全解析(一) MP3 文件是由帧(frame)构成的&#xff0c;帧是MP3 文件最小的组成单位。MP3的全称应为MPEG1 Layer-3 音频 文件&#xff0c;MPEG(Moving Picture Experts Group) 在汉语中译为活动图像专家组&#xff0c;特指活动影音压缩标准&#xff0c;MPEG 音频文件…

Spring事务 和 事务传播机制

这里的 事务 和之前 MySQL的事务 一样&#xff0c;都是表示将⼀组操作封装成⼀个执⾏单元&#xff08;封装到⼀起&#xff09;&#xff0c;要么全部成功&#xff0c;要么全部失败。 Spring 中事务的实现 1. 编程式事务&#xff08;手动档&#xff09;。 package com.example.…

图论之岛屿系列

图论之岛屿系列 形成模板进行学习&#xff0c;加快学习效率 深度优先遍历 # 可以直接改原始grid的采用直接改的方案来完成修改&#xff0c;减少了内存开支 def dfs(self, grid, i, j):if i < 0 or j < 0 or i > len(grid) or j > len(grid[0]) or grid[i][j] &…

无引擎底层游戏开发(1):EasyX图形库引入 + 跟随鼠标移动的小球

来自bilibili up主的Voidmatrix的视频教程&#xff1a;【从零开始的C游戏开发】 一、图形库引入 EasyX在国内文档最多&#xff0c;而且功能函数齐全&#xff0c;最适合入门。 环境配置&#xff1a;vs2022 &#xff08;官网下载免费版&#xff09; 百度搜EasyX官方&#xff0…