Атака на телефон с помощь QR-кода

Сегодня мы раскажем о возможности проведения атаки на телефон жертвы с помощью QR-кода (Quick Response). Это так называемый двухмерный штрих-код.

Главные плюсы — возможность хранить большее количество информации по сравнению с обычными штрих-кодами, а также возможность скачивать данные любым девайсом с камерой. Основной информацией может быть текст, ссылка, SMS или телефон. QR-коды и были распространены, и дальше набирают популярность. А потому нет ничего удивительного в том, что и их сможет как-нибудь заюзать злоумышленник, особенно в связке с социальной инженерией. Самым простым вектором будет возможность «заманить» юзера на наш хост. Сфоткал человек QR-код и — бац — попал на сайт с чем-то ужасным. Но есть и другие возможности. Главное — мыслить шире.

структура QR code
структура QR code

К примеру, можно выполнить USSD-команду на телефоне. USSD (Unstructured Supplementary Service Data) — «стандартный сервис в сетях GSM, позволяющий организовать интерактивное взаимодействие между абонентом сети и сервисным приложением в режиме передачи коротких сообщений», говорит нам Wiki. Например, команда для получения количества денежек на счету. Но кроме этого, есть еще и команды, которые обрабатываются самим девайсом (телефоном). Из простейших — показ IMEI, показ MAC’а WLAN’а. Но есть варианты и посерьезней. Что-то вроде пугающего «Full Factory Reset» или отправки денежек со своего счета на другой (но там, кажется, подтверждение есть, а потому не прокатит).

Но как же вызвать такой код? С год назад в ряде девайсов под андроидом была найдена бага-фича — возможность использовать протокол (схему) tel://. Официально она нужна для того, чтобы можно было кликнуть в браузере по ссылке на каком-то сайте и быстро позвонить туда. Так вот, добрые люди логично решили, что туда же можно подставить и USSD-команду. Что еще интересней, была возможность запустить команду автоматически — просто заставить браузер открыть tel://USSD. Официальнобага зафикшена, но я не уверен, что все уже установили соответствующее обновление.

Конечно, бага эта не совсем напрямую связана с QR-кодами, но как один из вариантов атаки возможна. На infosec’е даже приведен пример. Все, что требуется от злоумышленника, — зайти на http://goqr.me/ (или какойнибудь аналог) и сгенерить QR-код с необходимым пэйлоадом — во вкладке «Call» указать необходимую USSD-команду.
Успех всего дела зависит от возможности решить следующие проблемы. Во-первых, большинство QR-reader’ов на телефонах показывают, что они прочитали, перед тем как самим выполнить какие-то действия. Во-вторых, некоторые звонилки не поддерживают такой набор USSD (а может, таким образом и закрыли дырку в андроиде?). С первой проблемой поможет справиться хорошая социнженерия. Ведь не многие понимают, что телефонный номер может быть чем-то плохим.
Вторую же, как ни странно, она тоже может решить. Это должно быть
что-то в джедайском стиле: «эту USSD-команду набрать хочешь ты».

Click to rate this post!
[Total: 3 Average: 2]

Специалист в области кибер-безопасности. Работал в ведущих компаниях занимающихся защитой и аналитикой компьютерных угроз. Цель данного блога - простым языком рассказать о сложных моментах защиты IT инфраструктур и сетей.

Leave a reply:

Your email address will not be published.