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

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

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

Все это умеет отличная программа 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

Большой брат следит за вами, но мы знаем, как остановить его

Подпишитесь на наш канал!

Артем Агеев

root@itsec.pro:~#