Увійти Безкоштовно назавжди Почати роботу

Безпека

Доказ того, що ваш браузер не є сховищем.

Chrome та Firefox збережуть ваші паролі — а потім передадуть їх будь-якій програмі, що працює під вашим обліковим записом. Це не помилка. Це дизайн. Ось доказ: спочатку простими словами, потім у вигляді коду.

Версія простими словами

"Менеджер паролів" вашого браузера захищений рівно одним замком: входом до вашого комп'ютера. Як тільки Ви увійшли до свого ноутбука, браузер може миттєво прочитати кожен збережений пароль — отже, будь-яка інша програма, що працює під Вашим обліковим записом, також може це зробити.

Погане завантаження. Підозріла браузерна гра. Один заражений пакет у проєкті, який Ви клонували. У той момент, коли він запускається — поки Ви увійшли до системи, як завжди — він читає кожен пароль, збережений Вашим браузером, за час, необхідний для відкриття файлу. Немає головного пароля для зламу, тому що нічого зламувати: браузер був створений для автоматичного розблокування для Вас, а шкідливе програмне забезпечення просто ввічливо запитує від Вашого імені.

Це не теоретично. Це найпоширеніший спосіб, яким звичайні люди втрачають свої облікові записи. Шкідливе програмне забезпечення навіть має нудну галузеву назву — "інфостилери" — тому що це настільки рутинно. Ваші паролі, збережені картки, сесійні куки: скопійовані та втрачені, перш ніж Ви це помітите.

Рішення просте: Ваші паролі повинні бути заблоковані чимось, чого немає на решті Вашого комп'ютера — і вони взагалі не повинні зберігатися на машині.

Версія з підтвердженнями

Не вірте нам на слово. Chromium та Firefox є відкритим програмним забезпеченням, а шлях читання задокументований, стандартний і короткий. Ось де саме знаходяться паролі та як вони витягуються.

Chrome (і кожен браузер на базі Chromium)

Chrome зберігає логіни в базі даних SQLite — Login Data, таблиця logins, стовпець password_value — зашифровані за допомогою AES-256-GCM. Ключ AES знаходиться в Local State, "захищений" ОС: DPAPI на Windows, Keychain на macOS, gnome-keyring/kwallet (або у відкритому вигляді) на Linux.

Прочитайте самі — код відкритий. Шукайте в Chromium константу, яка позначає загорнутий ключ: kDPAPIKeyPrefix у os_crypt. Ключ загорнутий DPAPI, позначений і збережений — потім розгорнутий одним викликом, який нічого не захищає від Вас:

const char kDPAPIKeyPrefix[] = "DPAPI";

CryptUnprotectData(&intermediate, /*ppszDataDescr=*/nullptr,
                   /*pOptionalEntropy=*/nullptr, nullptr, nullptr, 0, &output);

Немає другого секрету, пароля, запиту. CryptUnprotectData повертає ключ будь-якому процесу, що працює у Вашій сесії — що точно відповідає моделі загроз, описаній DPAPI: якщо він працює під Вашим обліковим записом, то це Ви. Уся робота зловмисника полягає в трьох рядках: прочитати ключ з Local State, розгорнути його, розшифрувати AES-GCM кожен рядок у Login Data. Шкідливе програмне забезпечення типу "інфостилер" робить це роками.

"Шифрування на пристрої" також не рятує

Відповідь Google — це 6-значний PIN-код, який шифрує Ваше синхронізоване сховище. У травні 2026 року дослідники з Phishu показали, наскільки це ненадійно. Переконливий підроблений вхід до Google — фішинг "зловмисник посередині" — захоплює сесію та цей PIN-код, а PIN-код є головним ключем до кожного пароля та ключа доступу в синхронізованому обліковому записі. З ним зловмисник додає свій пристрій до Вашого "домену безпеки" Google, і все сховище синхронізується безпосередньо до нього — повне захоплення за один крок.

Недолік дизайну: Google дозволяє пристрою приєднатися лише за 6-значним PIN-кодом, без підтвердження з пристрою, який Ви вже маєте.

Firefox

Firefox зберігає логіни в logins.json, а ключ — у key4.db, розшифрований "Секретним декодувальним кільцем" NSS — також відкритим програмним забезпеченням: security/nss/lib/pk11wrap/pk11sdr.c. Якщо Ви встановили Основний пароль, ключ запечатується ним.

За замовчуванням Ви цього не зробили — тому ключ запечатується порожнім рядком, а збережене значення "password-check" підтверджує, що порожній пароль його розшифровує. Скопіюйте два файли з Вашого профілю (key4.db + logins.json), вкажіть на них NSS або відкритий firepwd.py, і вони розшифруються. Замок, ключ від якого приклеєний до дверей, не є замком.

The common thread

Кожне сховище паролів браузера має однакову структуру: секрет зберігається там, де Ви працюєте, розблокований сесією, в якій Ви вже перебуваєте. Шифрування, яке може скасувати решта Вашого комп'ютера, не захищає Вас від загрози, яка фактично спустошує облікові записи — коду, що працює під Вашим обліковим записом.

Чому Clavitor неможливо прочитати таким чином

Clavitor не зберігає Ваше сховище на машині. Немає Login Data, key4.db, ключа в Local State — нічого на диску, що процес, який працює під Вашим обліковим записом, міг би витягти.

Ключ розшифрування не запечатується Вашим входом до ОС. Він виводиться з апаратного дотику — Touch ID, Face ID або YubiKey — обчислюється в браузері, використовується для одного запиту, а потім відкидається. Облікові дані отримуються через обмежений API саме тоді, коли Ви їх запитуєте, і ніколи не кешуються. Шкідливе програмне забезпечення, що працює під Вашим обліковим записом, знаходить порожню шафу.

Це різниця між "зашифровано на Вашому пристрої" та "взагалі не на Вашому пристрої".

Припиніть довіряти браузеру свої паролі.

Розширення Clavitor заповнює поля так само, як Ваш браузер — і зберігає сховище там, де Ваш ноутбук не може його прочитати.