January 9

История абузов Xbox & Epic Games Store для Fortnite

Сколько помню, последние два года - обе компании либо целенаправленно допускали различные «абузы», либо же это делалось по ошибке кодеров.

Бизнесмены - но черные движения 😈

Ключи Xbox и региональные особенности

До 2022 года многие люди приобретали дешево игры, донатные наборы через функцию «отправить подарок» в Xbox в дешевых регионах, таких как Аргентина и Турция (пока цены не были повышены)

Начиная с 2022 года, функция покупки товара ключем - была отключена на сайте в регионах Турция и Аргентина, но ключи появлялись на различных торговых площадках. На сегодняшний день данный метод исправлен, рассказываем как это работало:

Для того что бы купить что то в этих двух регионах в формате ключей, либо же стать поставщиком ключей и поставлять в магазины их большой объем - нужен был компьютер с ОС Windows или Linux, а так же ряд ПО и некоторых надстроек, а так же непосредственно карты банков Турции или Аргентины, которые можно приобрести на «зеленом» форуме (у каждого банка разные условия, Турецкие банки например живут долго и не банятся, а вот Аргентинские банятся быстро, да и налоги на каждую покупку до 100% тоже не есть хорошо, но не об этом речь)

В ПК должны были быть отключены все антивирусы, отключена изоляция ядра, отключен брандмауэр Windows

Первым делом устанавливался Fiddler Classic - Кроссплатформенное приложение прокси-сервера для отладки HTTP

На компьютер нужно было установить сертификат в корневое доверенное хранилище, в конфигурации трансляции трафика должны быть установлены все галочки. (Этот софт еще будет мелькать в способах доната через браузер, того чего нет в EGS, но при этом есть в игре)

Далее устанавливался Burp Suite - интегрированная платформа для тестирования безопасности веб-приложений как в ручном, так и в автоматических режимах

Собственно с помощью этого софта и получалось покупать товары в формате ключей.

Первым делом нужно было сгенерировать сертификат и так же поместить в корневое доверенное хранилище. Из вкладок нужно было оставить Proxy, Logger, Repeater и установить расширение

CMAR - Conditional Match and Replace, а каждый раз при запуске все что будет в этом расширении - нужно было сносить.

В настройках Proxy - порт нужно было изменить с 80 на 8080, в поле Request Interception Rules переставить галочку с первого пункта - на пункт And URL in target scope

Во вкладку Scope (прицел) добавить ссылку на сервер отвечающий за покупки Microsoft

https://www.microsoft.com/store/purchase/buynowui/buynow

Нажать ОК и NO и перейти в вкладку CMAR

Далее нужно было создать 4 запроса, которые при старте процесса покупки изменяли бы его на лету. Каждый из параметров Condition в каждом запросе включал бы в себя Type - Request First Line, Relationship - Match, Match Condition должен во всех четырех запросах содержать строку:

POST /store/purchase/buynowui/buynow HTTP/2

А в Match and Repelace - Type запрашивал бы Body, галочка во всех запросах должна быть активной (Match Regex)

Поля Match (то что нужно найти) и Repelace (на то что нужно заменить)

Задача состоит в том что бы в приложении Xbox для ПК при нажатии на любую игру, на кнопку купить - появлялось окно нужного нам товара, количества покупаемых ключей и итоговая цена.

1) Первый запрос в поле Match - включает в себя Product ID (это ID товара), найти который не составит никакого труда, достаточно открыт в браузере любой товар, например

Выделенное и есть ID товара, но для полноценной задачи необходим Availability ID и SkuID, которые можно найти в API Xbox Store, все данные на товар можно получить, подставив ID в ссылку, в которой по префиксу можно указать регион

https://displaycatalog.mp.microsoft.com/v7.0/products/9nk4c5mcl9rq/0010?market=BR&languages=en-US&moId=&oemId=&scmId=

Market = BR (Бразилия), AR (Аргентина) и так далее

В API находиться несколько AvailabilityID с разными параметрами, Purchase, Gift, вот нам нужен тот, который с параметром Gift

SkuID у большинства наборов един 0010, но иногда встречаются и 0001 и другие.

Четвертый запрос - количество (максимальное количество для разовой транзакции 100 штук), далее показываю примеры 4 запросов

"productId":"[^"]+"

"productId":"9MVKT8ZTD8SW"

"availabilityId":"[^"]+"

"availabilityId":"9MVKT8ZTD8SW"

"skuId":"[^"]+"

"skuId":"0010"

"quantity":"[^"]+"

"quantity":"100"

Когда вы сформируете все 4 запроса в CMAR, нужно будет настроить прокси-сервер в Windows

В ПК в настройках прокси-сервера нужно ввести следующие данные в соответствующие поля

http=127.0.0.1:8080;https=127.0.0.1:8080

<-loopback>

Далее нужно подготовиться к такой особенности, для оплаты любых товаров в Xbox Аргентинской картой - всегда запрашивается CVV код, в отличии от Турецких карт, так как вы меняете запросы на лету, данное окошко у вас не появится, а что бы сайт принял CVV его нужно получить в виде токена отправив POST запрос на Microsoft через Repeater, в самом Burp Suite

POST /tokens/cvv/getToken HTTP/1.1

Host: tokenization.cp.microsoft.com

Content-Length: 17

Sec-Ch-Ua: "Not=A?Brand";v="99", "Chromium";v="118"

Content-Type: application/json

Ms-Cv: lxhU64XdCnjbRenscDfYBE.66.6

Sec-Ch-Ua-Mobile: ?0

User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.5993.90 Safari/537.36

Sec-Ch-Ua-Platform: "Windows"

Accept: */*

Origin: https://www.microsoft.com

Sec-Fetch-Site: same-site

Sec-Fetch-Mode: cors

Sec-Fetch-Dest: empty

Referer: https://www.microsoft.com/

Accept-Encoding: gzip, deflate, br

Accept-Language: en-US,en;q=0.9

Connection: close

{ "data": "849" }

849 - условно ваш CVV от карты, нажимаете отправить и во втором окне Repeater появится ваш CVV в формате токена, который понадобиться позже.

Открываем Xbox для ПК, выбираем любую игру, например Minecraft и нажимаем купить - вы увидите как откроется окно с покупкой того набора, который вы указали в CMAR, количество и итоговая цена. Карта уже должна быть привязана. Далее идем в Burp Suite во вкладку Proxy и нажимаем Intercept is ON, в приложении Xbox нажимаем купить, в Burp Suite нажимаем на Forward и в поле data вставляем токен нашего CVV, снова нажимаем Forward и видим как в приложении Xbox появляется сообщение об успешной покупке игры. Идем на почту аккаунта и видим там 100 ключей на набор, которые можно активировать на разных аккаунтах, эти ключи и поставляли сэллерам.

Существуют и аналогичные способы в аналогичном софте, но это один из простых, который работал.

Для тех кому не нужно было много ключей, могли покупать по одному гораздо проще через тот же Fiddler или Burp Suite, рассказываем подробнее.

В Fiddler открываем вкладку FiddlerScript, выбираем go to и переходим к one before request

if (oSession.HTTPMethodIs("POST") && oSession.fullUrl.indexOf("https://www.microsoft.com/store/buynow") == 0) { var requestBody = oSession.GetRequestBodyAsString();

// Replace 'scenario%22%3A%22' with 'scenario%22%3A%22gift' var newRequestBody = requestBody.replace('scenario%22%3A%22', 'scenario%22%3A%22gift');

oSession.utilSetRequestBody(newRequestBody);

// Log that the request body has been modified FiddlerApplication.Log.LogString("Modified request body for session: " + oSession.id); FiddlerApplication.Log.LogString("New request body: " + newRequestBody); }

Данный скрипт вставляете как на скриншоте, сохраняете, идете в абсолютно любой регион в браузере и нажатием на купить - вам выпадает окно подарка, указываете левую почту и получаете товар в формате ключа.

В Burp Suite достаточно было открыть встроенный браузер, войти в любой регион где есть покупка в подарок, включить интерцептор, нажатим на Forward найти нужный для нас запрос на сервер Microsoft, в котором строку Market=US, меняем на Market=TR\AR и покупаем.

Кстати, если попробовать картой другого региона произвести оплату, вы получите теневой бан на покупки до двух недель

Сейчас ключи в большом количестве тоже покупаются, по приватному методу, о котором мы вам не расскажем. Ключи покупаются в регионах ЮАР, Венгрия, США, Турция, Аргентина до 100 штук за покупку.

Xbox Fetch & PowerShell, конвертация БП токенов в В-Баксы

Ох была история с пропажей всех Fortnite В-Баксов с региона Аргентина, но мы все равно покупали!

Покупка В-Баксов в Аргентине, с быстрым добавлением в корзину товаров на 1000 \ 2800 \ 5000 \ 13500 ВБ, а так же покупка по "старым" ценам в Турции. Показываю на примере Edge Browser (на других все будет аналогично, на телефоне можно делать только с ОС Android, рут-права не требуются, браузер Firefox Nightly for Developers). (Метод работает давным давно, еще с ноября 2023, просто сейчас в Аргентине нет товаров)

Покажу на примере Турции, ибо в ней интереснее - цены способом были ниже официальных, на Аргентину принцип был тот-же

Для всех манипуляций нам понадобится браузер (любой) - но я буду показывать на примере Chromium, а так же карта региона - в котором будем покупать. Метод работает на любой регион, такие популярные как Аргентина, Турция в том числе. В Турции из за повышения цен - данным методом получаются так называемые "старые цены". Я научу вас покупать 1000 В-Баксов за 50 лир как раньше, не отдавая 120 лир, как это устроено сейчас.

Откройте браузер, найдите товар 1000 V-Papel и откройте панель разработчика. Далее откройте вкладку «Network» и нажмите возле кнопки Satin Al - кнопку добавления товара в корзину

В Network мы увидем несколько строк, нам нужна непосредственно loadCart?…нажимает на нее правой кнопкой мыши, далее нажимаете Copy / Copy as Fetch

снова нажимаете правой кнопкой мыши - Open new tab.

В Network мы увидем несколько строк, нам нужна непосредственно loadCart?…нажимает на нее правой кнопкой мыши, далее нажимаете Copy / Copy as Fetch, снова нажимаете правой кнопкой мыши - Open new tab. У вас откроется вкладка с крупной надпись Access Denied.
Откройте панель разработчика и перейдите во вкладку «Console» и вставьте туда скопированное значение Fetch.

Вернитесь на страницу с товаром и откройте корзину, затем вернитесь на вкладку с консолью. Теперь вам нужно подставить новые значения в пункты productID, SkuID и AvailabilityID - предоставляю вам список под В-Баксы, для жетона боевого пропуска - актуальный productID можно найти в API магазина Epic Games.

100VB: 9NRFP18VHR2F
200VB: 9PD1G688WD0V
300VB: 9MV7N0D707L5
400VB: 9N9J6BBHXRK4
500VB: 9PD4G3T4LP6P
600VB: 9NP8DJCQKQQG
700VB: 9NCQ0LZSXNBK
800VB: 9PDF7RTW3HN6
900VB: 9N6LNP106BP3
1100VB: 9P8K4RJ5XV39
1200VB: 9P8FDFWTP9MJ
1300VB: 9P1M9BGF0FSG
1400VB: 9P5WH95SBC1Q
1500VB: 9PLP33H5GSD3
1600VB: 9PFDDRKM07C4
1700VB: 9P15QMWK2KQC
1800VB: 9P0462L70KQQ
1900VB: 9NLLNCGKW2BW
2000VB: 9NBKVWFCXFDJ

Подставляете значения нужного количества В-Баксов и нажимаете Enter - после того как увидите надпись Pending внизу - вернитесь в корзину и обновите страницу. Удалите из корзины добавленные ранее 1000 В-Баксов и дальше как обычно - оплатите В-Баксы

Теперь покажу как добавить именно 1000 \ 2800 \ 5000 \ 13500 (покажу на примере 13500) (4 кода на них по порядку ниже)

1000 В-Баксов

[{\"productId\":\"9N6LNP106BP3\",\"skuId\":\"0010\",\"availabilityId\":\"9N6LNP106BP3\",\"quantity\":1,\"campaignId\":\"xboxcomct\"},{\"productId\":\"9NRFP18VHR2F\",\"skuId\":\"0010\",\"availabilityId\":\"9NRFP18VHR2F\",\"quantity\":1,\"campaignId\":\"xboxcomct\"}]}}",
  "method": "PUT",
  "mode": "cors",
  "credentials": "include"
});

2800 В-Баксов

[{\"productId\":\"9NBKVWFCXFDJ\",\"skuId\":\"0010\",\"availabilityId\":\"9NBKVWFCXFDJ\",\"quantity\":1,\"campaignId\":\"xboxcomct\"},{\"productId\":\"9PDF7RTW3HN6\",\"skuId\":\"0010\",\"availabilityId\":\"9PDF7RTW3HN6\",\"quantity\":1,\"campaignId\":\"xboxcomct\"}]}}",
  "method": "PUT",
  "mode": "cors",
  "credentials": "include"
});

5000 В-Баксов

[{\"productId\":\"9NBKVWFCXFDJ\",\"skuId\":\"0010\",\"availabilityId\":\"9NBKVWFCXFDJ\",\"quantity\":1,\"campaignId\":\"xboxcomct\"},{\"productId\":\"9NLLNCGKW2BW\",\"skuId\":\"0010\",\"availabilityId\":\"9NLLNCGKW2BW\",\"quantity\":1,\"campaignId\":\"xboxcomct\"},{\"productId\":\"9P8K4RJ5XV39\",\"skuId\":\"0010\",\"availabilityId\":\"9P8K4RJ5XV39\",\"quantity\":1,\"campaignId\":\"xboxcomct\"}]}}",
  "method": "PUT",
  "mode": "cors",
  "credentials": "include"
});

13500 В-Баксов

[{\"productId\":\"9NBKVWFCXFDJ\",\"skuId\":\"0010\",\"availabilityId\":\"9NBKVWFCXFDJ\",\"quantity\":1,\"campaignId\":\"xboxcomct\"},{\"productId\":\"9NLLNCGKW2BW\",\"skuId\":\"0010\",\"availabilityId\":\"9NLLNCGKW2BW\",\"quantity\":1,\"campaignId\":\"xboxcomct\"},{\"productId\":\"9P0462L70KQQ\",\"skuId\":\"0010\",\"availabilityId\":\"9P0462L70KQQ\",\"quantity\":1,\"campaignId\":\"xboxcomct\"},{\"productId\":\"9P15QMWK2KQC\",\"skuId\":\"0010\",\"availabilityId\":\"9P15QMWK2KQC\",\"quantity\":1,\"campaignId\":\"xboxcomct\"},{\"productId\":\"9PFDDRKM07C4\",\"skuId\":\"0010\",\"availabilityId\":\"9PFDDRKM07C4\",\"quantity\":1,\"campaignId\":\"xboxcomct\"},{\"productId\":\"9PLP33H5GSD3\",\"skuId\":\"0010\",\"availabilityId\":\"9PLP33H5GSD3\",\"quantity\":1,\"campaignId\":\"xboxcomct\"},{\"productId\":\"9P5WH95SBC1Q\",\"skuId\":\"0010\",\"availabilityId\":\"9P5WH95SBC1Q\",\"quantity\":1,\"campaignId\":\"xboxcomct\"},{\"productId\":\"9P1M9BGF0FSG\",\"skuId\":\"0010\",\"availabilityId\":\"9P1M9BGF0FSG\",\"quantity\":1,\"campaignId\":\"xboxcomct\"},{\"productId\":\"9MV7N0D707L5\",\"skuId\":\"0010\",\"availabilityId\":\"9MV7N0D707L5\",\"quantity\":1,\"campaignId\":\"xboxcomct\"}]}}",
  "method": "PUT",
  "mode": "cors",
  "credentials": "include"
});

Оплата совершена успешно. Активируете заходом с Xbox консоли, или через Xbox Cloud Gaming (VPN Японии, Кореи и Австралии - минимум очередей на вход)

Этим же способом можно купить жетон БП на аккаунт и подарить другу. Код на актуальный жетон БП ищите на https://api.nitestats.com/v1/epic/store

Код на БП лучше добавлять в корзину через Power Shell - проделайте все пункты с начала, просто вместо копирования запроса как fetch, скопируйте как power shell и подставив ID товаров, содержимое вставьте в консоль Power Shell в Windows!

Купите 15 токенов по 432 песо перед окончанием сезона и в новом сезоне все токены сконвертируются в 1000 ВБ каждый, итого 15к ВБ за 6480 песо + 100% налог 6480 песо, итого - примерно 1300р (но увы метод PATCHED)

Различные способы донатов через Xbox и Epic Games в разных регионах

1) Донат через PSN простой, нужен только ControlD и Турецкая карта, для Nintendo Switch - из за того что кошелек не общий, нет смысла донатить

2) Xbox - варианты донатов разные, набор можно купить оплатив его банковской картой, подарочными картами Xbox с номиналами, либо ключами, сюда так же как и в PSN - необходим хороший прокси или VPN. Это главное условие, ведь с хорошим прокси и VPN не только донатят, но и меняют регионы.

Для гиков можно покупать через Burp Suite (из плюшек, заказ из стороннего региона будет подписан русскими буквами)

3) В Epic Games доступно фактически три способа оплаты, банковская карта, сервис GPAY в различных итерациях, вплоть до оплаты через Турецкий банкомат и сервис Razer Wallet который пополняется дешево как раз через GPAY / Paycell различными банковскими картами, таким как Papara, Ininal или Ozan. В отличии от Xbox, в Турецком Epic Games строго нужен Турецкий IP адрес.

Платить можно как на сайте, так и в игре на ПК, Android, iOS с сертификатом разработчика Apple или Турецком Game+ GeForce Now находясь где угодно и в любых условиях.

Отряд Fortnite более одного месяца в Xbox

Купить больше чем на 1 месяц, но не более 6 месяцев сразу - можно только в Xbox Store в любом регионе (если у вас нет ошибки региона, в этом случае только в США и Венгрии)

Одной транзакцией тут не обойтись, делается так: вы покупаете стандартный месяц отряда, в настройках подписки выключаете переодическое выставление счетов и на сайте с отрядом появляется кнопка расширения, производите вторую оплату, снова отключаете выставление счетов и снова оплачиваете и так до 6 раз. В конце у вас получится отряд на пол года.

Покупка товаров в Epic Games отсутствующих в браузере (Отряд Fortnite, кредиты Rocket League)

Селлеры должны быть мобильными и готовые выполнить заказ в любое время и в любом месте.

С отрядом все просто (спасибо Adamo) за прямой линк на отряд с уже подставленным OfferID

https://store.epicgames.com/ru/p/fortnite?purchaseIntentId=fn%7C9ec21a8d4f744f8b938fbf79d02d40b9

А вот с кредитами Rocket League так не прокатит и для постоянки нет OfferID, если в игре зависает оплата (а зависает часто) купить через браузер будет выходом, но вам понадобиться Fiddler в котором вы должны включить стрим трафика и поймать ссылку включающую в себя purchase token - кликнув по которой вы попадете в этот товар. Но как поймать ссылку? Включаете стрим трафика и в игре нажимаете купить, ищете ссылку в Fiddler и продолжаете оплату в браузере.

Рефанды Xbox

Первый массовый абуз В-Баксов за финальный исход которого все селлеры были в курсе и даже я, но мы продалжали говорить что может повезет и не заберут валюту - что бы на вас заработать. Так делали все. Почему тут было заранее известно что валюта будет отозвана?

Тут вина пользователя, который отвязывая аккаунт Xbox запрашивал возврат и тут же совершал новую покупку на возврат, когда старую еще не отобрали, а раньше у Xbox на запрошенный возврат именно валюты в игре уходило до 40 дней чем и пользовались продавцы и что в итоге и случилось, у всех все забрали и это логично, ведь сами продавцы и оформляли рефанды.

Дюп-ключей Xbox


Пропатченный метод совсем недавно. Это ОШИБКА НА СТОРОНЕ XBOX которая позволяла активировать один ключ на любое количество аккаунтов. Особо прыткие селлеры написали софт для дюпа и наделали сотни аккаунтов на продажу, другие закупали эти аккаунты и перепродавали, третьи сейчас продают косметику подарками. Xbox исправили метод быстро НО НЕ СТАЛИ НИ У КОГО НИЧЕГО ОТЗЫВАТЬ НАЗАД ведь это была их ошибка и они ее признали. Единственные санкции которые последовали от них - массовые баны аккаунтов Xbox которые для дюпа создавались авторегами. Но валюта не была и не будет ни у кого отозвана.

Xbox Cloud Gaming


Для ПК существует расширение TamperMonkey, для Android - Firefox Nightly for Developers, для iOS - Stay или TamperMonkey на сертификате разработчика Apple

А на Greasy Fork лежат кучи разных скриптов, от bypass регионов, до повышения качества графики, force feedback, и даже простейшие легитные аим-ассисты

Не благодарите.