【去哪儿-注册安全分析报告-缺少轨迹的滑动条】

前言

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

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

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

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

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

一、 去哪儿PC 注册入口

简介:去哪儿(包含去哪儿旅行APP及去哪儿网Qunar.com)是中国领先的一站式旅行平台。去哪儿网站上线于2005年5月,2010年去哪儿旅行App面世。成立至今,去哪儿坚持以低价为核心竞争力,帮助更多用户解锁"人生第一张机票"。截至目前,去哪儿已拥有超两亿交易用户,并以年新增交易用户逾千万的规模持续增长。

去哪儿与全球超过100家航空公司、9000家旅行代理商达成了深度合作,为用户提供更低的价格、更全的覆盖以及更好的服务。截至目前,可实时搜索预定全球范围内超68万条航线机票、320万家境内外酒店、100多个国家及地区的签证服务、100万条度假线路、近2万个全球目的地景区门票等,支持火车票7*24小时无间断出票,并提供租车、接送机等地面交通服务。


二、 安全性分析报告:

去哪儿研发的滑动条,存在一定的设计缺陷,缺少滑动条最重要的参数滑动轨迹的采集。

三、 测试方法:

前端界面分析,这是去哪儿自己研发的滑动条,网上没有现成的教学视频,但形式都差不多,连滑动轨迹都没采集的滑动条:

1 模拟器交互部分代码

bash 复制代码
private static String INDEX_URL = "https://user.qunar.com/passport/register.jsp";
	private final static Logger logger = LoggerFactory.getLogger(Qunar.class);

	@Override
	public RetEntity send(WebDriver driver, String areaCode, String phone) {
		try {
			RetEntity retEntity = new RetEntity();
			driver.get(INDEX_URL);

			// 输入手机号
			WebElement phoneElement = driver.findElement(By.id("telphone"));
			phoneElement.clear();
			phoneElement.sendKeys(phone);

			// 获取验证码
			driver.findElement(By.className("codeButton")).click();
			Thread.sleep(1000);

			// 向右滑动滑块
			WebElement moveElement = driver.findElement(By.xpath("//div[@class='captchaContainer']/div/div/i"));
			ActionMove.move(driver, moveElement, 500);

			Thread.sleep(1000);
			WebElement msgElement = ChromeDriverManager.waitElement(driver, By.className("codeTime"), 10);
			String msg = (msgElement != null && msgElement.isDisplayed()) ? msgElement.getText() : null;
			retEntity.setMsg(msg);
			if (msg != null && msg.contains("重新获取")) {
				retEntity.setRet(0);
			}
			return retEntity;
		} catch (Exception e) {
			System.out.println("phone=" + phone + ",e=" + e.toString());
			for (StackTraceElement ele : e.getStackTrace()) {
				System.out.println(ele.toString());
			}
			return null;
		} finally {
			driver.manage().deleteAllCookies();
		}
	}

2 滑动轨迹

bash 复制代码
	/**
	 * 移动
	 * 
	 * @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 测试结果

四丶结语

去哪儿(包含去哪儿旅行APP及去哪儿网Qunar.com)是中国领先的一站式旅行平台。去哪儿网站上线于2005年5月,2010年去哪儿旅行App面世。成立至今,去哪儿坚持以低价为核心竞争力,帮助更多用户解锁"人生第一张机票"。截至目前,去哪儿已拥有超两亿交易用户,并以年新增交易用户逾千万的规模持续增长。作为航旅行业知名的在互联网线订票平台,拥有雄厚的技术研发实力,记得上次测试时用的是图形验证码,这回改进了, 采用的是自己研发的滑动条, 有胜过没,应该是参考了滑动条的代表是阿里, 可惜只学到表面,连滑动轨迹的数据都没采集,明明白白的样子工程, 用户体验一般,容易被破解, 一旦被国际黑客发起攻击,将会对老百姓形成骚扰,影响去哪儿网自己的品牌声誉。

很多人在短信服务刚开始建设的阶段,可能不会在安全方面考虑太多,理由有很多。

比如:" 需求这么赶,当然是先实现功能啊 "," 业务量很小啦,系统就这么点人用,不怕的 " , " 我们怎么会被盯上呢,不可能的 "等等。

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

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

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

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

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

相关推荐
ahccqw4 分钟前
OpenCV 缩放 与 位移
人工智能·opencv·计算机视觉
长不大的杨瑞杰11 分钟前
OpenCode v2 GitLab 集成实战:Issue 驱动开发、MR 审查与 CI/CD 最小权限
人工智能·ci/cd·gitlab·ai编程·opencode
深蓝AI1 小时前
美团 LongCat-2.5 拆解:1.6T 参数只激活 3%,1M 上下文卖 0.3 美元,Agent 模型的账变了
人工智能·llm
小和尚同志6 小时前
54.6k star 的 Multica: 集多 Agent 和看板于一体的 AI 平台
人工智能·aigc·three.js
一枕槐安4876 小时前
少样本提示(Few-shot)在业务场景的落地实践
大数据·人工智能·意图分类·mmr多样性·knn检索·动态示例选择
王中阳Go7 小时前
后端转 Agent 岗面试怎么答:8 个高频问题与应答口径
人工智能·后端·python·大语言模型
海宇AI7 小时前
零信任架构实战:基于海宇个人风险报告构建自动化分期商城信用额度初审网关
运维·人工智能·架构·自动化
骑着蜗牛撵大象3277 小时前
大模型 Agent 的沙箱护栏:gVisor 隔离、出口白名单与审计闭环
java·开发语言·jvm·安全·agent沙箱·gvisor·microvm
tellmewhoisi7 小时前
深度学习32:卷积神经网络:卷积层(卷积运算,填充,步幅)
人工智能·深度学习·cnn
weixin_307779138 小时前
RAG 面试陷阱——混合检索并非无条件优越:一个条件反转实验
人工智能·python·面试·职场和发展