
مجموعة أدوات لفك تشفير وفحص وتعديل أحجام البرامج الثابتة UEFI ومخازن المتغيرات. تدعم تسجيل شهادات التمهيد الآمن، تحليل توقيعات الثنائيات PE، وإدارة متغيرات EFI للبيئات الافتراضية.
هذه مجموعة صغيرة من الأدوات لصور البرامج الثابتة edk2. تدعم فك تشفير وطباعة محتوى حجوم البرامج الثابتة. يمكن تعديل مخازن المتغيرات (OVMF_VARS.fd)، على سبيل المثال لتسجيل شهادات الإقلاع الآمن.
يفك تشفير ويطبع محتوى حجوم البرامج الثابتة.
الاستخدام: virt-fw-dump -i <file>.
جرّب virt-fw-dump --help لمزيد من المعلومات، هناك بعض الخيارات لتصفية المخرجات.
طباعة وتحرير حجوم مخازن المتغيرات. تركز حالياً على تسجيل الشهادات وتمكين الإقلاع الآمن.
طباعة المتغيرات: virt-fw-vars -i <file> --print.
تسجيل الشهادات:
virt-fw-vars \
--input <template> \
--output <vars> \
--enroll-redhat \
--secure-boot
جرّب virt-fw-vars --help لمزيد من معلومات الاستخدام.
يمكن لـ virt-fw-vars التعامل مع مخازن متغيرات edk2 (وهي حجوم برامج ثابتة فلاش) ومخازن متغيرات AWS uefi. يتم اكتشاف تنسيق الإدخال تلقائياً ويستخدم نفس التنسيق للإخراج.
يتطلب العمل مع مخازن متغيرات edk2 حجماً من البرامج الثابتة كإدخال. عادةً ما يتم استخدام ملف OVMF_VARS.fd الذي يتم إنشاؤه عند بناء OVMF لذلك (وهو مخزن متغيرات فارغ).
يمكن أيضاً إنشاء مخازن متغيرات AWS من الصفر وكتابتها إلى ملف باستخدام الخيار --output-aws.
طباعة وتحرير ملفات قاعدة بيانات التوقيعات efi، مثال:
virt-fw-sigdb -i /etc/pki/ca-trust/extracted/edk2/cacerts.bin --print
جرّب virt-fw-sigdb --help لمزيد من معلومات الاستخدام.
قراءة متغيرات efi من نظام efivarfs في لينكس وفك تشفيرها/طباعتها.
إدارة تكوين الإقلاع efi لصور النواة الموحدة (UKIs) عند استخدام الإقلاع المباشر (بدون محمل إقلاع مثل grub أو systemd-boot).
تفريغ معلومات للملفات الثنائية pe (التنسيق المستخدم بواسطة efi).
عرض التوقيعات وسلسلة الشهادات للملفات الثنائية pe. يمكن أيضاً استخراج الشهادات والتوقيعات.
لا يوجد الكثير من التوثيق بعد، آسف. أفضل قراءات للكود للبدء هي على الأرجح حالات الاختبار (انظر tests/tests.py) وكود أداة virt-fw-vars (انظر virt/firmware/vars.py).
الإصدار: pip3 install virt-firmware
لقطة: pip3 install git+https://gitlab.com/kraxel/virt-firmware.git
أقبل طلبات الدمج (MRs).
يوجد بوت مراجعة ذكاء اصطناعي نشط على المستودع والذي سيعلق على طلبات الدمج (MRs). إنه جيد في التدقيق الإملائي. أحياناً يقدم اقتراحات مفيدة أو يكتشف تناقضات في التصحيحات. أحياناً يطلب أشياء سخيفة مثل التحقق الدقيق من الأخطاء في حالات الاختبار. وأحياناً يقترح التحقق من شروط خطأ لا يمكن أن تحدث، ولكن البوت ليس ذكياً بما يكفي لرؤية ذلك. وأحياناً يقترح إعادة تنظيم الكود حيث يكون الأمر مسألة ذوق أو تفضيل شخصي عندما تختار طريقة أو أخرى.
لذا، لا تأخذ البوت على محمل الجد.