P.S. в ходе написания статьи не было использовано ни одно ИИ.

В один день я захотел посмотреть как работают купоны в приложении Mak.by в программистском смысле. Для этого я просто посмотрел какие запросы отправляет приложение на сервер с помощью тулы для перехвата HTTP трафика.

Получение списка купонов пользователя
Получение списка купонов пользователя

Я решил посмотреть нет ли у них Swagger или чего-то подобного.

Оказывается есть, для этого просто нужно ... (как это делать я описывать не буду, чтобы не нарушать никакой закон). Что достаточно странно для крупной компании с большим количеством пользователей. Не стоит так открыто выставлять свою Swagger страницу со всем списком эндпоинтов.

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

Покликав несколько разных эндпоинтов, меня больше всего привлёк эндпоинт получения списка адресов.

Список CRUD эндпоинтов для взаимодействия с адресами
Список CRUD эндпоинтов для взаимодействия с адресами

Для меня показалось очевидным, что для доступа к таким критическим эндпоинтам мне нужна авторизация (т.е Bearer токен). Но для интереса я решил всё-таки попробовать выполнить этот эндпоинт. Результат можно увидеть на скриншоте ниже.

Пример возвращённого адреса
Пример возвращённого адреса

Как видно на скриншоте, эндпоинт возвращает то, что пользователи добавляют адреса для доставки: название, адрес, квартира, этаж, подъезд, домофон и координаты.

Может показаться, что эта информация злоумышленникам ничего не даст. Однако некоторые люди добавляют в поле name всякую приватную информацию по типу имени, это адрес дома или работы. А в поле intercom часто сливают код домофона для открытия подъезда, либо свой личный номер телефона (чтобы курьер звонил на номер), пример на скриншоте снизу.

Тут слитые имя и номер пользователя
Тут слитые имя и номер пользователя

Для образовательных целей я написал небольшой скрипт, который будет кэшировать все адреса по этому эндпоинту. Поэтому выкладываю небольшую статистику:

Всего сохранено за всё время 83455 адресов. Из них:

  1. Минск - 68260 сохранённых адресов

  2. Витебск - 4731

  3. Гомель - 2840

  4. Брест - 2776

  5. Могилёв - 2522

  6. Гродно - 2344

Всего слито 17 номеров телефона.

Всего воспользовались доставкой 27 человек с именем Олег (исходя из поля name)
Зачем-то 2 человека добавили свои адреса в Москве и Московской области, 1 в Тульской области, а также одна Виолетта из Ижевска.

Все адреса на карте с масштабом в 200 км
Все адреса на карте с масштабом в 200 км

Карту сделал в развлекательных и в образовательных целях.

Несколько раз пытался связаться с Mak.by через их email'ы, но ответа так и не последовало. Поэтому я и написал эту статью, чтобы все похихикали, а Mak.by пофиксил баг.

Каков итог? Проектируйте нормально API, не делайте как Mak.by, иначе можно слить много приватной информации. Эту информацию, например, могут использовать конкуренты, мошенники или просто тролли.

Отдельно для Mak.by:
Если вы всё-таки хотите поблагодарить, что я нашёл у вас в API баг, то можете мне написать на тот же email: lalalaxthetopl@gmail.com

Комментарии (3)


  1. NixGuy
    03.01.2026 14:23

    Я у мамы хакер ;)


  1. titulusdesiderio
    03.01.2026 14:23

    Несколько раз пытался связаться с Mak.by через их email'ы, но ответа так и не последовало.

    У них техподдержка отсутствует как класс. Я тоже пытался связаться с ними (по вопросам обслуживания) - они просто игнорируют любые письма. Контакты на сайте нужны просто как формальность. Они не рабочие.


    1. hijacker228 Автор
      03.01.2026 14:23

      Интересно, а фиксить они собираются?