Опубліковано ФС Oramfs, що приховує характер доступу до даних

Компанія Kudelski Security, що спеціалізується на проведенні аудиту безпеки, опублікувала файлову систему Oramfs з реалізацією технології ORAM (Oblivious Random Access Machine), що маскує характер доступу до даних (data access pattern). Проектом запропоновано FUSE-модуль для Linux з реалізацією шару ФС, що не дозволяє відстежити структуру операцій запису та читання. Код Oramfs написаний мовою Rust та поширюється під ліцензій GPLv3.

Технологія ORAM має на увазі створення ще одного шару крім шифрування, що не дозволяє визначити характер поточної активності при роботі з даними. Наприклад, у разі застосування шифрування при зберіганні даних у сторонньому сервісі, власники даного сервісу не можуть дізнатися самі дані, але можуть визначити, до яких блоків здійснюється звернення та які виконуються операції. ORAM приховує інформацію про те, до яких частин ФС здійснюється доступ і яка саме операція виконується (читання чи запис).

Oramfs надає універсальну файлову систему-прошарку, що дозволяє спростити організацію зберігання даних на будь-яких зовнішніх сховищах. Дані зберігаються у зашифрованому вигляді з опціональною можливістю автентифікації. Для шифрування можуть використовуватися алгоритми ChaCha8, AES-CTR та AES-GCM. Закономірності при доступі на запис та читання ховаються з використанням схеми Path ORAM. У майбутньому намічено реалізацію та інших схем, але в поточному вигляді розробка поки що знаходиться на стадії прототипу, який не рекомендується використовувати в робочих системах.

Oramfs може використовуватися з будь-якими ФС і не залежить від типу цільового зовнішнього сховища – можлива синхронізація файлів у будь-який сервіс, який можна примонтувати у формі локального каталогу (SSH, FTP, Google Drive, Amazon S3, Dropbox, Google Cloud Storage, Mail.ru Cloud , Яндекс.Диск та інші сервіси, що підтримуються в rclone або для яких є FUSE-модулі для монтування). Розмір сховища не фіксований і за потреби додаткового простору розмір ORAM може динамічно збільшуватися.

Налаштування Oramfs зводиться до визначення двох каталогів - публічного та приватного, які виконують роль сервера та клієнта. Публічний каталог може бути будь-якою директорією в локальній ФС, яка пов'язана із зовнішніми сховищами шляхом їх монтування через SSHFS, FTPFS, Rclone та будь-які інші FUSE-модулі. Приватний каталог надається FUSE-модулем Oramfs і призначений для безпосередньої роботи з файлами, що зберігаються в ORAM. У громадському каталозі розміщується файл з образом ORAM. Будь-яка операція з приватним каталогам відображається на стані цього файлу-образу, але цей файл виглядає для зовнішнього спостерігача як чорна скринька, зміни в якій неможливо асоціювати з активністю в приватному каталозі, у тому числі не можна визначити виконану операцію запису або читання.

Oramfs може застосовуватися в областях, у яких необхідно досягти найвищого рівня конфіденційності та можна пожертвувати продуктивністю. Продуктивність знижується оскільки кожна операція зі сховищем, зокрема операції читання даних, призводять до перебудови блоків у вигляді ФС. Наприклад, читання файлу розміром 10МБ займає близько 1 секунди, а 25МБ – 3 сек. Запис 10 МБ займає 15 секунд, а 25МБ - 50 секунд. При цьому Oramfs приблизно в 9 разів швидше при читанні і в 2 рази швидше при записі в порівнянні з файловою системою UtahFS, що розвивається компанією Cloudflare та опціонально підтримує ORAM.

Джерело: opennet.ru

Додати коментар або відгук