Вкуриваем QR. Как сделать QR-код с сюрпризом

28.07.2020 posovetu Обзоры смартфонов 0

Основные сведения о резервных кодах

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

Эти коды генерируются в наборах по 10 штук. В любой момент вы можете создать новый набор, автоматически деактивируя предыдущий. Кроме того, резервный код аннулируется после использования его для входа в систему.

Создание и отображение набора резервных кодов Google

Чтобы создать новый набор кодов копирования:

  1. Войдите в свой аккаунт на
  2. Найдите раздел Резервные коды для печати.
  3. Нажмите Показать/генерировать коды.
  4. Вы можете их распечатать или загрузить. Если вы думаете, что этот набор кодов был украден или вам нужен новый набор неиспользованных кодов, нажмите Генерировать новые коды.

История вектора атаки

В мае 2013 года специалисты компании по сетевой безопасности Lookout Mobile разработали специальные QR-коды, которые смогли скомпрометировать очки Google Glass. На тот момент очки сканировали все фотографии, «которые могут быть полезны их владельцу», — и предоставили взломщикам полный удаленный доступ к устройству. Исследователи сообщили в Google о данной уязвимости, и ее закрыли буквально за несколько недель. К счастью, исправить успели до того, как ее можно было использовать вне лаборатории, ведь взлом очков реального пользователя мог привести к большим проблемам.

В 2014 году программа Barcode Scanner для мобильных устройств из проекта ZXing практически не проверяла тип URI, передаваемый через QR-код. В результате любой эксплоит, который мог быть исполнен браузером (например, написанный на JavaScript), можно было передать через QR.

История вектора атаки

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

Если содержимое не соответствует хотя бы одному из требований, то оно определяется как обычный текст, а не URI. Этот механизм блокирует атаки вроде javascript;alert(«You have won 1000 dollars! Just Click The Open Browser Button»);, но, внеся пару простых изменений в код, мы получаем вариант, который программа исполняла в браузере, ведь она считала JS-код обыкновенным, «нормальным» URI!

Вот как это выглядело.

Вариант кода, который блокировался защитным механизмом сканера

История вектора атаки

Модифицированный URI, который программа не могла отфильтровать

Как мы можем увидеть, уведомление появилось в браузере, а значит, URI с потенциально вредоносным кодом был выполнен. Однако выполняется данный JS-код лишь тогда, когда пользователь нажимает Open Browser (то есть «Открыть в браузере»).

Еще один интересный пример из 2012 года: эксперт по информационной безопасности Равишанкар Боргаонкар (Ravishankar Borgaonkar) продемонстрировал, как сканирование простейшего QR может привести к форматированию устройств Samsung! Что же было внутри? MMI-код для сброса до заводских настроек: *2767*3855#, а также префикс tel: для совершения USSD-запроса.

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

История вектора атаки

WWW

Читайте также:  Как на Android подключиться к удаленному рабочему столу Windows 10

Если у тебя нет сканера кодов, но уйма свободного времени — можно попробовать расшифровать код вручную. Инструкция есть на Хабре.

Способы сканирования QR-кода на Андроид

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

Сканирование QR-кода с помощью Google Assistant

Способы сканирования QR-кода на Андроид

Наверняка у вас современный Android смартфон, который имеет на борту голосового помощника Google Assistant (новая усовершенствованная версия Google Now или как еще называю Ok Google).

Рассмотрим как отсканировать QR код c помощью Google Assistant:

  1. Нажмите и удержите клавишу «Home» (включения/выключения) для вызова Google ассистента.
  2. Далее нажмите на цветные точки, чтобы появился значок объектива, как правило, в первый раз использования вам дать разрешение Google ассистенту использовать камеру.
  3. Затем Google ассистент покажет все возможности среди которых и сканирование QR кода.
  4. Наведите объектив камеры на QR код, и в течении 1-3 секунд на экране вашего Android смартфона появится информация или ссылка по которой можно перейти после сканирования.
Способы сканирования QR-кода на Андроид
Google Assistant Разрешить доступ Сканирование QR-кода

Как видите все достаточно просто и быстро и незачем устанавливать дополнительные приложения тем самым забивая память телефона.

Сканирование QR-кода с помощью приложения Google Lens

Способы сканирования QR-кода на Андроид

Данный вариант подойдет тем кто не имеет Google ассистента, поэтому вы можете скачать быстрое и надежное приложения от Google.

Download QR-Code Google Объектив Developer: Google LLC Price: Free

  1. Скачайте и установите приложение Google Lens.
  2. Запустите приложение, и дайте разрешения для использования Google Lens камеры вашего телефона или планшета на Android.
  3. Затем наведите камеру на QR-код и в течении 1-3 секунд он считает информацию и покажет на вашем экране.
Способы сканирования QR-кода на Андроид

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

Генерируем QR код с помощью Chart Google API

Вариант # 2.

У второго варианта есть большее преимущество, нам не придётся линковать и инклудить никакие библиотеки, воспользуемся средствами Chart Google API, документация на который лежит тут — ССЫЛКА

Чтобы создавать QR коды с помощью сего средства нам нужно знать как строится POST и GET запрос. Тех кто не в курсе что это вообще такое, можно прочитать вот эту статью — POST и GET запросы в Indy (Delphi) Часть 1 и главное узнать саму суть, хотя бы понимать какими символами и как отделяются параметры в QUERY_STRING.

Что нам написал гугл в своей документации ? Он говорит — шлите ваш запрос на этот скрипт —

Root URL:

Вы ведь в курсе про то как строятся запросы ? Окей, тогда вы должны знать что после знака вопроса начинают идти переменные и их значения, идущие через знак равенства, который в данном контексте означает присвоение. Между собой пары переменная=значение соединяются символом &

Читаем документацию дальше и смотрим чего от нас требует гугл.

cht=qr | Required | Specifies a QR code.

Видите слово Required ? Это означает что параметр обязательный и пропускать его нельзя. Так, значит чтобы скрипт понял что мы хотим получить QR код, мы должны отправить параметр cht со значением qr, в итоге наш запрос сейчас уже выглядит так:

Смотрим дальше:

chs=<width>x<height> | Required | Image size.

Окей, значит этим параметром мы указываем гуглу на высоту и ширину QR кода, который мы хотим получить, дополняем наш запрос:

&chs=200×200

Как вы поняли, мы получим QR код размером 200 на 200 пикселей. Кстати … вы уже можете впихнуть этот запрос в браузер и получить готовый QR код. Вот только никакой информации в нем пока ещё нет. Смотрим дальше документацию, а там идёт последний обязательный параметр.

Читайте также:  Простой способ установить TWRP Recovery в Андроиде

chl=<data> | Required | The data to encode. Data can be digits (0-9), alphanumeric characters, binary bytes of data, or Kanji. You cannot mix data types within a QR code. The data must be UTF-8 URL-encoded. Note that URLs have a 2K maximum length, so if you want to encode more than 2K bytes (minus the other URL characters), you will have to send your data using POST.

В общем гугл тут напоминает о том, что послать GET запрос длинной более 2 К не получится, т.к. длина гет запросов ограничена и если нужно послать строку длиннее, то нужно использовать POST запрос. Но нам для наших нужд GET запроса бооооолее чем хватит.

&chs=200×200&chl=

Можете отправить этот запрос в браузерной строке и получите код, затем картинку можно сохранить и декодировать на этом сайте — просто убедиться что информация закодирована верно.

Помните в первой части статьи мы говорили про уровни коррекции ошибок ? Они есть и здесь:

chld=<error_correction_level>|<margin>

&chs=200×200&chl=&chld=H

Предсказываю ваш следующий вопрос, «Эй, откуда такие большие рамки вокруг QR кода ? Неужели нельзя на это повлиять ?». Можно, смотрим переменную параметра — chld=<error_correction_level>|<margin> . Видите вот такой символ — | ? Через него можно задать марджины или отступы или бордеры для нашего QR кода. Генерируем QR код ещё раз, но уже с марджинами:

&chs=200×200&chl=&chld=H|1

И да, не забываем о том, что margin считается не в пикселях, а в модулях. По умолчанию гугл делает margin в 4 модуля.

И последний параметр — choe=<output_encoding> — гугл интересует как мы хотим кодировать данные в QR коде, есть 3 варианта: UTF-8 [Default], Shift_JIS, ISO-8859-1Как вы поняли, кодировкой по умолчанию является UTF-8 и если вас это устраивает, то в запросе её можно не указывать.

Для Delphi, впрочем и для других языков, данная реализация будет выглядеть на 100 % идентично, пример — (‘&chs=200×200&chl=&chld=H|1′);

В общем генерируем QR код абсолютно так же.

Ну а как вывести картинку в браузере я думаю и так всем понятно:

<img src=»&chs=200×200&chl=&chld=H|1″ alt=»QR код »/>

Читать вариант №1>>

Статьи по теме:

Тюмень. Новая табличка с QR-кодом установлена на площади Единства и Согласия в Тюмени. QR-код в ПриватБанке QR-код появился на объектах культурного наследия Москвы В Симферополе на зданиях с историей появятся QR-коды Чем опасны QR-коды Критерии успеха и применимости QR-кода Kinect в Xbox One будет читать QR-коды QR код «Дендрария». В знаменитом сочинском парке появились электронные гиды Первая монета с QR-кодом На памятнике С. М. Кирову появится QR-код

© 2013-2021 Обратная связь

Как сканировать QR-ссылку

Десктопный Chrome тоже поддерживает QR-коды

Как видите, ничего сложного. Единственное, что не совсем очевидно, — это то, как сканировать QR-коды, содержащие в себе ссылку. А, между тем, для этого сканирующему нужно повторить все те же самые действия. Для этого необходимо запустить браузер, перейти в контекстное меню и выбрать «Поделиться». А уже там следует переключиться с режима генерации QR-кода на режим сканирования. Это уже не так удобно, а другого способа активировать сканер мне обнаружить так и не удалось. Поэтому считаю, что Google предстоит доработать новый механизм, вынеся кнопку сканирования на более видное место.

Google сделает Chrome для Android ещё быстрее в следующем обновлении

Несмотря на то что в десктопной версии Google Chrome есть возможность генерации QR-кодов со ссылками (ровно по тому же принципу, только контекстное меню вызывается правой кнопкой мыши), отсканировать компьютером уже готовую ссылку, например, со смартфона, у вас не получится при всём желании. В принципе, особо отчаянные могут заморочиться с использованием «Google Объектива», тем более мы уже рассказывали, как работает этот сервис. Однако удобства от подобного сканирования не ждите.

Читайте также:  Лаунчер на Android: как установить, настроить или удалить

Стандартный функционал

В некоторых смартфонах и планшетах (в зависимости от марки) есть функционал сканирования QR-кодов в штатном исполнении и сделать все можно без приложения. Не будем перечислять их все, затронем лишь модель от Xiaomi.

Стандартный функционал
  1. Для того чтобы считать QR на таком смартфоне нужно, в первую очередь, запустить его стандартную камеру.
Стандартный функционал
  1. Далее, тапаем по кнопке «Режимы».
Стандартный функционал
  1. В верхней правой части экрана находится кнопка настроек. Тапаем по ней.
Стандартный функционал
  1. Найдите обозначенный на скриншоте пункт и включите его.
Стандартный функционал
  1. Теперь, когда перед объективом вашей камеры появится QR-код, будет произведено его автоматическое распознавание. Вы увидите такую ссылку, которая показана на скриншоте ниже.
Стандартный функционал
  1. Откроется окно выбора, в котором можно будет либо скопировать ссылку, либо открыть ее в браузере.

Лучшие сканеры штрих кодов на смартфон с Андроид ОС

Не будем ходить вокруг да около, приступим сразу к разбору приложений.

QR & Barcode Scanner

Это один из лучших вариантов для установки на телефоны Android. Быстрый и удобный инструмент. Идеально сканирует коды плюс ко всему помогает генерировать свои. Работает на бесплатной основе. Имеет ряд особенностей:

Лучшие сканеры штрих кодов на смартфон с Андроид ОС
  • поддерживается всеми последними версиями OS Android, начиная с 6.0;
  • не требует подключения к интернету;
  • возможность делиться результатами сканирования в мессенджерах и не только.

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

На заметку! В смартфонах последнего поколения с ОС Android имеется предустановленный инструмент «Сканер». Его можно найти, если сделать на главном экране свайп слева на право.

QR Code Reader

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

Лучшие сканеры штрих кодов на смартфон с Андроид ОС
  • минималистичный дизайн, в котором нет ничего лишнего;
  • мгновенное сканирование и получение результата без задержек;
  • подключение фонарика при сканировании в темноте;
  • сохранение истории сканирования.

Для этого приложения регулярно выпускаются обновления, поэтому качество работы QR Code постоянно улучшается.

QR Code- Barcode Reader Free

Бесплатное и абсолютно безопасное приложение. Достаточно мощный и эффективный. Надежно считывает любой формат информации. Имеет ряд интересных особенностей:

  • самостоятельно генерирует код;
  • имеет высокую скорость декодирования шифра;
  • создает QR для текста и другого вида информации;
  • отсутствует необходимость подключиться к Интернету; сохраняет историю сканирования.
Лучшие сканеры штрих кодов на смартфон с Андроид ОС

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

Что делать с QR-кодом?

Сгенерированный QR-код получается довольно крупным, так что достаточно просто поднести камеру смартфона, чтобы считать его. Сегодня некоторые стоковые камеры уже имеют встроенный сканер QR-кодов, можно использовать тот же Google Lens. В части прошивках подобный сканер имеется в виде отдельного приложения. Если же ваш смартфон “из коробки” эту опцию не поддерживает, советуем обратить внимание на сторонние программы-сканеры, они часто бывают вернемся к нашим баранам. QR-код на экране нашего Chrome Canary достаточно крупный, чтобы просто считать его камерой смартфона. Но если есть необходимость, его можно скачать и отправить как изображение любым удобным способом или распечатать.

Итак, это был наш небольшой мануал о том, как можно быстро сгенерировать ссылку в виде QR-кода и что с ней дальше можно делать. Как мы уже упоминали выше, сейчас данная функция доступна только в Chrome Canary, но мы знаем, что все протестированные опции успешно переезжают и в стабильный Chrome, так что если хотите удивить друзей необычным QR-кодом — нужно успеть сейчас, пока функция не стала массовой. И, конечно, не забываем оставлять комментарии и общаться с единомышленниками в чате Telegram а также подписываться на наш канал ТЕХМО.