Traffic Cardinal Traffic Cardinal написал 10.12.2024

Киберпаранойя 7.3: QR — легко сканировать, легко заразиться!

Traffic Cardinal Traffic Cardinal написал 10.12.2024
14 мин
0
361
Содержание

QR-коды — решение, появившееся чуть ли не случайно, но оказавшееся настолько удобным, что сегодня используется повсеместно. Бесконтактная оплата, всевозможные промокоды и акции, обмен контактами, да что уж там — более подробная инфа о докладах спикеров на конфе и даже «живой» бумажный комикс от Traffic Cardinal основаны на использовании QR-кодов.

banner banner

Куркод ¯\_(ツ)_/¯
Куркод ¯\_(ツ)_/¯

Однако, несмотря на все свое удобство, QR-коды опаснее, чем кажутся. И опасность эта не гипотетическая, а вполне реальная — их уже активно используют как для фишинга, так и для распространения вредоносного кода. Но хуже всего то, что с помощью QR-кодов можно творить такое, от чего не спасет ни один антивирус. И не потому что антивирусные компании не знают про угрозу, а потому что надежно защитить от этого программно (а антивирусы — программа) просто невозможно.

Обо всем этом, а также о том, как защититься, мы и расскажем в сегодняшней статье.

*Степень опасности мы проранжировали от низкой к высокой — поэтому все самое вкусное расположено ближе к концу.

Динамические QR

Первое, с чего хочется начать — это динамические QR-коды. Начать именно с них мы хотим неслучайно: динамические QR-ы делают возможными любые описанные ниже опасности, но самое главное — пользователь с большей вероятностью «поведется» именно на динамический код. Почему? В случае с обычным QR-кодом вы видите перед собой картинку, сканируете ее и таким образом инициируете нужное вам действие. Соответственно, любое изменение этой картинки может вызвать у вас вопросы.

Здесь, конечно, стоит отметить, что практически никто из нормальных людей не сравнивает QR-коды. Да и в принципе не умеет читать их глазами — но это отдельная тема.

В случае с динамическими QR-кодами картинка вообще не меняется, но может меняться сам процесс, который вы запускаете сканированием кода. Проще говоря, вы можете миллион раз сканировать один и тот же QR-код — и все будет хорошо, а на миллион первый раз случится что-то нехорошее.

Более того, для генерации динамических QR-кодов чаще всего используются готовые решения, так называемые генераторы QR-кодов. И довольно часто единственная защита от несанкционированного доступа к панели управления таким QR-кодом — это четырех- или пятизначный PIN. А иногда и вовсе трехзначный…

Обычно динамические QR сразу видно — в них меньше пикселей, так как зашита лишь ссылка. Но это не аксиома!
Обычно динамические QR сразу видно — в них меньше пикселей, так как зашита лишь ссылка. Но это не аксиома!

Для понимания — трехзначный PIN даже вручную можно подобрать минут за 10–15. Четырехзначный — за полтора-два часа. Софтом же все это делается за секунды. То есть злоумышленнику даже не нужно взламывать сервер какой-либо компании, чтобы перенаправить ее клиентов с официального сайта на свой. Он может просто подобрать PIN к панели управления генератором QR-кодов и через него подсунуть все, что ему нужно. Поэтому даже если вы уже сканировали какой-либо QR-код 100500 раз, не стоит думать, что вы защищены, а QR-код безопасен. Ибо 100501-й раз может стать «тем самым».

QR-фишинг

Следующая по популярности у хацкеров атака через QR-код — это фишинг. Или QRishing/Куришинг. Здесь мы не будем останавливаться надолго, потому как знание деталей вас не защитит. Если злоумышленник сделал качественный фейк целевой страницы, скорее всего, вы этого не заметите. А так как в случае с QR-кодами все взаимодействие происходит за секунды, шанс того, что вы не заметите, улетает в космос. К счастью, большинство т. н. «защищенных QR-сканеров» имеют встроенную защиту от фишинговых переходов. Хоть и не панацея, но это позволяет минимизировать риски.

Пример реальной QRishing-атаки, от которой в 2023 году пострадало много крупных международных корпораций
Пример реальной QRishing-атаки, от которой в 2023 году пострадало много крупных международных корпораций

QR-парсинг

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

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

Самое «безобидное» из наглядного — это пробрасывание через QR-код ссылки, парсящей вашу геолокацию
Самое «безобидное» из наглядного — это пробрасывание через QR-код ссылки, парсящей вашу геолокацию

QR-дрейнинг

По теме дрейнеров можно рассказать достаточно много, но таки нельзя. Увы, любые подробности будут сводиться к инструкции, как сделать дрейнер — а это уже незаконно. Поэтому придется ограничиться тем, что QR-дрейнеры существуют и активно используются хацкерами. В особенности эта опасность актуальна для криптовиков. Но и в случае с обычными P2P-платежами такой риск тоже есть.

Проще говоря, любое сканирование QR-кодов (в особенности, если это как-то связано с оплатой (чего бы то ни было)) может закончиться для вас тем, что все деньги с вашего криптокошелька или банковской карты улетят в неизвестном направлении. И даже проверенные годами сервисы могут стать для вас роковыми (см. раздел про динамические QR).

Да что уж там — эта опасность есть даже в обычном магазине у дома, если QR-код генерируется не на терминале оплаты, а реализован в виде наклейки на кассе, ведь никто не запрещает условному кибергопнику подгадать/создать удобный момент, незаметно наклеить туда свой QR-код и опустошить средства какого-то невнимательного покупателя.

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

QR-установщики

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

Что ж — говорим. Не устанавливайте ничего с помощью QR-кода! Да, это удобно. Но, как мы уже писали выше, в случае с динамическими QR-кодами хацкеру не придется взламывать даже сервер компании, чтобы подсунуть туда свою программу вместо той, на которую вы рассчитывали. А если это изначально его QR — то ему не придется делать вообще ничего.

В особенности не стоит устанавливать ничего по QR из таких «источников»
В особенности не стоит устанавливать ничего по QR из таких «источников»

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

QR/JS

А вот этот тип атак можно было бы смело расположить последним в нашем списке — на позиции самого опасного. И не потому что он самый крутой с технической точки зрения, а потому что его проще всего реализовать. Так что, в отличие от следующих за ними «инъекций», атаки по QR с помощью JavaScript не требуют сложных технических знаний и опыта в программировании, и провернуть их может каждый второй школьник, не просыпавший уроки информатики.

Все дело в том, что сам по себе JS достаточно прост для освоения — в том числе для дилетанта. Да и материальной базы в интернете хватает с головой, в том числе о том, как создать какой-то вирус на JS. А еще пользователь практически никогда не видит работу JavaScript, если только разработчик не решит показать ее специально. И при всем этом большинство софта, работающего с JS (например, те же браузеры), защищено от всего этого достаточно плохо. Ну точнее защита в них есть, но если вы ее включите, половина сайтов тупо перестанет открываться, а вторая половина будет открываться коряво. Вот ее почти никто и не включает. Чем, собственно, и пользуются хацкеры во всем мире.

Не рекомендуется следовать всем «рекомендуется» — иногда это просто нежелание вкладывать ресурсы в безопасность продукта
Не рекомендуется следовать всем «рекомендуется» — иногда это просто нежелание вкладывать ресурсы в безопасность продукта

Теперь просто представьте, что вы отсканировали, казалось бы, обычный QR-код, перешли на какой-то сайт — и там инициировался JavaScript. Либо же JS инициировался на уровне вашей операционной системы, что тоже вполне вероятно. В общем, последствия такого сканирования могут быть самыми разными: начиная от любой из описанных выше схем и заканчивая получением полного контроля над вашим устройством. Повторимся — для злоумышленника все это будет относительно просто сделать, так что порог вхождения в эту тему сравнительно низкий.

+1 причина не сканировать QR-коды. А мы идем дальше.

QR-инъекции

Ну и вишенка на тортике — QR-инъекции. Да, каждому второму школьнику подобное недоступно. И даже каждому второму программисту. Да что уж там — среди ИБ-Гуру такое могут не все. Ведь QR-инъекции требуют не только достаточно высокого уровня технической подкованности, но и «закрытых сведений» об алгоритме работы QR-сканеров.

Если кто-то считает это реальной паранойей — вот скрин с одного уважаемого в «тусовке» кибербез-ресурса. Их авторы — реальные ИБшники, и уж они точно в теме лучше кого бы то ни было. Все названия замазаны специально — мы все же не ИБ-медиа, и из-за демонстрации названий к нам могут зайти с вопросиками
Если кто-то считает это реальной паранойей — вот скрин с одного уважаемого в «тусовке» кибербез-ресурса. Их авторы — реальные ИБшники, и уж они точно в теме лучше кого бы то ни было. Все названия замазаны специально — мы все же не ИБ-медиа, и из-за демонстрации названий к нам могут зайти с вопросиками

Тем не менее такая опасность есть. Зная, как устроен алгоритм того или иного QR-сканера, хацкер вполне может зашить в QR-код exploit для того, чтобы через этот алгоритм делать с вашей системой все что душе угодно. А еще он может создать собственный QR-сканер и продвинуть его в официальном маркетплейсе. Или даже десяток таких QR-сканеров. Или сотню. И в этом случае он точно будет знать, как их алгоритмы устроены.

Либо он может провести реверс-инжиниринг и узнать, как устроен какой-то из популярных QR-сканеров. Ну и так далее…. Проще говоря, вы сканируете очередной QR и думаете, что у вас все хорошо. Однако в то же время ваш гаджет перестал быть лично вашим и стал «общим» со злоумышленником. И то лишь до тех пор, пока хацкер не решит «спалиться», использовав его для своих целей.

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

Подобное встречается довольно редко, но по степени опасности это наиболее серьезная из угроз. А почему это наиболее серьезная из угроз — расскажем в следующий раз.

Почему антивирусы — не панацея

Большинство современных антивирусов и защищенных QR-сканеров действительно имеют неплохую техническую базу для выявления опасностей. А значит, могут вас защитить. Но они — не панацея. Во-первых, потому что, как и в случае с обычными антивирусами, их базы сигнатур должны быть актуальными. А пока опасность не станет массовой, о ней вряд ли узнают — соответственно, и меры против нее не примут.

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

Означает ли все это, что не нужно использовать антивирусы и защищенные QR-сканеры? Конечно же нет, ведь они в значительной степени минимизируют риски. Однако панацеей они не являются — это важно понимать.

Как защититься от QR-атак?

Увы, но панацея — не сканировать QR-коды. Вообще. Насколько это реалистично в современном мире? Примерно на 0%. Слишком уж эта фича удобна — и вы, скорее всего, будете ей пользоваться.

QR-коды — как котики. Проблем много — но все их любят
QR-коды — как котики. Проблем много — но все их любят

Что же делать, если даже антивирусы не гарантируют реальной защиты? А все как всегда — думать, что вы делаете, и соблюдать базовые правила, а именно:

  • Регулярно обновлять ПО — чем меньше дыр, тем меньше рисков. Хотя иногда обнова создает еще больше угроз. Так что обновляйтесь регулярно, но без суеты — выждите день-два после релиза очередного патча.

  • Использовать проверенные антивирусы — встроенные в ОС антивирусы, как правило, представляют собой бесполезный мусор, призванный сделать продукт дороже.

  • Сканировать только через специальные защищенные QR-сканеры — пусть это и не панацея, но хотя бы защитит от большинства уже известных угроз.

  • Не сканировать ничего, что связано с транзакциями — увы, традиционная оплата «ручками» несравнимо безопаснее.

  • Всегда и везде включать двухфакторную авторизацию — редкий хацкер сможет обойти такое при QR-атаках.

  • Никогда и ничего не устанавливать по QR — просто поверьте.

  • Использовать отдельный гаджет в ситуациях с повышенной опасностью — например, если QR-получен из источника, с которым вы незнакомы. Или когда вам очень надо что-то установить по QR, а вы уже прочитали совет выше.

  • Минимизировать использование QR-кодов — да, неудобно. Зато реально защищает!

Итоги

Надеемся, теперь вы лучше понимаете, какие риски несет в себе столь популярная и удобная технология как QR-коды. Понимание угрозы — это уже ⅔ защиты. А на этом у нас все.

Здравствуйте! У вас включен блокировщик рекламы, часть сайта не будет работать!