早上好,哈布罗夫斯克。 考虑到
上一篇文章的恐慌
,我向您介绍第二版。 一切都很简单,没有鼻涕。 忠诚度体系是一个大漏洞。 经过一些实验,我们得出的结论是,使用这种系统的大量站点在尝试使用该系统时完全没有逻辑。
当然,某人至少能够实现简单但保护的功能,但是有人以这种方式想象互联网:

通常,许多黑客攻击几乎都以这种形式发生。 只有在电影中,它们才能向您展示一堆未来的小玩意,而这些小玩意的功能在目前还没有意义。
让我们开始做生意。 例如,我将采用一些可能存在大量karzh的系统。
让我们从
OBI开始。
我马上要说,对我来说,这还很少研究。 他们关于奖金使用的模糊规定使我产生了不同的怀疑。 首先,他们有几个奖励计划。 对于其中一个,您只能在俄罗斯的三个城市付款,而对于另一个城市-则总共需要付款。 同时,奖金并不适用于所有人,而仅适用于商品价值的50%。 但是以半价建造房屋已经不错。
通常,OBI还有一个应用程序,您可以在其中登录我们的卡并通过生成条形码来付款。
轻触魔杖即可进入注册页面:
我们得到
不是我们卡的注册表格:
好吧,填满它。 顺便说一句,这里的纸牌计算系统与“十字路口”中的相同。 为了弄清楚
-Moon算法 。 我填写了所有数据,并指出了一个随机的卡号。 在此过程中,我通过嗅探器捕获了注册请求。
循环重复数百次。 没有错误。 该站点非常有效地处理了我的请求,并在json中返回了响应:
"data":{"registration":null},"errors":[{"message":"\u041e\u0448\u0438\u0431\u043a\u0430 \u043f\u0440\u0438 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0438 \u0444\u043e\u0440\u043c\u044b.","type":"validation","locations":{"path":"\/work\/obiclub.ru\/app\/GraphQL\/Mutation\/Frontend\/RegistrationMutation.php","line":109},"safe":true,"validation":{"cardnum":["\u041d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u0439 \u043d\u043e\u043c\u0435\u0440 \u043a\u0430\u0440\u0442\u044b. \u041f\u0440\u043e\u0432\u0435\u0440\u044c\u0442\u0435 \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e\u0441\u0442\u044c \u0432\u0432\u0435\u0434\u0435\u043d\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445."]}}]}
在变量
cardnum中有以下文本,该文本是从
希腊 Unicode转换而来的-
“卡号错误。 检查输入数据的正确性»
有趣的是,对于我从一个IP发出的所有请求,都没有阻塞。 此外,会话寿命很长。 一天后,我检查了-答案是。 至少可以重置cookie,输入验证码,然后输入一个稳定的“ facepalm”。 编写软件并不困难,只有它会落在
英国。 射频 第273条 ,这已经很危险!
好吧,我们盖了房子。 我们应该给汽车加油并在城市周围骑行。 在这里,我可以举一个最受欢迎的加油站为例,但是出于某些考虑,我不会这样做。 每个人都有一个系统,但是使用的方法不同,因此我将在最简单,鲜为人知的加油站进行演示。
AZS-ETALON.RU 。 它引起了我对我城市的关注。 操作原理相似-有会员卡; 有一个我们注册卡的站点; 有一个通过授权的应用程序,您可以在结帐时付款。 好吧,这通常很有趣。
转到卡注册表格
-lk.azs-etalon.ru/registration.php填写任何数据,单击
“ Hack” “ Register”。 我们得到答案
“无效的卡号”
这意味着我们将在帐户中输入下一个数字,依此类推,直到为四轮驱动的朋友找到免费的燃油为止。
-自动化吗?
-容易
我们抓到包裹进行注册。 我们得到以下
HTTP标头:扰流板方向主持人:lk.azs-etalon.ru
用户代理:Mozilla / 5.0(Windows NT 6.3; WOW64; rv:41.0)Gecko / 20100101 Firefox / 41.0
接受:* / *
接受语言:ru-RU,ru; q = 0.8,en-US; q = 0.5,en; q = 0.3
接受编码:gzip,放气
内容类型:应用程序/ x-www-form-urlencoded; 字符集= utf-8
X-Requested-With:XMLHttpRequest
引荐来源 :
lk.azs-etalon.ru/registration.php内容长度:174
Cookie:_ym_uid = 10265171001178589; _ym_d = 1214095619; _ym_visorc191282814 = w; _ym_isad = 2; PHPSESSID = u0vp19oks8iman1hi8m8j1n105
连接:保持活动状态
语法:无缓存
缓存控制:无缓存
If-Modified-Since:*
POST数据:扰流板方向卡= 1111-114-089-111&fio =%D0%90%D0%9E%D0%92%D0%A0%D0%90%D0%9B%D0%9E%D0%92%D0%90%D0%A0 %D0%BB%D0%BE%D1%80&电话= 7(912)345-6789&日期= 1990年11月11日&性别= 1&通过= 123321q&pass2 = 123321q
我们将其转换为方便的形式,将其调整为CURL,将其锤击成一个循环并放入流中。 该站点将发出:
“ RќµІµЂЅ ‹№ЅsјµЂє°Ђ‚ ‹”
从
德语 CP1251翻译过来的-
“无效的卡号”
我们为另一个答案的出现设置条件,并找到
“嗡嗡声” 。 最简单的布鲁斯已经准备好了。
没有验证码,IP阻止了大量请求-不,甚至没有对来自客户端的数据输入进行初始检查。 哦,好 顺其自然。
让我们再来一只野兽。 它比其他的要大得多,但仍然很脆弱。
胶带 ... Just-
TAPE转到getetepes lk.lenta.com/authentication/login/activate-card:
我们假定这是先前有效的未激活卡。 要求我们输入电话号码
好吧,输入您的手机,然后输入其余数据,包括密码。 就是这样,我们在个人帐户中。
在这里,一切都与以前的系统相似。 重要的是捕获必要的请求,然后按所需顺序重复它们。
但是根据经验,发现了一些严重的漏洞。 输入错误的验证码时-发生了什么事? 没什么,他们没有让我们进入信用证。 伙计们,这是合乎逻辑的。
但通过实验,以下内容得到了验证! 捕获了确认代码的请求,其中所有参数均明确:
{“代码”:“ 12345667890”,“卡”:“ 800011999193”,“电话”:“ 91234567789”}
我不会再介绍如何利用此漏洞,但是我会简要地告诉您。 有了它,您只需忽略
代码 ,我们将始终进入用户帐户而无需确认号码。 这意味着我们可以指示任何数字!
(
我目前正在尝试与TAPE支持人员联系 )
为什么要这样? 让我们盘点一下。
忠诚度系统有很多服务。 您可以无休止地搜索它们并“点”它们。 如果我告诉你,在这些地方有可能驾驶飞机吗?
Aeroflot和
S7也有奖励系统。 点是英里。 我们可以从合作伙伴那里获得收益。 顺便说一下,俄罗斯航空公司大约有2000架。 包括几乎所有顶级超市,包括我们臭名昭著的X5零售集团。 您可以在同一十字路口的LC中直接兑换里程。 好吧,几乎所有其他服务都如此。 顺便说一句,正式记录了航空公司偷窃里程的事实。 高调案例,并非没有牺牲。
结果,一切都不像看起来那么简单。 有些人过着这些观点。 好吧,如果这些球正式属于您,那么有人坐在您的脖子上。 Kulkhacker可以免费吃饭,穿衣,开车,在城市四处飞翔,还有更多免费活动。
PS:非常感谢
X5的几个安全人员立即与我联系。 与
“系统安全问题
”有关的更多讨论是关于
“是谁?客户还是十字路口” 。 但是,我认为,他们将解决所有问题,因为整个安全理事会已经意识到。 很快,很好。 他们应该致敬。 最主要的是变得更好。
好吧,这里有一份调查表。