
أداة استطلاع لمنظمات GitHub
Gitrob هي أداة تساعد في العثور على الملفات الحساسة المحتملة التي تم دفعها إلى المستودعات العامة على Github. سيقوم Gitrob باستنساخ المستودعات التابعة لمستخدم أو منظمة إلى عمق قابل للتكوين ويتنقل عبر تاريخ الالتزامات ويحدد الملفات التي تطابق توقيعات الملفات الحساسة المحتملة. سيتم عرض النتائج من خلال واجهة ويب لسهولة التصفح والتحليل.
gitrob [options] target [target2] ... [targetN]
-bind-address string
العنوان لربط خادم الويب به (الافتراضي "127.0.0.1")
-commit-depth int
عدد التزامات المستودع المطلوب معالجتها (الافتراضي 500)
-debug
طباعة معلومات التصحيح
-github-access-token string
رمز الوصول إلى GitHub لاستخدامه في طلبات API
-load string
تحميل ملف الجلسة
-no-expand-orgs
لا تقم بإضافة الأعضاء إلى الأهداف عند معالجة المنظمات
-port int
المنفذ لتشغيل خادم الويب عليه (الافتراضي 9393)
-save string
حفظ الجلسة في ملف
-silent
كتم جميع المخرجات باستثناء الأخطاء
-threads int
عدد الخيوط المتزامنة (الافتراضي عدد وحدات المعالجة المنطقية)
بشكل افتراضي، يخزن gitrob حالته للتقييم في الذاكرة. هذا يعني أن نتائج التقييم تُفقد عند إغلاق Gitrob. يمكنك حفظ الجلسة في ملف باستخدام الخيار -save:
gitrob -save ~/gitrob-session.json acmecorp
سيحفظ Gitrob جميع المعلومات التي تم جمعها إلى مسار الملف المحدد كمستند JSON خاص. يمكن تحميل الملف مرة أخرى للتصفح في وقت آخر، أو مشاركته مع محللين آخرين، أو تحليله للتكامل المخصص مع أدوات وأنظمة أخرى.
يمكن تحميل جلسة مخزنة في ملف باستخدام الخيار -load:
gitrob -load ~/gitrob-session.json
سيبدأ Gitrob واجهته على الويب ويقدم النتائج للتحليل.
يتوفر إصدار مُجمَّع مسبقًا لكل إصدار، وبدلاً من ذلك يمكنك استخدام أحدث إصدار من الكود المصدري من هذا المستودع لبناء ثنائيك الخاص.
تأكد من أن لديك بيئة Go >= 1.8 مُهيأة بشكل صحيح وأن $GOPATH/bin موجود في $PATH الخاص بك.
$ go get github.com/michenriksen/gitrob
سيقوم هذا الأمر بتنزيل gitrob، وتثبيت تبعياته، وترجمته، ونقل الملف القابل للتنفيذ gitrob إلى $GOPATH/bin.
سيحتاج Gitrob إلى رمز وصول إلى Github للتفاعل مع واجهة برمجة تطبيقات Github. أنشئ رمز وصول شخصي واحفظه في متغير بيئة في ملف .bashrc الخاص بك أو ملف تكوين شل مشابه:
export GITROB_ACCESS_TOKEN=deadbeefdeadbeefdeadbeefdeadbeefdeadbeef
بدلاً من ذلك، يمكنك تحديد رمز الوصول باستخدام الخيار -github-access-token، لكن احذر من سجل أوامرك!