• 欢迎访问安全专题网站,安全专题信息,安全专题教程,推荐使用最新版火狐浏览器和Chrome浏览器访问本网站,欢迎加入安全专题 QQ群
  • 安全专题现已支持滚动公告栏功能,兼容其他浏览器,看到的就是咯,在后台最新消息那里用li标签添加即可。
  • 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏安全专题吧

看黑客如何分分钟“插队”预约一加手机

安全经验 网络收集 2年前 (2016-12-24) 486次浏览

前言

我是一加手机的死忠粉,一加 1 手机出来的时候,我就想尽了一切办法,参加了各种活动,但还是没搞到邀请码。最终我从 XDA 论坛找了个人,花了 20 美元买了个邀请码。因此我很讨厌一加的预约+邀请系统。

看黑客如何分分钟“插队”预约一加手机

一加 2 使用了排队预约机制,虽然我早早地就申请了,当时我的排名位置大概是 9000 左右,但是在一加 2 的排队机制中,可以通过推荐好友来提升排名(即填写好友邮箱,一加会给好友发送邮件,邀请好友一起排队,而邀请者也可借此提升自己的排名)。我检查我的排名的时候已经跌到了 70,000 多。

我试着在一加的邀请页面填上 mailinator.com 的临时邮箱地址,居然可以用。我搞了 10 次,顺利将我的排名提升到了 50,000 名以上。于是我就想,能不能搞个什么脚本,自动帮我发送大量推荐邮件,提升我的排名。

大量发送推荐邮件

首先我要提取邀请页面里面的 URL。使用 Chrome 的调试工具,在里面的网络标签就可以看到(点击图片放大)。

看黑客如何分分钟“插队”预约一加手机

https://invites.oneplus.net/index.php?r=share/signup&success_jsonpCallback=success_jsonpCallback&email=test%40mailinator.com&_=1438634544515

上面这个就是邮箱填 test@mailinator.com 的时候收到的邀请邮件中的网址。注意网址最后的那串数字,这是个 cache buster,功能是防止浏览器缓存链接,还可以验证链接是不是旧链接。

一会儿我们要用 python 完成整个自动发送邀请、点击邮件内链接的过程,所以我们得把上面的网址改成这种形式:

https://invites.oneplus.net/index.php?r=share/signup&success_jsonpCallback=success_jsonpCallback&email={{name}}%40mailinator.com&_=1438634544515

{{name}}就是填写 mailinator 邮箱用户名的位置。

接下来我写了几行 python 代码,生成一个 32 位的随机字符串用作我的邮箱用户名。我用到了 Requests 库。

看黑客如何分分钟“插队”预约一加手机

我们可以通过一加的系统向 mailinator 邮箱发送确认邮件了。但怎么获取确认邮件里的内容呢?

在 https://mailinator.com/注册后,我们就能在设置页面找到 API token。然后根据官方的指导页面使用就可以了。

获取确认邮件确认链接

我们先要得到确认邮件的 emailID,所以 requests.get 这里请求的得是 mailinatorInbox。

一开始 requests.get 这里请求的必须得是 mailinatorInbox。

看黑客如何分分钟“插队”预约一加手机

我解释一下为什么我要添加 sleep timer。我们先来看一下我们收到的回应。

{‘messages’: [{‘to’: ‘test@mailinator.com’, ‘ip’: ‘198.2.132.96’, ‘fromfull’: ‘invites@oneplus.net’, ‘id’: ‘14385

98503–141602468-test’, ‘seconds_ago’: 2621, ‘subject’: ‘Confirm your email’, ‘time’: 1438598503781, ‘from’: ‘OneP

lus’, ‘been_read’: False}, {‘to’: ‘test@mailinator.com’, ‘ip’: ‘198.2.132.96’, ‘fromfull’: ‘invites@oneplus.net’, ‘id’: ‘1438598522–141603512-test’, ‘seconds_ago’: 2602, ‘subject’: ‘Successful sign-up for the reservation list’

, ‘time’: 1438598522985, ‘from’: ‘OnePlus’, ‘been_read’: False}]}

一开始,消息的键值返回的是空。经过一番调试,我设置 mailinator 的 API 在收到确认邮件之后再创建新的用户名。所以我加了个 timer,发送一个请求之后暂停五秒再获取。

我们得要用 emailID 获取邮件正文。从 json 提取一下就可以了。

看黑客如何分分钟“插队”预约一加手机

有了 emailID,我们就可以请求 email,获取邮件正文了。

看黑客如何分分钟“插队”预约一加手机

下图是获取的正文

看黑客如何分分钟“插队”预约一加手机

稍微用点正则表达式,就可以提取到确认邮件中的 URL 了。

看黑客如何分分钟“插队”预约一加手机

把所有的代码结合起来!

看黑客如何分分钟“插队”预约一加手机

我把它放着运行了一会,去喝了杯茶,我回来的时候排名已经上升 50,000 位了。

代码下载

附上所有代码:https://github.com/JakeCooper/OnePlusTwoBot

转载请注明:安全专题


Selinux 中国 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:看黑客如何分分钟“插队”预约一加手机
喜欢 (0)