Bishopfox – ШІ, що допоможе розшифрувати розмитий текст.
Сьогодні ми зосередимося на одній з таких технік – пікселізації – і покажемо вам, чому це поганий, небезпечний і вірний спосіб витоку ваших конфіденційних даних. Щоб показати вам, чому, я написав інструмент під назвою Unredacter, який бере відредагований пікселізований текст і повертає його назад у нередаговану форму.
Існує безліч реальних прикладів такого редагування конфіденційної інформації, але я не буду називати імена. Подивіться моє відео, щоб коротко нагадати про важливість НІКОЛИ не використовувати пікселізацію для редагування тексту.
Виклик прийнято
Існує інструмент під назвою Depix, який намагається зробити саме це за допомогою дійсно розумного процесу пошуку перестановок пікселів, які могли б призвести до певних піксельних блоків, враховуючи послідовність Де Бройна для правильного шрифту.
Мені дуже подобається теорія цього інструменту, але дослідник з Jumpsec зазначив, що, можливо, на практиці він працює не так добре, як хотілося б. У реальних прикладах ви, швидше за все, отримаєте незначні варіації і шум, який заважає працювати з інструментом.
Як працює пікселізація
Алгоритм досить простий: ви розбиваєте зображення на сітку з заданим розміром блоків (у прикладі вище – 8×8). Потім для кожного блоку ви встановлюєте колір відредагованого зображення рівним середньому кольору оригіналу для цієї ж області. Ось і все – просто ковзне середнє пікселів для кожного блоку.
Ефект ніби “розмазує” інформацію зображення по кожному блоку.
Але хоча частина інформації втрачається в процесі, вона абсолютно точно просочується крізь нього. І саме цю інформацію, що просочилася, ми будемо використовувати на свою користь.
Примітно, що цей алгоритм широко стандартизований, оскільки він дуже простий. Отже, незалежно від того, чи робите ви це редагування в GiMP, Photoshop або будь-якому іншому інструменті, редагування вийде однаковим.
Для підтвердження нашої концепції давайте припустимо, що зловмисник знає про це:
- Тип шрифту відредагованого тексту
- Розмір шрифту відредагованого тексту
- Що редагування було здійснено саме з текстом
Я б сказав, що це досить розумні припущення, оскільки зловмисник в реалістичному сценарії, швидше за все, отримав би повний звіт, з вилученим лише одним фрагментом. У нашому тексті виклику ви можете побачити кілька слів прямо над піксельним текстом, які дають нам цю інформацію.
Багато проблем на шляху до перемоги над редагуванням
Ключова річ, на якій ми зосереджуємося, полягає в тому, що процес редагування за своєю суттю є локальним. Говорячи криптографічною мовою, ми б сказали, що він не має дифузії. Зміна одного пікселя десь у вихідному зображенні впливає ЛИШЕ на відредагований блок, до якого він належить, а це означає, що ми можемо (здебільшого) вгадати зображення символ за символом. Ми виконаємо рекурсивний пошук у глибину для кожного символу, оцінюючи кожну здогадку за тим, наскільки добре вона збігається з відредагованим текстом.
Наприклад, ми вгадуємо літеру “а”, виділяємо її в пікселі і дивимося, наскільки вона збігається з відредагованим зображенням. Потім ми вгадуємо літеру “b” і так далі. Звучить не так вже й складно, чи не так? Що ж, є ще купа логістичних питань, які потрібно подолати, і які можуть бути не такими очевидними на перший погляд!
Переходьте за посиланням вище. Де дуже цікаво і з прикладами описано метод роботи.