Корисні матеріали
Безпека QR-кодів: фішинг, підробки й те, що справді захищає
QR-код — це посилання, у якого схована адреса. Це не дефект формату, це його суть. І саме тому паперова наліпка на столику в кав'ярні може тихо відправити чужі гроші не туди. Нижче — що код справді вміє, звідки беруться підробки й що варто перевірити за десять секунд.
Сумнівний код? Сканер покаже адресу до того, як ви її відкриєте.
Перевірити кодQR — це посилання, у якого не видно адреси
Коли посилання приходить у повідомленні, ви можете навести на нього курсор або хоча б побачити, куди веде натискання. QR цей крок прибирає: те, на що ви наводите камеру, — це візерунок із квадратів, а адреса лежить усередині, де її ніхто не читає. Проблема безпеки не в коді. Проблема в тому, що єдина інформація, яка могла б вас зупинити, — це саме та, якої не видно.
І варто сказати вголос, бо чимало паніки будується на помилці: тут нічого не зашифровано й нічого не є таємницею. QR — це звичайний текст, намальований квадратами. Будь-хто з принтером може зробити код, будь-хто з телефоном може прочитати, що в ньому лежить, і жодна порада про «безпеку QR» цього не змінює.
Що взагалі може зробити сканування
«Сканування» — це не одна дія, і саме тут більшість порад стають розмитими. Код може нести чотири різні речі:
tel: і sms: одразу починають виклик або повідомлення — іноді на номер, який бере гроші.Найнебезпечніші — коди, які нічого не питають і нічого не показують: Wi-Fi-код, платіжний код. Сторінка хоч дає щось прочитати перед рішенням. Підключення не дає нічого.
Звідки насправді беруться підробки
Майже ніколи з «зламаного QR». Усередині візерунка немає сервера, який можна зламати: надрукований код застигає назавжди. Підробки приходять із трьох звичайних місць, і жодне з них не про криптографію:
Хтось надрукував свою наліпку поверх вашої. Плакат передрукувало агентство, друкарня або франчайзі й скопіювало адресу з помилкою. Або динамічне коротке посилання за кодом перепризначили — власник, той, у кого ще лишився пароль, або сервіс, що прострочився й перейшов до наступного клієнта.
Тому практичне питання звучить не «чи цей код підроблений», а «чий принтер це надрукував і чий акаунт керує тим, куди код веде».
Три атаки, які варто знати
Наліпка поверх
Трохи менша наліпка, наклеєна поверх вашої: правильний розмір, правильні кольори, і найефективніша вона в перший тиждень, поки код ще новий і ніхто не придивляється. Коштує копійки й працює. Захист фізичний — рамка чи тримач, а також фото з дня встановлення.
Перепризначене посилання
У кого акаунт аналітики, у того й призначення. Спільний пароль, стажер, агенція, якій ви перестали платити — і код на чотирьох тисячах столів веде туди, куди скажуть вони. Це єдина атака, яка зовсім не про друк, і єдині ліки — тримати акаунт під контролем.
Схожий домен
Без злому й без хакерів: просто домен, який з першого погляду читається правильно. Зайва літера, інше закінчення, дефіс там, де у вас його немає. На телефоні адресний рядок обрізається рівно там, де сидить різниця, — чуже ховається, а звичне видно.
Перевірка на десять секунд
Скануйте тим, що показує адресу, а не тим, що одразу стрибає в браузер. Читайте домен справа: має значення та частина, що стоїть перед першим одиничним слешем після домену — довга знайома назва перед чужим закінченням це найстаріший трюк, і коштує він нападнику нуль.
HTTPS — це база, а не гарантія: сертифікати безкоштовні, тому фішингова сторінка подається під замком нарівні з усіма. А код, що веде зразу до форми входу, форми картки або встановлення застосунку, пропустив крок, на якому ви б вирішили, чи довіряти.
Одне фізичне правило закриває більшість випадків із наліпками: якщо етикетка виглядає наклеєною поверх іншої, то код і є повідомленням, а повідомлення — що комусь потрібне ваше сканування.
Це ваша проблема, навіть коли ви не винні
Гість, який втратив гроші після сканування коду на вашому столі, не розрізняє ваш принтер і чужу наліпку. Розмова відбувається біля вашої стійки, у вашу зміну, з вашими людьми, які нічого не зробили. Суперечка йде про довіру, а довіра не приймає відповіді «це був не наш код».
У цьому й чесний бізнесовий сенс гігієни кодів: не «захистити інтернет», а «не пустити суперечку на свій поріг». І в неї є практична форма — у кожного коду має бути власник, фото, рутина перевірки й трохи бюджету на заміну того, що виглядає займаним.
Фізична цілісність — нудна рутина, і вона працює
Друкуйте коди так, щоб поверх них не можна було тихо наклеїти шар: рамка, тримач, матова картка в пазі. Вільна ламінація на столі — це запрошення. Сфотографуйте кожне розміщення того дня, коли встановили, і зберігайте фото там, де менеджер зміни справді його знайде: саме порівняння ловить наліпку, а не погляд.
Перевіряйте щомісяця і ще раз після будь-якого ремонту, фарбування чи сторонньої промо-установки — саме тоді коди переносять і заклеюють. Усе, що виглядає наклеєним повторно, замінюють, а не чистить. У кожному закладі найважливіші два коди, і людина, яка відкриває зміну, гляне на ці два за п'ять секунд.
Динамічний код — це контроль, а контроль — це відповідальність
Можливість перепризначити надрукований код — це функція: вона переживає зміну меню, кампанію, помилку в адресі. Але вона ж означає, що справжній актив — це акаунт. Код на стіні коштує рівно стільки, скільки пароль за ним.
Тому: двофакторна автентифікація, один названий власник, жодних спільних логінів, доступ знімають того ж дня, коли фрилансер іде. Тримайте список усіх живих коротких посилань із поточним призначенням і раз на місяць вивантажуйте його, щоб на питання «куди веде цей код» була відповідь, яка не залежить від пам'яті. І закривайте посилання правильно: прострочений домен купує той, у кого весь бізнес — саме такі коди.
Не все мусить бути QR-кодом
Оплата на касі, замовлення, коли телефон сів, важливе оголошення, вихід із будівлі: залиште людський шлях відкритим і видимим. Код не повинен бути єдиним способом заплатити, замовити, увійти або щось зрозуміти.
Це рішення про безпеку, а не про ввічливість. У момент, коли код стає єдиним входом, сіла батарея, тріснув екран чи затерлась камера перестають бути незручністю і стають людиною, яка не може скористатися вашим бізнесом.
Як зробити це практично
У генераторі QR починайте з призначення: https-сторінка на домені, який належить вам, за динамічним коротким посиланням, якщо ви хочете зберегти право виправити його пізніше. Далі завантажте файл для друку в тому фізичному розмірі, який код реально матиме, а не в тому, який гарно виглядає на моніторі.
QR-студія відповідає за те, що вирішує, чи можна переконливо підробити ваш код: контраст, тиха зона, матовий друк і найдешевший антифішинговий хід — надрукуйте свій домен звичайним текстом просто під кодом. Читач, який бачить назву до сканування, вже знає, чого чекати, і схожому домену доводиться виглядати схожим.
Потім перевірте через QR-сканер: відскануйте свій надрукований код, фотографію цього коду й навмисно затерту копію. Це ті самі десять секунд, які витратить ваш клієнт, і єдиний тест, який відбувається в тому світлі, де наліпка справді живе.
Одне речення для клієнтів
«Якщо наліпка виглядає наклеєною поверх іншої, будь ласка, спитайте нас перед скануванням». Достатньо коротко, щоб надрукувати поруч із кодом, і воно робить кожного гостя інспектором, не коштуючи нічого. Розмістіть це там, де код, а не на сторінці правил, яку ніхто не відкриває.
Помилки, які дорого коштують
- Код перевіряли камерою, яка сама відкриває сторінки, тому адресу так ніхто й не прочитав.
- Спільний логін до акаунта посилань і жодного запису, хто і що змінював.
- Коди надруковані один раз і ніколи не сфотографовані — порівнювати нема з чим.
- Домен ніде не надрукований текстом, тому схожий домен неможливо відрізнити.
- Платіжний код, який є єдиним способом заплатити за столиком.
- Wi-Fi-код, який підключає зразу й нічого не пояснює після цього.