Как я создала аккаунт с именем «NULL» и мне стали приходить уведомления о покупке доменов другими пользователями

в 18:12, , рубрики: appsec, bugbounty, pentest, qa, security

Дисклеймер: Статья носит исключительно информационный характер и не является инструкцией или призывом к совершению противоправных действий. Мы здесь все учимся и делимся историями.

Всем привет. Меня зовут Аня (SavAnna) я работаю AppSec в компании ATI.SU и как хобби занимаюсь багбаунти. Багбаунти - отличный способ отдохнуть от своих сервисов и сменить фокус с "защиты" на "нападение". Не всегда баги ищутся целенаправленно - иногда это происходит случайно. Хочу показать, что много странных и простых багов может найти каждый.

В качестве предисловия и благодарности:

Я очень люблю программу багбаунти Timeweb. Искать и взаимодействовать с командой ИБ приятно. Они большие молодцы и очень выросли со старта.

История бага:

При регистрации в сервисах имя пользователя создается автоматически. Появилась фича смены логина. Я завела там баги, к сожалению о них оказалось уже знают. Получила "Дубликаты". Но у меня остался аккаунт с username="NULL".

Прошло полгода с тестирования.

Как я создала аккаунт с именем «NULL» и мне стали приходить уведомления о покупке доменов другими пользователями - 1

И мне на почту стали приходить письма. Очень много писем.

Как я создала аккаунт с именем «NULL» и мне стали приходить уведомления о покупке доменов другими пользователями - 2
Как я создала аккаунт с именем «NULL» и мне стали приходить уведомления о покупке доменов другими пользователями - 3

За несколько дней мой почтовый ящик завалили письмами. Не сразу поняла, что происходит.

Как я создала аккаунт с именем «NULL» и мне стали приходить уведомления о покупке доменов другими пользователями - 4

Сначала подумала, что разработчики тестируют фикс на аккаунте, указанном в другом моем отчете в этой программе. Приглядевшись поняла, что такое только с аккаунтом с именем "NULL". Проверила по whoami и обнаружила, что сообщения приходят по дате после покупки или продления доменов. Зашла на аккаунт проверить появились ли у меня в управлении эти домены - нет, это были просто сообщения на почту, которые судя по всему дублировались на мой аккаунт.

Вот так случайно, был найден и заведен баг с низким импактом.

В чем была причина?

Разработчик прокомментировал, что там было 2 причины:

  • Портал вместо логина клиента "null" стал отправлять null

  • Недостаток валидации в отправке нотификации

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

Ссылка на раскрытый репорт:

https://bugbounty.bi.zone/reports/5077

Баян - это уже было

Похожий отчет был сдан в qiwi https://hackerone.com/reports/487296

Как я создала аккаунт с именем «NULL» и мне стали приходить уведомления о покупке доменов другими пользователями - 5

Так же похожая история произошла с американским исследователем в области безопасности Джозефом Тартаро, когда он решил сделать номер "NULL" своей машине и начал получать штрафы всех машин с не распознанными номерами. https://habr.com/ru/companies/ua-hosting/articles/463859/

Как я создала аккаунт с именем «NULL» и мне стали приходить уведомления о покупке доменов другими пользователями - 6

В качестве вывода

  • Некоторые баги в багбаунти находятся случайно - главное вовремя заметить

  • Вот такие бывают забавные ошибки валидации

  • "null", "nil", "undefined", "NULL", "None" иногда превращаются в null, nil, undefined, NULL, None и их стоит использовать в названии сущностей при тестировании

Автор: i_SavAnna

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js