Штрих-код UPC, (или универсальный код продукта), используется с 1974 года.

Как взломать андроид с помощью QR кода

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

Картинки по запросу qr code hack

Эти атаки являются мощными, потому что люди не могут читать или понимать информацию, содержащуюся в QR-коде. Даже сканеры, такие как смартфоны, например, могут быть уязвимы для такого рода атак.

Также, было обнаружено, что QR-коды способны заманивать пользователей iPhone на вредоносные сайты.

Что за QR-коды?

QR-коды — это форматы данных, которые полезны для всего, что необходимо сканировать автоматически.

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

Штрих-код UPC, (или универсальный код продукта), используется с 1974 года.
 
Штрих-код UPC, (или универсальный код продукта), используется с 1974 года.

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

Что могут коды с большим количеством данных?

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

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

QR-коды на стороне зла. Создание QR-кодов для взлома устройств, изображение №2
 

Один QR-код может содержать 4 296 символов ASCII, что дает гораздо больше возможностей. Вы даже можете отформатировать данные для запуска действий, когда устройство чтения распознает их.

Одно из замечательных применений QR-кодов благодаря их большей емкости данных — это использование их для управления подключениями Wi-Fi без использования пароля. Кодируя следующую строку, вы можете создать QR-код, который автоматически регистрирует пользователей Android в сети Wi-Fi.

Любой, кто сканирует QR-код на устройстве Android, автоматически войдет в зашифрованную сеть Wi-Fi. Чтобы узнать, сколько данных может упаковать QR-код, взгляните на этот код:

QR-коды на стороне зла. Создание QR-кодов для взлома устройств, изображение №3
 

Этот крошечный код содержит следующий текст:

Текст на изображении больше самого QR-кода! Емкость делает QR-коды и мощными, и опасными, потому что люди не могут понять данные внутри них без предварительного их сканирования.

QRgen для взломанных кодов

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

Инструмент, который мы будем использовать сегодня для их создания, называется QRGen.
Он возьмет полезную нагрузку и закодирует ее в QR-код, используя Python.

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

Доступ к категориям полезных нагрузок, доступных в QRGen, можно получить с помощью -l и номера во время выполнения скрипта. Номер и тип полезной нагрузки указаны ниже.

0: SQL-инъекции

1: XSS

2: Инъекция команд

3: формат строки

4: XXE

5: Струйный Fuzzing

6: SSI инъекция

7: LFI / Обратный путь в каталогах

Чтобы создать кучу вредоносных QR-кодов, содержащих нечеткие полезные нагрузки строк, мне просто нужно запустить QRGen.py -l 5, чтобы создать множество кодов для тестирования.

Что понадобится

Чтобы использовать QRGen, вам нужно установить Python 3.

Это должно быть возможно в любой операционной системе. Вам также понадобятся несколько библиотек Python, включая qrcodePillow и argparse, которые мы также установим.

Установка QRGen

Чтобы начать, скачаем репозиторий из гитхаба.

Когда загрузка кончится, поменяйте параметр (cd) на его директорию и перечислите (ls) его содержимое, чтобы найти требуемый файл.

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

Если не сработает — есть альтернативная команда

Создание вредоносных QR-кодов из типа полезной нагрузки

Теперь вы сможете запустить скрипт, набрав python3 qrgen.py.

Для начала давайте создадим полезную нагрузку. Для этого запустите QRGen со следующим аргументом.

Будет сгенерировано несколько QR-кодов, и последний из созданных автоматически откроется.

QR-коды на стороне зла. Создание QR-кодов для взлома устройств, изображение №4
 

Чтобы увидеть остальные данные, вы можете набрать cd genqr, чтобы перейти в каталог, в котором они созданы, и просмотреть его содержимое.

Кодирование полезных нагрузок

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

Каждая строка будет новой полезной нагрузкой.

Сначала мы можем создать следующий текстовый файл, набрав nano badstuff.txt для создания текстового файла.

В этот текстовый файл мы можем поместить нашу полезную нагрузку. Та, что ниже, — это fork-бомба. Будет ли она работать на сканере QR-кода? Кто знает.

Мы можем сохранить его, нажав Ctrl + X, затем нажмите Y и Enter, чтобы подтвердить сохранение. Теперь вы должны увидеть текстовый файл, содержащий вашу полезную нагрузку.

Чтобы записать свою полезную нагрузку в QR-код, мы будем использовать команду -w.

Предполагая, что ваш файл полезных данных называется «badstuff.txt», команда для этого должна выглядеть следующим образом (не забудьте заранее вернуться в каталог QRGen).

Для моей бомбы программа генерирует такой QR-код

QR-коды на стороне зла. Создание QR-кодов для взлома устройств, изображение №5
 

Не все QR-коды целесообразно сканировать

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

Это делает сканирование QR-кода рискованным, поскольку у человека нет возможности прочитать информацию, прежде чем сканировать. Если вы сканируете QR-код, который кажется подозрительным, обратите внимание на то, что код пытается запустить, и не подключайтесь к сети Wi-Fi и не переходите к сокращенной ссылке.

Click to rate this post!
[Total: 1 Average: 5]

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

Leave a reply:

Your email address will not be published.