Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
attestos — Bazzite مع طبقة إثبات تمهيد تعتمد على TPM. عمل قيد التطوير: البنيات غير مُتحقَّق منها، وآلية UKI غير مُحلَّة. المواصفات: github.com/plunder707/attested-gaming | Kitploit
أدوات/GitHubGitHub/plunder707/attestos
أدوات دفاعيةالتشفيرأمن الأجهزةالمصادقةتحليل البرامج الثابتة
GitHubplunder707/attestos

attestos

Bazzite مع طبقة إثبات تمهيد تعتمد على TPM. عمل قيد التطوير: البنيات غير مُتحقَّق منها، وآلية UKI غير مُحلَّة. المواصفات: github.com/plunder707/attested-gaming

عرض المستودع
119منذ شهر واحدلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

attestos

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

الآلية، ونموذج التهديد، ومواصفات البائع موجودة في plunder707/attested-gaming. هذا المستودع هو الصورة التي تُنتج الأدلة.


الحالة: معاينة آليات المصدر. غير قابلة للتثبيت ولا موثوقة للإنتاج.

تشغيلات GitHub Actions 31157890393 و31159951490 بنت صورة QCOW2 مشتقة من Bazzite، وأقلعتها تحت QEMU/OVMF مع swtpm وبدون شبكة للضيف، وجهّزت مقابض EK/AK دائمة، وتحققت من اقتباس خام عبر PCRs 7 و11 و12 و15 بنظام SHA-256 من داخل الضيف. إيصالها المحدود له SHA-256 ad5ef12592cb5f4d1dfa8f0da88148931d48f0e6018924b2de4c766e1523ddaf. سير عمل منفصل للمدقق 31160003873 اختبر التزام الوكيل النهائي b918392 في هذا المستودع ضد TPM برمجي معزول واجتاز تسجيل AK، والتحقق من الاقتباس الخام، ورفض إعادة التشغيل، ورفض العبث بالتوقيع، وتوصيل QEMU/OVMF بـTPM.

تؤكد النتيجة المُقلَعة أيضًا حاجز سياسة Bazzite: لا يوجد ملف UKI أو إشارة systemd-stub، وسيطات lockdown المقصودة غائبة، وبقي PCR 11 وPCR 15 صفرًا. كان PCR 12 أيضًا صفرًا، لكن ذلك ليس فشلًا مستقلًا: سطر أوامر UKI المضمّن ينتمي إلى PCR 11، بينما يسجّل PCR 12 مدخلات سطر الأوامر الخارجية وقد يبقى صفرًا بشكل صحيح عندما لا تُقدَّم أي منها. تسجيل مفاتيح Secure Boot، وقياس سطر الأوامر عبر UKI، وإثبات مصدر العتاد، وإعادة تشغيل سجل الأحداث، وربط النقل، وقبول سياسة الإقلاع تبقى جميعها غير محلولة. لا يُنشئ أيٌّ من التشغيلين الأخضرين نظام مصادقة إنتاجيًا فعّالًا.

اجتاز ضابط إيجابي منفصل لصورة فيدورا مختومة مرتين في تشغيل 31218059725 ومرة أخرى على رأس المصدر المدمج في تشغيل 31219745053. يُثبت أن المنصة يمكنها إقلاع UKI ثابتة موقّعة من المنبع، وضمّ المسار المحدد من البرنامج الثابت وتجزئة الملف المحمّل إلى فحص ما قبل الإقلاع، وملاحظة قيمة PCR 11 غير صفرية، ورفض تعديل غير موقّع على .cmdline. هذا ضابط للمنصة فقط: جميع أعلام الثقة الخاصة بالشركة المصنعة والسياسة والإنتاج تبقى خاطئة، ولا يجعل معاينة Bazzite قابلة للتثبيت.

اجتاز مسار الوظيفة الإضافية لسياسة PCR 12 الموقّعة بشكل منفصل مرتين على تشغيل 31234464516. بقيت UKI من المنبع وPCR 11 متطابقين بايتًا ببايت؛ طبّق كلا الإقلاعين الموقّعين lockdown=confidentiality module.sig_enforce=1 مرة واحدة بالضبط وأعادا إنتاج PCR 12 ca62dd5f...a8f5؛ رُفض العبث بعد التوقيع والعودة إلى خط الأساس حيث PCR 12 صفر. هذا يُثبت آلية محدودة، وليس تسلسل مفاتيح قابلًا للنشر أو سياسة ثقة لنظام التشغيل.

هذا المصدر متاح للمراجعة والمحاكاة القابلة لإعادة الإنتاج. لا توجد صورة GHCR منشورة، وهو ليس توزيعة موثوقة قابلة للتثبيت.

تجربة Bazzite المكتملة موصوفة في BOOTED_IMAGE_CANARY.md. تعليمات إعادة الإنتاج وبناء المصدر موجودة في BUILDING.md. أدلة أساس UKI ومعايير قبولها المستقلة موثقة في UKI_BASE_DECISION.md. تجربة الوظيفة الإضافية لسياسة PCR 12 الموقّعة موصوفة بشكل منفصل في FEDORA_PCR12_ADDON_CANARY.md. ترتيب المراحل وقواعد التوقف متتبَّعة في ROADMAP.md. ضابط المنصة المستقل لـUKI المحمّلة موصوف في FEDORA_SEALED_POSITIVE_CONTROL.md.


ما الذي يضيفه هذا إلى Bazzite

لا يُزال شيء ولا يُرقَّع شيء. تُضاف أربعة أشياء فوق القاعدة:

  1. tpm2-tools وtpm2-tss، والتي يحتاجها الوكيل وقت التشغيل.
  2. سطر نواة في /usr/lib/attestos/cmdline يحمل lockdown=confidentiality وmodule.sig_enforce=1.
  3. attestos-provision، وحدة لمرة واحدة تنشئ هويتي RSA EK وAK دائمتَين منفصلتين داخل TPM وتقرأ شهادة الإقرار من تخزين NV عند وجود واحدة.
  4. attestos-agent، مُفعَّل عبر مقبس على loopback، ويستجيب لتحدي هوية أو تفعيل أو اقتباس صارم بصيغة attestos.tpm/v1 بأدلة TPM خام. الوكيل لا يُرجع حكم ثقة أبدًا.

لماذا القاعدة هي Bazzite

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

Bazzite مصممة أيضًا لتُضاف إليها طبقات. إنها صورة OCI، لذا هذا المستودع هو Containerfile وإجراء GitHub Action بدلًا من توزيعة تمتلك مرايا ومثبّتات خلفها.

يجب توثيق السياسة وقياسها قبل النواة

هذا هو الجزء الذي يقرر ما إذا كان لأي من هذا معنى. يحظر lockdown=confidentiality الوصول إلى /dev/mem، وkprobes ضد نواة قيد التشغيل، وتحميل الوحدات غير الموقّعة. تلك الضمانة لا تساوي شيئًا إذا كانت السياسة موجودة فقط في إعداد محمّل إقلاع يمكن للمستخدم تعديله. وإلا يمكن للمستخدم حذف الوسائط، وإقلاع نفس قياس النواة، وتقديم اقتباس لا يقول شيئًا عن السياسة المفقودة.

صورة النواة الموحّدة (UKI) تربط النواة وinitrd وسطر أوامرها المضمّن في ملف PE ثنائي واحد موقّع يُقاس في PCR 11. يمكن لوظيفة إضافية لسطر أوامر systemd موقّعة بشكل منفصل أن توسّع سياسة إضافية إلى PCR 12 مع إبقاء UKI من المنبع دون تغيير. يجب ربط أي من المسارين بالقطعة المحمَّلة بالضبط وإعادة تشغيله من قبل المدقق؛ وجود ملف أو PCR غير صفري لا يكفي.

Bazzite لا تستخدم UKI، وهذا مؤكَّد الآن بدلًا من كونه مجرد تخمين. يستبعد Containerfile تابعها حزم نواة UKI بنشاط:

dnf5 -y config-manager setopt "*fedora*".exclude="mesa-* kernel-core-* \
    kernel-modules-* kernel-uki-virt-* steam"

لا يظهر systemd-ukify في أي مكان في المستودع. لذا فإن ملف cmdline الذي تحمله هذه الصورة هو حاليًا إعلان نية لا أكثر: دون UKI لا يوجد ما يختمه، ويمكن للمستخدم تعديله في محمّل الإقلاع، وPCR 11 لا يقيس ما يفترض التصميم أنه يقيسه.

إصلاح Bazzite ليس سطرًا في build.sh. يتطلب مسار قياس موثوقًا قبل النواة، سواء بتغيير طريقة إقلاع الصورة أو باعتماد قاعدة تُقلِع أصلًا عبر systemd-stub.

تقلّص التجارب الخيارات العملية:

  1. القيام بعمل UKI على Bazzite على أي حال وقبول الانحراف عن القاعدة.
  2. استخدام UKI فيدورا مختومة من المنبع وإضافة سياسة attestos عبر وظيفة systemd إضافية موقّعة بشكل منفصل تُقاس في PCR 12.
  3. إيجاد مسار قياس موثوق آخر قبل النواة. القياس الذي يتم فقط بعد بدء النواة هو فئة أدلة أضعف ويجب ألا يُقدَّم كمكافئ.

مشكلة قبول المفاتيح، غير محلولة

يمكن لـ UKI فيدورا من المنبع الاحتفاظ بتوقيع توزيعتها، لكن الوظيفة الإضافية لسياسة attestos ما تزال بحاجة إلى مفتاح توقيع تقبله البرامج الثابتة أو Shim أو MOK. نواة طرف ثالث لديها النسخة الأكبر من المشكلة نفسها. خيارات النشر هي:

  • تسجيل MOK، حيث يسجّل المستخدم مفتاح مالك الآلة عبر شاشة برنامج ثابت زرقاء عند أول إقلاع. يقوم Universal Blue بهذا بالفعل لوحدات النواة خارج الشجرة، لذا فالآلية موجودة، لكنها تغيّر الادعاء من "مايكروسوفت تضمن هذه النواة" إلى "المستخدم يثق صراحةً بهذا المفتاح"، وعلى البائع أن يقرر ما إذا كان ذلك مقبولًا.
  • Shim موقّع من مايكروسوفت، وهو المسار الذي تسلكه توزيعة حقيقية وهو عملية مراجعة وليس نموذجًا.
  • PK وKEK مملوكان للمستخدم، وهو ما يمنح تحكمًا كاملًا وتبنيًا شبه معدوم.

منصة فيدورا القابلة للاستهلاك تسجّل شهادة محلية خاصة بالتشغيل في UEFI DB منسوخة وتُثبت الآلية دون ادعاء نموذج نشر. ما تزال لا توجد اتفاقية مقبولة لتسجيل مفاتيح المستخدم النهائي أو إبطالها أو استعادتها. هذه مسألة خاصة بالطرف المعتمد بقدر ما هي هندسية.

تثبيته

لا يوجد أمر تثبيت مدعوم بعد. على وجه الخصوص، ghcr.io/plunder707/attestos:latest غير منشورة. المعاينة الحالية مخصصة لمراجعة المصدر وإعادة الإنتاج المعزولة على QEMU/swtpm فقط. انظر BUILDING.md.

البنية

تنزيل الأداة