Следи за паролями

Следи за паролями

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

Все это умеет отличная программа AnyBalance (Android), ну или ей подобные. Программа отправляет запросы с заданным интервалом на сервера Мегафона, МТС, Сбербанка (всего более 800 различных провайдеров) через вызовы сетевого API, а иногда и просто парсит вебстраничку личного кабинета, выдирая из нее нужные поля, которые затем отображаются на экране телефона в виде виджетов.

Мне было интересно посмотреть, как работают эти вызовы, и вот что я нашел.

name='more'>


Например, чтобы узнать баланс симки от Мегафона, виджет отправляет вот такой запрос:
https://kavkazsg.megafon.ru/ROBOTS/SC_TRAY_INFO?X_Username=<номер_телефона>&X_Password=<пароль>
В ответ сервер ей выдает страничку с информацией об аккаунте (без капчи, кстати).

Несмотря на то, что пароль и логин указаны в явном виде в URL, промежуточные узлы узнать их не смогут, так как полный URL будет инкапсулирован в зашифрованный пакет SSL. 
Однако этот виджет, как и многие другие программы на мобильных телефонах, сегодня абсолютно не защищен от атаки с подменой https сертификата (MITM SSL). 

Проще всего продемонстировать это с помощью Burp Suite
Запускаем Burp Suite на ПК.
Устанавливаем в настройках телефона прокси для вайфай соединения (это чтобы не заморачиваться с перенаправлением мобильного трафика. В реальной жизни мы будем перехватывать трафик на роутере).
Обновляем виджет и любуемся на открытые пароли (ну то есть я на них любуюсь. У вас они замазаны красной ручкой).

Burp налету подменил https сертификат Мегафона на свой собственный, и мы таким образом получили возможность видеть трафик в открытом виде. 
Современные браузеры и правильно написанные клиентские программы этот трюк знают и тщательно проверяют всю цепочку сертификатов (а иногда и сам сертификат с помощью certificate pinning), но многие разработчики срезают углы и этого не делают (goto fail ;)).

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

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

Поэтому задумайтесь о том, каким программам и какие пароли вы доверяете. Далеко не все из них умеют их безопасно хранить и правильно использовать.
Alt text
Обращаем внимание, что все материалы в этом блоге представляют личное мнение их авторов. Редакция SecurityLab.ru не несет ответственности за точность, полноту и достоверность опубликованных данных. Вся информация предоставлена «как есть» и может не соответствовать официальной позиции компании.
310K
долларов
до 18 лет
Антипов жжет
Ребёнок как убыточный
актив. Считаем честно.
Почему рожают меньше те, кто умеет считать на десять лет вперёд.

Артем Агеев

root@itsec.pro:~#

FREE
100%
Кибербезопасность · Обучение
УЧИСЬ!
ИЛИ
ВЗЛОМАЮТ
Лучшие ИБ-мероприятия
и вебинары — в одном месте
ПОДПИШИСЬ
T.ME/SECWEBINARS