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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
GoTEE — Go بيئة التنفيذ الموثوقة (TEE) | Kitploit
أدوات/GitHubGitHub/usbarmory/gotee
أمان الأنظمة المدمجةالمحاكاة الافتراضية للأمانأمن الأجهزة
GitHubusbarmory/gotee

GoTEE

Go بيئة التنفيذ الموثوقة (TEE)

عرض المستودع
1521323منذ 3 أشهرتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

مقدمة

يُنفذ إطار عمل GoTEE إنشاءًا متزامنًا لأنوية يونيكيرنل المستندة إلى TamaGo في الوضعين المميّز وغير المميّز، حيث تتفاعل مع بعضها البعض من خلال وضع المراقب واستدعاءات النظام المخصصة.

وبهذه الإمكانيات، يُنفذ GoTEE بيئات تنفيذ موثوقة (TEE) قائمة على TamaGo، مما يجلب أمان ذاكرة Go وسهولتها وقدراتها إلى التنفيذ على المعدن العاري داخل العالم الآمن ARM TrustZone أو بيئات تنفيذ المشرف في RISC-V.

يمكن لـ GoTEE الإشراف على التطبيقات الموثوقة القائمة بذاتها المكتوبة بلغة Go أو Rust أو C، التي تُنفذ واجهة برمجة GoTEE، بالإضافة إلى أي نظام تشغيل قادر على العمل في العالم الطبيعي ARM TrustZone أو وضع S في RISC-V مثل Linux.

الميزات

  • سياقات تنفيذ معزولة لوضع مستخدم ARM، أو العالم الطبيعي TrustZone أو وضع المشرف في RISC-V

  • تنفيذ متزامن ناعم انتهازي لاكتشاف الأخطاء

  • واجهة برمجة لتطبيق نظام التشغيل الموثوق (معالجات Syscall وJSON-RPC والاستثناءات)

التوثيق

Go Reference

يمكن العثور على التوثيق الرئيسي، الذي يتضمن برنامجًا تعليميًا، على الويكي الخاص بالمشروع.

يمكن العثور على توثيق واجهة برمجة الحزمة على pkg.go.dev.

الأجهزة المدعومة

يلخص الجدول التالي أنواع SoC واللوحات المدعومة حاليًا.

SoCاللوحةحزمة SoCحزمة اللوحة
NXP i.MX6ULZUSB armory Mk IIimx6ulusbarmory/mk2
NXP i.MX6ULLMCIMX6ULL-EVKimx6ulmx6ullevk
SiFive FU540QEMU sifive_ufu540qemu/sifive_u

مثال تطبيقي

في مصطلحات TEE، يُشار عادةً إلى اليونيكيرنل المميّز باسم نظام التشغيل الموثوق، بينما يمثل غير المميّز تطبيقًا موثوقًا.

يُوضح مثال الخاص بـ GoTEE التشغيل المتزامن لأنوية Go يونيكيرنل التي تعمل كنظام تشغيل موثوق، وتطبيق موثوق، ونظام تشغيل رئيسي.

[!WARNING] يمكن أن يكون نظام التشغيل الرئيسي أي نظام تشغيل "غني" (مثل Linux)، ويُستخدم TamaGo ببساطة من أجل مثال مكتفٍ بذاته. وينطبق الأمر نفسه على التطبيق الموثوق الذي يمكن أن يكون أي تطبيق معدني عارٍ قادر على العمل في وضع المستخدم و تنفيذ واجهة برمجة GoTEE، مثل برامج C أو Rust القائمة بذاتها.

يمكن استخدام مثال بلغة Rust باستبدال trusted_applet_go بـ trusted_applet_rust عند البناء.

يقوم مزيج نظام التشغيل/التطبيق الموثوق المثال بإجراء اختبار أساسي للتنفيذ المتزامن لثلاثة أنوية يونيكيرنل TamaGo على مستويات امتياز مختلفة:

  • نظام التشغيل الموثوق (ARM: وضع نظام العالم الآمن TZ، RISC-V: وضع M)
  • التطبيق الموثوق (ARM: وضع مستخدم العالم الآمن TZ، RISC-V: وضع S)
  • نظام التشغيل الرئيسي (ARM: وضع نظام العالم الطبيعي TZ، RISC-V: وضع S)

يُعيد نظام التشغيل الرئيسي التحكم عبر استدعاء مراقب.

ينام التطبيق الموثوق لمدة 5 ثوانٍ قبل محاولة قراءة ذاكرة نظام التشغيل الموثوق، مما يؤدي إلى استثناء يعالجه المشرف ويُنهي التطبيق الموثوق.

يتم تنفيذ واجهة استدعاء النظام الخاصة بـ GoTEE للاتصال بين نظام التشغيل الموثوق والتطبيق الموثوق.

عند تشغيله على USB armory Mk II، يمكن الوصول إلى التطبيق المثال عبر SSH من خلال Ethernet عبر USB (بروتوكول ECM، مدعوم على مضيفي Linux وmacOS):

$ ssh [email protected]
tamago/arm • TEE security monitor (Secure World system/monitor)

allgptr                                          # memory forensics of applet goroutines
csl                                              # show config security levels (CSL)
csl             <periph> <slave> <hex csl>       # set config security level (CSL)
dbg                                              # show ARM debug permissions
exit, quit                                       # close session
gotee                                            # TrustZone example w/ TamaGo unikernels
help                                             # this help
linux           <uSD|eMMC>                       # boot NonSecure USB armory Debian base image
lockstep        <fault %>                        # tandem applet example w/ fault injection
peek            <hex offset> <size>              # memory display (use with caution)
poke            <hex offset> <hex value>         # memory write   (use with caution)
reboot                                           # reset device
sa                                               # show security access (SA)
sa              <id> <secure|nonsecure>          # set security access (SA)
stack                                            # stack trace of current goroutine
stackall                                         # stack trace of all goroutines

>

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

بالإضافة إلى ذلك، يمكن استخدام الأمر linux لتوليد صورة Debian الأساسية لـ USB armory كنظام تشغيل رئيسي غير آمن.

[!NOTE] الإصدارات >= 20211129 فقط من صورة Debian الأساسية لـ USB armory مدعومة للتشغيل غير الآمن.

gotee

يمكن أيضًا تنفيذ المثال تحت محاكاة QEMU.

[!NOTE] عمليات التنفيذ المُحاكاة تُجري اختبارات جزئية بسبب عدم وجود دعم كامل لـ TrustZone/PMP في QEMU.

تنزيل الأداة