TGStat
TGStat
Введите текст для поиска
Расширенный поиск каналов
  • flag Russian
    Язык сайта
    flag Russian flag English flag Uzbek
  • Вход на сайт
  • Каталог
    Каталог каналов и чатов Региональные подборки Тематические подборки Платные каналы Поиск каналов
    Добавить канал/чат
  • Рейтинги
    Рейтинг каналов Рейтинг чатов Рейтинг публикаций
    Рейтинги брендов и персон
  • Аналитика
  • Поиск по публикациям
  • Мониторинг Telegram
  • Продвижение
    Реклама через Яндекс Бизнес Реклама в каналах через TGStat Agency Реклама на сайте TGStat.ru
Too Long, Did Read

14 Nov 2024, 17:48

Открыть в Telegram Поделиться Пожаловаться

Мой первый взлом

Недавно познакомился с фаундером одного мобильного приложения.
Из соображений безопасности и этики, не буду называть ни его, ни приложение, ни какие-либо конкретные данные.

Так вот, оказалось, что он читает мой канал.
Почему-то он решил, что если я пишу про уязвимости, — я и сам умею их искать)
И предложил мне поискать их в его приложении.
А я решил попробовать это сделать - вдруг моих базовых знаний о том, как это работает + кучи разобранных примеров хватит, чтобы что-то найти?
Что важно знать о приложении: в нем есть чат с AI.

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

Как я это сделал?
1. Для начала, я поставил Charles Proxy - приложение, которое позволяет создать локальный прокси-сервер и пропускать трафик с любого устройства в локальной сети сквозь него.
Помимо этого, у Charles Proxy есть собственный SSL-сертификат - если установить его на Iphone (или любое другое устройство, которое мы хотим подслушать), - можно расшифровать подслушанный HTTPS трафик.
Хотя оказалось, что это было не нужно)

2. Включил Charles Proxy, настроил проксирование трафика с iphone, и пошел бродить по приложению.
Оказалось, что часть запросов на backend-сервер приложения отправляется просто по HTTP, - то есть, трафик не зашифрован, и видно настоящий ip-адрес сервера. Уже это — очень плохой знак. Не делайте так)

3. Я скопировал несколько сырых запросов и запустил Burp Suite - помимо кучи других фичей, он позволяет воспроизводить запросы с разными переменными.

4. Дальше я открыл GPT и попросил его подсказать мне, что можно сделать. Сам я бы ковырялся в 5 раз дольше.
GPT посоветовал мне попробовать видоизменить запросы, внося изменения в разные поля, - например, попробовать передавать XSS-текст в теле запроса.
Все получилось!
Я обнаружил серьезную проблему: некоторые поля вообще никак не валидируются и не “карантинятся” - к примеру, я могу отправить ссылку на скачивание .exe файла любого приложения - и она без проблем отправится и запишется в соответствующее поле.
Но все это было +- безвредно: за несколько часов я смог вывести уведомления, ссылки и сырой XSS в своем инстансе приложения (в моем профиле), но на этом все. SQL и JSON инъекции, которые я также пробовал сделать, не дали никаких результатов.

5. Тогда я решил еще раз посмотреть на все запросы, которые отправляло приложение, и повнимательнее изучить ответы.
Один эндпоинт показался мне интересным:
POST /api/v1/chat/ainame/ - эндпоинт, на который отправляется сообщение пользователя в AI-чат в приложении.

В ответе на запрос я с удивлением обнаружил поля user_from и user_to с такими данными (оставил только самые интересные):

"user_from":{
"id”:1234, // видимо, это мой id пользователя
"name":"Tim",
"email”:”тут был мой емейл, который я использовал при регистрации!”,
"registered_at”:”и моя дата регистрации”,}

"user_to":{"id":0},

Вот и первая существенная уязвимость: мои персональные данные (почта) передаются в нешифрованном HTTP-сообщении, которое можно подслушать, - например, включив Wireshark или tcpdump, находясь в моей WiFi сети.

Продолжение в следующем посте →
Charles Web Debugging Proxy • HTTP Monitor / HTTP Proxy / HTTPS & SSL Proxy / Reverse Proxy
Charles Web Debugging Proxy - Official Site

1.5k 13 31 11 19
Каталог
Каталог каналов и чатов Подборки каналов Поиск каналов Добавить канал/чат
Рейтинги
Рейтинг каналов Telegram Рейтинг чатов Telegram Рейтинг публикаций Рейтинги брендов и персон
API
API статистики API поиска публикаций API Callback
Наши каналы
@TGStat @TGStat_Chat @telepulse @TGStatAPI
Почитать
Академия TGStat Исследование Telegram 2019 Исследование Telegram 2021 Исследование Telegram 2023
Контакты
Справочный центр Поддержка Почта Вакансии
Всякая всячина
Пользовательское соглашение Политика конфиденциальности Публичная оферта
Наши боты
@TGStat_Bot @SearcheeBot @TGAlertsBot @tg_analytics_bot @TGStatChatBot