Глупая уязвимость в приложении «Мой билайн»

в 14:31, , рубрики: android, beeline, Разработка под android

Эта короткая история состоит из двух частей:

  1. Обнаружение уязвимости, появившейся, скорее всего, из-за невнимательности разработчиков;
  2. Сообщение о находке в Билайн.

Но этого поста не появилось бы, если бы все было так просто.

Часть 1. Что произошло?

Вчера, отлаживая свое приложение в Android Studio, я открыл Logcat, и увидел что там промелькнул "Мой билайн". Ну и что? У меня действительно установлено это приложение. Многие приложения что-то пишут в лог.

Но. Это оказался лог HTTP запроса и ответа. Опять же, это не так страшно. Ссылка запроса к API, сообщение об успешном ответе.

Но. В логе помимо ссылки оказались также хедеры и тело запроса, в т.ч. json содержимое (заботливо отформатированное) и token сессии.

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

Часть 2. Бьём тревогу.

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

Далее последовал следующий диалог:

Диалог с ботом

Бот: Благодарим за обращение в наш чат. Задайте вопрос и наши специалисты помогут найти решение.

Я: Добрый день, случайно обнаружил в вашем android-приложении уязвимость, куда я могу о ней сообщить?

Бот: iMessage и FaceTime — технологии, разработанные компанией Apple, предоставляемые за отдельную плату. Для использования необходимо интернет-соединение. iMessage – позволяет отправить текстовое сообщение другому пользователю iMessage. Отключение сервиса возможно в настройках Вашего устройства: "Настройки"- "Сообщения" — "iMessage" — отключить. FaceTime — программа, с помощью которой Вы можете совершать видео- и аудиозвонки между устройствами Apple. Отключить эту опцию также можно в настройках Вашего аппарата: "Настройки"- "FaceTime" — отключить. Если у Вас по-прежнему остались вопросы о возможностях в рамках данного сервиса, то Вы можете обратиться в тех. поддержку Apple IPhone: 8-800-555-67-34 (звонок бесплатный).

Я: Что?

Бот: Уточните, пожалуйста, что именно Вас интересует.

Я: Случайно обнаружил в вашем android-приложении уязвимость, куда я могу о ней сообщить?

Бот: iMessage и FaceTime — технологии, разработанные компанией Apple, предоставляемые за отдельную плату. Для использования необходимо интернет-соединение. iMessage – позволяет отправить текстовое сообщение другому пользователю iMessage. Отключение сервиса возможно в настройках Вашего устройства: "Настройки"- "Сообщения" — "iMessage" — отключить. FaceTime — программа, с помощью которой Вы можете совершать видео- и аудиозвонки между устройствами Apple. Отключить эту опцию также можно в настройках Вашего аппарата: "Настройки"- "FaceTime" — отключить. Если у Вас по-прежнему остались вопросы о возможностях в рамках данного сервиса, то Вы можете обратиться в тех. поддержку Apple IPhone: 8-800-555-67-34 (звонок бесплатный).

Я: что происходит?

Бот: Переформулируйте, пожалуйста, Ваш вопрос.

Я: Случайно обнаружил в вашем android-приложении уязвимость, куда я могу о ней сообщить?

Бот: iMessage и FaceTime — технологии, разработанные компанией Apple, предоставляемые за отдельную плату. Для использования необходимо интернет-соединение. iMessage – позволяет отправить текстовое сообщение другому пользователю iMessage. Отключение сервиса возможно в настройках Вашего устройства: "Настройки"- "Сообщения" — "iMessage" — отключить. FaceTime — программа, с помощью которой Вы можете совершать видео- и аудиозвонки между устройствами Apple. Отключить эту опцию также можно в настройках Вашего аппарата: "Настройки"- "FaceTime" — отключить. Если у Вас по-прежнему остались вопросы о возможностях в рамках данного сервиса, то Вы можете обратиться в тех. поддержку Apple IPhone: 8-800-555-67-34 (звонок бесплатный).

Совершенно не представляю из-за какого ключевого слова бота так передергивало. Мне быстро наскучил этот разговор с автоответчиком. Попробовал другую комбинацию и, о чудо, на меня снова вывалили справочную информацию, но в конце все-таки предложили поговорить с реальным человеком. Ура, появился некий Олег, изучил мой диалог с роботом (вероятно вздохнул с облегчением, что роботы его пока не заменят) и посоветовал мне описать мою находку со скриншотами на почту otvet@beeline.ru (ее упоминания на сайте я не нашел, может плохо искал). Затем Олег поблагодарил меня за помощь и ушел выручать других роботов.

Я, обрадованный прогрессу, написал на указанную почту следующее:

Мое письмо

Добрый день

Случайно обнаружил, что android-приложение «Мой билайн» сливает в лог все запросы к API вместе с токенами и json содержимым. По-моему, это уязвимость.

С уважением,
Козлов Михаил

Довольный собой, сделал себе кофе и продолжил работать. Сегодня пришел ответ.

Ответ

Здравствуйте, Михаил!

Не совсем понятно, что именно у Вас не работает. Более подробно опишите Вашу проблему.

Спасибо, что пользуетесь услугами «Билайн».

С наилучшими пожеланиями,
Некрасов Вячеслав,

Служба поддержки Клиентов «Билайн».

После facepalm-ритуала, удержавшить от написания сообщения о том, что не работает не у меня, а у них: чат-бот, служба поддержки и разработчики приложения, я более подробно описал проблему.

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

Вот он

Уважаемый клиент! Мы стремимся идти в ногу со временем и оказывать сервис в актуальных каналах коммуникации. Нам важно, чтобы Вы получали обратную связь от нас как можно скорее. Поддержка через e-mail недоступна. Для того, чтобы получить моментальный ответ на любой вопрос, приглашаем в чат со специалистом на сайте: https://beeline.ru/customers/pomosh/ или в Мобильном приложении: https://beeline.ru/dl! Обращаем внимание, что это письмо сформировано автоматически и ответ на него не требуется. Ждем Вас в чате на сайте или в мобильном приложении. Ваш Билайн!

Глупая уязвимость в приложении «Мой билайн» - 1

Автор: Mmishak

Источник


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


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