手机上怎么买彩票双色球 微信上有人推荐买彩票 能合买彩票的平台 夫妻买彩票狂中30亿 买彩票心态 买彩票就买大乐透开奖结果 哪个平台买彩票安全吗 买彩票有买一个号的吗 怎么看走势图买彩票 如何在电脑上买彩票 美国几岁可以买彩票? 福彩工作人员买彩票 彩客网买彩票 能在微信上买彩票吗 怎么买彩票容易中

如何发现Web App Yummy Days的安全漏洞?

来源:本站整理 作者:佚名 时间:2019-04-22 TAG: 我要投稿

作为一个金融Web应用的开发人员,我对安全问题一直尤为关注。在过去的两年里,我参与的一些Web应用在进入生产模式之前,都会经过全面严格的安全检查,以确保它们在完全投入使用后的安全性。
在这次的经历中,也让我学到了很多关于安全的知识 – 如身份验证,潜在的危险请求,注入等等 – 以及如何设计更为安全的应用程序。
安全是我的激情所在,而吃又是我的另一种激情。午餐时间是我一天中最享受的时刻之一。 El Tenedor (在西班牙)/ The Fork 是预订餐厅的最方便的应用程序,其中包含很多的折扣,可以帮我省下不少的钱。
在本文中,我将向你展示我是如何发现Web App Yummy Days的安全漏洞的,以及如何构建一个简单的自动客户端,让?#19968;?#24471;Yummy Days促销的奖品。
免责声明:本文中表达的观点是作者自己的观点,并不等同The Fork公司的观点。我已通过电子邮件通知了The Fork,他们已采取适当措施解决了该问题。此外,?#19968;?#38544;藏了URL?#35753;?#24863;信息。
注意?#20309;?#20013;某些部分可能需要你具备一定的技术知识进行理解。
The Yummy Days
对于那些不熟悉的人来说,The Yummy Days是一个为期一周的促销活动,只要你在每日游戏中保持一致,你就可以赢得高达120€的免费餐和Yums的一套奖品,这些奖品将被添加到你的帐户并可?#19968;?#25240;扣(1000 Yums相当于餐厅账单10欧元的折扣)。
促销活动开始后,可以在The Fork app上看到一个活动banner。打开后的界面如下所示:

要参与游戏,你需要提供你的电子邮件,以获取游戏资格,然后单击“PLAY”按钮。提交此表单?#20445;?#20320;必须要单击按钮才能触发动画并查看你是否赢得了奖品。

你可以每天玩一次,连续玩7天,来赢得奖品。
如果你够?#20197;耍?#20320;会从沙拉中取出一个Yum,这表明你获得了奖品,你将获得一个代码可以在下一个预订中使用,Yums会被添加到你的帐户。反之,你则会从沙拉中取出紫色的生菜(或其他紫色的东西),这表示你没有中将。
我玩了三四天这个游戏,获取到了大概300个Yums!

?#21592;?#21333;的思考
就在Yummy Days的最后一天,询问我电子邮件地址的表单无意中引起了我的注意和思考。促销页面是在某种嵌入式浏览器中打开的,我可以很容易地看到正在访问的URL( 隐藏在上图中)。
我很好奇,所以我在我的计算机上打开了一个URL,其中启用了谷歌浏览器及其开发者工具选项,以记录我在Yummy Days促销中的最后一次游戏中的所有请求。

很不幸,但我可以分析请求日志,以了解在每日游戏中发生的事情。似乎用户界面正在向Restful API服务器发出请求,所以我保存了请求和响应,我尝试再?#38382;?#29992;我的电子邮件地址,我被重定向到了一个说我已经玩过游戏的提示页面。
然后,我尝试再?#38382;?#29992;我的另一个电子邮件地址,而不是在The Fork应用程序中注册,看看会发生什么,令人惊讶的是我能够再玩一次! 这意味着API未验证插入的电子邮件是否已在应用程序中注册。这意味着我可以使用随机电子邮件地址无限次地玩游戏,获取更多的奖品,但我不能够这么做。
有人可能会认为这不是一个?#29616;?#30340;问题,因为,这需要我们手动填写一个随机的电子邮件地址,接受促销条件,在?#20197;?#30340;情况下保存代码,并反复重复整个过程。虽然这个人会获得一些奖品,但这不会对促销的结果产生太大影响,但我要是将这个过程自动化并在每秒?#21448;?#22797;一次呢?
自动化执行
有很多不同的方法可以来自动化这个过程,但我最喜欢的是Postman。Postman是一个客户端,它允许我们向API发出HTTP请求,并在每个请求前后执行代码片段。

你还记得之前我使用Google Chrome Developer Tools记录的游戏过程中的所有请求吗?现在我们就要用到这些请求了。为此,我创建了一个包含三个请求的集合(Get Cookies,Fill Form 和 Play)。
第一个请求Get Cookies,它是HTTP GET到Yummy Dayspage的url请求。在Test选项卡中,你可以放置一段将在请求之后执行的代码,我设置了两个Postman环境变量,其中包含响应附带的两个Cookie的值,位于Set-Cookie header中,有效期为请求后15?#31181;印?br/>
在第二个请求Fill Form中,我想复制表单提交,即HTTP POST到url。我创建了一个简单的预请求脚本,一个在请求之前执行的代码,用于设置一个随机生成的电子邮件地址的环境变量。

?#19968;?#20351;用这个生成的电子邮件设置了POST的JSON body,如下所示:

第一次尝试返回500状态码(内部服务器错误),表明?#20204;?#27714;有一些问题。查看Google Chrome中记录的请求,我将之前存储的两个Cookie与其他Cookie一起设置为了header,这次响应码为200,太棒了!

[1] [2]  下一页

【声明】:黑吧安全网(http://www.rliwo.live)登载此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规。如有问题请联系我们,联系邮箱[email protected],我们会在最短的时间内进行处理。
  • 最新更新
    • 相关阅读
      • 本类?#35753;?/li>
        • 最近下载
        购买彩票权威网址
        手机上怎么买彩票双色球 微信上有人推荐买彩票 能合买彩票的平台 夫妻买彩票狂中30亿 买彩票心态 买彩票就买大乐透开奖结果 哪个平台买彩票安全吗 买彩票有买一个号的吗 怎么看走势图买彩票 如何在电脑上买彩票 美国几岁可以买彩票? 福彩工作人员买彩票 彩客网买彩票 能在微信上买彩票吗 怎么买彩票容易中
        魔术猜生日 辽宁十一选五开奖号码 拳皇98ol阿修 中秋佳节,望着天上的一轮明月,我不禁吟诵道 南粤风采26选5开奖 天天酷跑黄金奖池有几期 东方珍兽论坛 法国图卢兹大学 浙江快乐12 黑龙江体彩6+1