Shufflecake ، أداة لإنشاء مجلدات مخفية

شوفليك

Shufflecake هي أداة لنظام التشغيل Linux تسمح بإنشاء مجلدات مخفية متعددة على جهاز تخزين بطريقة تجعل من الصعب للغاية ، حتى تحت الفحص الجنائي ، إثبات وجود مثل هذه المجلدات.

أصدرت شركة التدقيق الأمني ​​"كوديلسكي سيكيوريتي" مجموعة أدوات "شافل كيك "، التي تتيح إنشاء أنظمة ملفات مخفية موزعة على المساحة الحرة المتاحة في الأقسام الموجودة، بحيث لا يمكن تمييزها عن البيانات المتبقية العشوائية. تُنشأ هذه الأقسام بطريقة تجعل إثبات وجودها صعبًا، حتى أثناء التحليل الجنائي الرقمي، دون معرفة مفتاح الوصول.

يقدم المشروع نفسه كحل أكثر تقدماً من Truecrypt و Veracrypt لإخفاء البيانات السرية، حيث يوفر دعماً أصلياً لمنصة Linux ويسمح لك بوضع ما يصل إلى 15 قسماً مخفياً على الجهاز، متداخلة مع بعضها البعض لإخفاء تحليل وجودها.

يمكن تهيئة الأقسام المخفية التي يتم إنشاؤها ، حسب رغبة المستخدم، لتناسب أي نظام ملفات، مثل ext4 أو xfs أو btrfs. يُعامل كل قسم كوحدة تخزين افتراضية مستقلة بمفتاح فتح خاص به.

لإخفاء الآثار، يُقترح نموذج سلوكي يُعرف بـ"الإنكار المعقول". يقوم هذا النموذج أساسًا على إخفاء البيانات القيّمة كطبقات إضافية داخل أقسام مشفرة تحتوي على بيانات أقل قيمة، مما يُشكل نوعًا من التسلسل الهرمي الخفي للأقسام. تحت الضغط، يستطيع مالك الجهاز الكشف عن مفتاح القسم المشفر، ولكن يمكن إخفاء أقسام أخرى (تصل إلى 15 مستوى متداخل) داخله، مما يجعل من الصعب تحديد وجودها وإثباته.

تم اختبار برنامج Shufflecake ووحدة النواة فقط على نظامي Debian وUbuntu بنواة 5.13 و5.15 (يدعم Ubuntu 22.04). تجدر الإشارة إلى أن المشروع لا يزال نموذجًا أوليًا قيد التطوير، ولا يُنصح باستخدامه لتخزين البيانات الحساسة.

في المستقبل ، نخطط لإجراء تحسينات إضافية للأداء والموثوقية والأمان ، بالإضافة إلى توفير القدرة على التمهيد من أقسام Shufflecake.

حول شوفليكيك

يتم تحقيق الإخفاء بتشكيل كل قسم كمجموعة من المقاطع المشفرة الموضوعة في مواقع عشوائية على جهاز التخزين. ويتم إنشاء كل مقطع ديناميكيًا عندما يحتاج القسم إلى مساحة تخزين إضافية. ولزيادة تعقيد التحليل، يتم دمج شرائح من أقسام مختلفة.

أقسام Shufflecake غير مرتبطة بمناطق متجاورة ، ويتم خلط الأجزاء من جميع الأقسام معًا. يتم تخزين المعلومات حول الأجزاء المستخدمة والمجانية في خريطة الموقع المرفقة بكل قسم ، والتي تتم الإشارة إليها بواسطة الرأس المشفر. يتم تشفير البطاقات والعنوان ولا يمكن تمييزها عن البيانات العشوائية دون معرفة مفتاح المرور.

ينقسم رأس الملف إلى خانات ، تُعرّف كل منها قسمًا خاصًا بها وقطاعات مرتبطة به. تتراص الخانات في رأس الملف وترتبط بشكل متكرر: تحتوي الخانة الحالية على مفتاح فك تشفير معلمات القسم السابق (الأقل إخفاءً) في التسلسل الهرمي، مما يسمح بكلمة مرور واحدة لفك تشفير جميع الأقسام الأقل إخفاءً المرتبطة بالعنصر المحدد. يتعامل كل قسم أقل إخفاءً مع أجزاء من الأقسام المتداخلة على أنها حرة.

افتراضيًا، يكون لجميع أقسام Shufflecake المتداخلة نفس الحجم المرئي للقسم الرئيسي. على سبيل المثال، إذا تم استخدام ثلاثة أقسام على جهاز بسعة 1 جيجابايت، فسيظهر كل قسم للنظام كقسم بسعة 1 جيجابايت، وسيتم توزيع إجمالي مساحة القرص المتاحة بين جميع الأقسام. إذا تجاوز إجمالي البيانات المخزنة حجم الجهاز الفعلي، فستبدأ أخطاء الإدخال/الإخراج بالظهور.

لا تُشارك الأقسام المتداخلة غير المفتوحة في تخصيص المساحة؛ أي أن محاولة ملء قسم ذي مستوى أعلى ستستبدل البيانات الموجودة في الأقسام المتداخلة، لكنها لن تكشف عن وجودها من خلال تحليل حجم البيانات التي يمكن وضعها في القسم قبل حدوث خطأ (يُفترض أن الأقسام ذات المستوى الأعلى تحتوي على بيانات غير قابلة للتغيير). لا تُستخدم البيانات عشوائيًا ولا بشكل منفصل أبدًا، ويتم دائمًا تنفيذ العمل المنتظم باستخدام أحدث قسم متداخل؛ ويشير المخطط نفسه إلى أن الأهم هو الحفاظ على سرية وجود البيانات، حتى لو كان ذلك على حساب فقدانها.

يُقدّم تطبيق Shufflecake أداءً عاليًا نسبيًا، لكن نظرًا لتكاليف التشغيل الإضافية، فإن أداءه يُعادل نصف أداء تشفير القرص القائم على نظام LUKS الفرعي. كما يُؤدي استخدام Shufflecake إلى تكاليف إضافية في ذاكرة الوصول العشوائي (RAM) ومساحة القرص لتخزين بيانات الخدمة. تُقدّر تكاليف الذاكرة بـ 60 ميجابايت لكل قسم ، ويُقدّر استخدام مساحة القرص بـ 1% من إجمالي حجم القسم. في المقابل، تُؤدي تقنية WORAM، ذات الغرض المماثل، إلى تباطؤ يتراوح بين 5 و200 ضعف مع فقدان 75% من مساحة القرص القابلة للاستخدام.

تمت كتابة رمز الأدوات المساعدة (shufflecake-userland) ووحدة Linux kernel (dm-sflc) بلغة C وتم إصدارها بموجب ترخيص GPLv3 ، مما يجعل من المستحيل تضمين وحدة kernel المنشورة في نواة Linux الرئيسية. بموجب ترخيص GPLv2 الذي يتم شحن النواة بموجبه.

إذا كنت مهتمًا بمعرفة المزيد، يمكنك العثور على التفاصيل في الرابط التالي.


أضف كمصدر مفضل في جوجل