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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
hashr — يبني مجموعات تجزئة ملفات جنائية من صور الأقراص والحزم والأرشيفات عبر GCP وAWS والمصادر المحلية، مع إزالة التكرار والتصدير إلى PostgreSQL/Spanner لسير عمل DFIR. | Kitploit
أدوات/GitHubGitHub/google/hashr
تحليل الأقراص الجنائيةتحليل التجزئةالتحقيق الجنائي الرقميالتحاليل الرقمية الجنائيةالاستجابة للحوادث
GitHubgoogle/hashr

hashr

يبني مجموعات تجزئة ملفات جنائية من صور الأقراص والحزم والأرشيفات عبر GCP وAWS والمصادر المحلية، مع إزالة التكرار والتصدير إلى PostgreSQL/Spanner لسير عمل DFIR.

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

الأكثر شعبية

عرض الكل →

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

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

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

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

HashR: توليد مجموعة الهاشات الخاصة بك



جدول المحتويات

  • HashR: توليد مجموعة الهاشات الخاصة بك
    • جدول المحتويات
    • نبذة
    • المتطلبات
    • بناء ثنائي HashR وتشغيل الاختبارات
    • إعداد HashR
      • HashR باستخدام docker
      • إعداد نظام التشغيل والأدوات الخارجية المطلوبة
      • إعداد التخزين لمهام المعالجة
        • إعداد تخزين PostgreSQL
        • إعداد Cloud Spanner
      • إعداد المستوردين
        • GCP (منصة جوجل السحابية)
        • AWS
        • GCR (سجل حاويات جوجل)
        • Windows
        • WSUS
        • TarGz
        • Deb
        • RPM
        • Zip (وغيرها من الصيغ المشابهة لـ Zip)
        • ISO 9660
      • إعداد المُصدِّرين
        • إعداد مُصدِّر Postgres
        • إعداد مُصدِّر GCP
      • خيارات إضافية

نبذة

يتيح لك HashR بناء مجموعات الهاش الخاصة بك استنادًا إلى مصادر بياناتك. إنها أداة تستخرج الملفات وقيم الهاش من مصادر الإدخال (مثل صورة قرص خام، صورة قرص GCE، ملف ISO، حزمة تحديث ويندوز، ملف .tar.gz، إلخ).

يتكون HashR من المكوّنات التالية:

  1. المستوردون، المسؤولون عن نسخ المصدر إلى التخزين المحلي وإجراء أي معالجة مسبقة مطلوبة.
  2. النواة، التي تتولى استخراج المحتوى من المصدر باستخدام image_export.py (Plaso)، والتخزين المؤقت، وإزالة التكرار على مستوى المستودع، وتحضير الملفات المستخرجة للمُصدِّرين.
  3. المُصدِّرون، المسؤولون عن تصدير الملفات والبيانات الوصفية والهاشات إلى وجهات البيانات المحددة.

المستوردون المُنفَّذون حاليًا:

  1. GCP، الذي يستخرج الملفات من صور أقراص GCP الأساسية.
  2. Windows، الذي يستخرج الملفات من وسائط تثبيت ويندوز بصيغة ISO-13346.
  3. WSUS، الذي يستخرج الملفات من حزم تحديث ويندوز.
  4. GCR، الذي يستخرج الملفات من صور الحاويات المخزنة في سجل حاويات جوجل.
  5. TarGz، الذي يستخرج الملفات من أرشيفات .tar.gz.
  6. Deb، الذي يستخرج الملفات من حزم برمجيات دبيان.
  7. RPM، الذي يستخرج الملفات من حزم برمجيات RPM.
  8. Zip، الذي يستخرج الملفات من أرشيفات .zip (وما يشبه zip).

بمجرد استخراج الملفات وتجزئتها، تُمرَّر النتائج إلى المُصدِّرين، والمُصدِّرون المُنفَّذون حاليًا هم:

  1. PostgreSQL، الذي يرفع البيانات إلى مثيل PostgreSQL.
  2. Cloud Spanner، الذي يرفع البيانات إلى مثيل GCP Spanner.

يمكنك اختيار المستوردين الذين تريد تشغيلهم، ولكلٍّ منهم متطلبات مختلفة. يمكن العثور على مزيد من التفاصيل في الأقسام أدناه.

المتطلبات

يتطلب HashR نظام تشغيل Linux ليعمل، ويمكن أن يكون جهازًا فعليًا أو افتراضيًا أو سحابيًا. فيما يلي متطلبات الأجهزة المثلى:

  1. 8-16 نواة
  2. ذاكرة 128GB
  3. تخزين محلي سريع 2TB (يُفضَّل استخدام أقراص SSD)

من المرجح أن يعمل HashR على أجهزة بمواصفات أقل، ولكن هذا لم يُختبر بدقة.

بناء ثنائي HashR وتشغيل الاختبارات

لبناء ثنائي hashr، نفّذ الأمر التالي:``` shell env GOOS=linux GOARCH=amd64 go build hashr.go

لتشغيل الاختبارات للحزمة الأساسية hashR، تحتاج إلى تشغيل محاكي Spanner:``` shell
gcloud emulators spanner start

ثم لتشغيل جميع الاختبارات، نفّذ الأمر التالي:``` shell go test -timeout 2m ./...

## إعداد HashR

### HashR في OSDFIR Infrastructure

يمكنك نشر HashR كجزء من [مشروع OSDFIR Infrastructure](https://github.com/google/osdfir-infrastructure/tree/main/charts/hashr)
سيُشغّل هذا النشر HashR كوظائف cronjobs في Kubernetes ويتيح تكاملًا سهلاً
مع Timesketch.

### HashR باستخدام docker

لتشغيل HashR في حاوية docker، اطلع على [الدليل المخصص لـ docker](https://github.com/google/hashr/blob/main/docker/README.md)

### إعداد نظام التشغيل والأدوات المطلوبة من طرف ثالث

يتولى HashR المهام الشاقة (تحليل صور الأقراص، وحدات التخزين، أنظمة الملفات) باستخدام Plaso. تحتاج إلى سحب حاوية Docker الخاصة بـ Plaso باستخدام الأمر التالي:``` shell
docker pull log2timeline/plaso

نحتاج أيضًا إلى تثبيت 7z، الذي يستخدمه مستورد WSUS للاستخراج التكراري لحزم تحديثات Windows، على الجهاز الذي يعمل عليه HashR:``` shell sudo apt install p7zip-full

تحتاج إلى السماح للمستخدم، الذي سيتم تشغيل HashR بموجبه، بتشغيل أوامر معينة عبر sudo. بافتراض أن المستخدم الخاص بك هو `hashr`، أنشئ ملف `/etc/sudoers.d/hashr` وضع فيه:``` shell
hashr ALL = (root) NOPASSWD: /bin/mount,/bin/umount,/sbin/losetup,/bin/rm

المستخدم الذي سيعمل تحته HashR سيحتاج أيضًا إلى القدرة على تشغيل docker. بافتراض أن المستخدم الخاص بك هو hashr، أضفه إلى مجموعة docker كما يلي:``` shell sudo usermod -aG docker hashr

### إعداد التخزين لمهام المعالجة

يحتاج HashR إلى تخزين معلومات حول المصادر المعالجة. كما يخزن بيانات قياس إضافية حول مهام المعالجة: أوقات المعالجة، عدد الملفات المستخرجة، وما إلى ذلك. يمكنك الاختيار بين استخدام:

1. PostgreSQL
1. Cloud (GCP) Spanner

#### إعداد تخزين PostgreSQL

هناك طرق عديدة يمكنك من خلالها تشغيل وصيانة مثيل PostgreSQL لديك، ومن أبسط هذه الطرق تشغيله في حاوية Docker. اتبع الخطوات أدناه لإعداد حاوية Docker لـ PostgreSQL.

الخطوة 1: اسحب صورة Docker الخاصة بـ PostgreSQL.``` shell
docker pull postgres

الخطوة 2: قم بتهيئة وتشغيل حاوية PostgreSQL في الخلفية. تأكد من تعديل كلمة المرور.``` shell docker run -itd -e POSTGRES_DB=hashr -e POSTGRES_USER=hashr -e POSTGRES_PASSWORD=hashr -p 5432:5432 -v /data:/var/lib/postgresql/data --name hashr_postgresql postgres

الخطوة 3: إنشاء جدول سيُستخدم لتخزين مهام المعالجة.``` shell
cat scripts/CreateJobsTable.sql | docker exec -i hashr_postgresql psql -U hashr -d hashr

لاستخدام PostgreSQL لتخزين معلومات حول مهام المعالجة، تحتاج إلى تحديد العلامات التالية: -storage postgres -postgres_host <host> -postgres_port <port> -postgres_user <user> -postgres_password <pass> -postgres_db <db_name>

إعداد Cloud Spanner

يمكنك اختيار تخزين البيانات حول مهام المعالجة في Cloud Spanner. ستحتاج إلى مشروع Google Cloud لذلك. الميزة الرئيسية لهذا الإعداد هي أنه يمكنك بسهولة إنشاء لوحات معلومات باستخدام Google Data Studio والاتصال مباشرة بمثيل Cloud Spanner مما يتيح المراقبة وتصحيح الأخطاء دون تشغيل استعلامات ضد مثيل PostgreSQL الخاص بك.

بافتراض أن أداة gcloud لديك مُهيأة مع مشروع GCP الخاص بـ HashR المستهدف، ستحتاج إلى اتباع الخطوات أدناه لتفعيل Cloud Spanner.

إنشاء حساب خدمة HashR:``` shell gcloud iam service-accounts create hashr --description="HashR SA key." --display-name="hashr"

أنشئ مفتاح حساب الخدمة واحفظه في دليلك الرئيسي. عيّن *<project_name>* ليكون اسم مشروعك.``` shell
gcloud iam service-accounts keys create ~/hashr-sa-private-key.json --iam-account=hashr-sa@<project_name>.iam.gserviceaccount.com

وجّه متغير البيئة GOOGLE_APPLICATION_CREDENTIALS إلى مفتاح حساب الخدمة الخاص بك:``` shell export GOOGLE_APPLICATION_CREDENTIALS=/home/hashr/hashr-sa-private-key.json

أنشئ مثيل Spanner، واضبط الإعدادات وقيمة processing-units إذا لزم الأمر:``` shell
gcloud spanner instances create hashr --config=regional-us-central1 --description="hashr" --processing-units=100

إنشاء قاعدة بيانات Spanner:``` shell gcloud spanner databases create hashr --instance=hashr

اسمح لحساب الخدمة باستخدام قاعدة بيانات Spanner، وعيّن *<project_name>* إلى اسم مشروعك:``` shell
gcloud spanner databases add-iam-policy-binding hashr --instance hashr --member="serviceAccount:hashr-sa@<project_name>.iam.gserviceaccount.com" --role="roles/spanner.databaseUser"

تحديث مخطط قاعدة بيانات Spanner:``` shell gcloud spanner databases ddl update hashr --instance=hashr --ddl-file=scripts/CreateJobsTable.ddl

من أجل استخدام Cloud Spanner لتخزين معلومات حول مهام المعالجة، تحتاج إلى تحديد العلامات التالية: `-jobStorage cloudspanner -spannerDBPath <spanner_db_path>`
تنزيل الأداة