Провести атаку, используя qr-код

Этот номер мы посвятим не самым стандартным и распространенным технологиям, вернее, атакам на них — местами странным :). И то и другое, я думаю, будет полезно. Итак, первый «клиент» сегодня — QR-код (Quick Response).

Это двухмерный штрих-код.

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

К примеру, можно выполнить 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-команду набрать хочешь ты».

РЕШЕНИЕ

Продолжим терзать плоть СИ. Давай представим себе ситуацию. Есть компания, в которой много народа, и кто-то хочет откуда-то снаружи ее поломать. Конечно, можно попытаться проникнуть через SQLi на одном из сайтов компании или проэксплуатировать какой-нибудь сервис. Но опыт подсказывает, что простейший путь — лайтовая СИ и почтовая рассылка на адреса компании. Конечно, нужно добыть их список. Но тут поможет гугление и другие средства сбора инфы, а также ряд уязвимостей в конфигурации email серверов (их мы обсуждали в одном из номеров ][).

Вообще, в проведении хорошей СИ с использованием почты есть множество всяких тонкостей. Один из самых перспективных вариантов — это послать письмо от имени одного из сотрудников компании другим сотрудникам. Особенно хорошо от начальника — тогда и экзешничек люди не побоятся запустить :). Но на пути атакующего может встать и хорошая конфигурация SMTP-сервера компании, и всевозможные антиспам-системы и даже антивирусы. И кроме того, такая вещь, как S/MIME. Про обход ее мы и поговорим.

По факту это некий аналог SSL, только для почты. Для работы тебе требуется создать открытый и закрытый ключи, а также получить сертификат, подписанный одним из центров сертификации.

Официально, получив от злоумышленника письмо, зашифрованное с использованием S/MIME, жертва сможет проверить и убедиться, что письмо прислано именно от тебя. То есть вектор с письмом от начальника не прокатил бы. Жертва увидит, что это не подписанное обычно письмо, сразу заподозрит неладное и вызовет службу безопасности :).

Но-но-но… Так как этой темой занимались (читай: ломали) не так много людей, как с SSL, то и проблемы здесь всплывают нам уже знакомые.

Теория теорией, а во внедрении всегда будут дырки. Итак, не очень давно на сайте goo.gl/utAiS был показан небольшой тест, как ведут себя основные корпоративные клиентские продукты (MS Outlook, Thunderbird, Mac mail) при получении письма. Не простого письма, а подписанного с использованием S/MIME. Но при этом email в поле FROM (от кого) не совпадает с тем, что указан в сертификате S/MIME, а сам сертификат верен и подписан авторизованным удостоверяющим центром. То есть здесь была эмулирована аналогичная с SSL ситуация, когда имя хоста CN (common name) не совпадает с именем хоста, куда произошло подключение (то, что в адресной строке). Браузеры в таком случае показывают страшные таблички с предупреждениями, а что у почтовиков?

Результат оказался очень забавным: только Mac Mail выдал дельное предупреждение. Thunderbird лишь пометил небольшим значком, а MS

Outlook вообще не увидел никакой проблемы. И это при том, что MS плотно поддерживает стандарт S/MIME.

Таким образом, по идее, все, что необходимо для проведения атаки, — получить сертификат S/MIME от одного из доверенных центров сертификации. По сути, это все те же Thawte, Comodo, VeriSign и так далее. У Comodo к тому же вроде бы можно даже получить его бесплатно.

Признаюсь, сам это не тестировал, но скриншоты от автора статьи должны быть вполне показательны (см. рис. 1, 2, 3).

Желательно, конечно, еще уточнить, что конкретно юзает наша жертва в качестве mail’ера, а также антиспам- и антивирус-системы в компании, чтобы быть во всеоружии. Но, как я вроде уже писал, для начала работы желательно получить хотя бы одно письмо из компании. В заголовках письма почти стопроцентно будет и mail-клиент, и, хотя бы косвенно, версии ПО.

Ищите технику для кухни? Посмотрите онлайн магазин бытовой техники actpa.su. Вы сможете заказать товар с доставкой на дом.