Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
OGhidra — يُدمج OGhidra نماذج اللغة الكبيرة (LLMs) عبر Ollama مع منصة Ghidra لهندسة عكسية، مما يتيح تحليل الثنائيات بمساعدة الذكاء الاصطناعي عبر اللغة الطبيعية. تفاعل مع Ghidra باستخدام استفسارات محادثة وأتمتة مهام سير العمل المعقدة في الهندسة العكسية. | Kitploit
أدوات/GitHubGitHub/llnl/oghidra
تحليل الثغرات الأمنيةالهندسة العكسيةمصممي الأخطاءتحليل البرمجيات الخبيثةتحليل الملفات الثنائيةتعلم الآلةالتعلم والتعليمالهندسة العكسية بمساعدة الذكاء الاصطناعي
GitHubllnl/oghidra

OGhidra

يُدمج OGhidra نماذج اللغة الكبيرة (LLMs) عبر Ollama مع منصة Ghidra لهندسة عكسية، مما يتيح تحليل الثنائيات بمساعدة الذكاء الاصطناعي عبر اللغة الطبيعية. تفاعل مع Ghidra باستخدام استفسارات محادثة وأتمتة مهام سير العمل المعقدة في الهندسة العكسية.

397456منذ 19 أيامتمت المراجعة من قبل Kitploit
عرض المستودع

الأكثر شعبية

عرض الكل →

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

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

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

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

OGhidra 3 - الهندسة العكسية المدعومة بالذكاء الاصطناعي باستخدام Ghidra

للإصدار الذي يستخدم Orchestrator مستوحى من Claude، راجع https://github.com/llnl/OGhidra/tree/orchestrator

Python Version License PRs Welcome

OGhidra يربط نماذج اللغة الكبيرة بمنصة الهندسة العكسية Ghidra، مما يتيح تحليلًا ثنائيًا مدفوعًا بالذكاء الاصطناعي من خلال اللغة الطبيعية. حلل الملفات الثنائية بطريقة تفاعلية، وأتمتة سير العمل المعقدة، وحافظ على الخصوصية الكاملة مع نماذج الذكاء الاصطناعي المحلية.

برنامج تعليمي للإعداد على YouTube

مقدمة OGhidra


ما هو OGhidra؟

OGhidra يعزز Ghidra بقدرات الذكاء الاصطناعي، مما يسمح لك بـ:

  • تحليل باللغة الطبيعية - اطرح أسئلة حول الدوال، السلاسل النصية، الاستيرادات باللغة الإنجليزية المبسطة
  • سير عمل آلي - إعادة تسمية الدوال، اكتشاف الأنماط، إنشاء تقارير شاملة
  • نماذج ذكاء اصطناعي محلية - خصوصية كاملة مع نماذج تعمل على جهازك (Ollama)
  • دعم ذكاء اصطناعي سحابي - الاتصال بواجهات برمجة تطبيقات خارجية (OpenAI, Google Gemini, Anthropic Claude)
  • كشف البرامج الضارة - مطابقة أنماط تلقائية لأكثر من 12 تقنية تهرب وحقن
  • تعداد ذكي - بناء رسوم معرفية قابلة للاستعلام من تحليل الملفات الثنائية
  • تحليل متعدد المثيلات - تشغيل عدة مثيلات من Ghidra للتحليل المتوازي
  • كيف يعمل

    root@kitploit:~
    graph TD
        A[استعلام المستخدم] --> B[مرحلة التخطيط]
        B --> C{مرحلة التنفيذ}
        C -- استدعاءات الأدوات --> D[Ghidra/LLM]
        D --> C
        C --> E[مرحلة المراجعة]
        E -- حلقة وكيلية --> B
        E --> F[الرد النهائي]
    
        style E fill:#f9f,stroke:#333,stroke-width:2px
        style B fill:#bbf,stroke:#333,stroke-width:2px

    الحلقة الوكيلية: يستخدم OGhidra نظام تخطيط تكيفي. بعد كل دورة تنفيذ، يتم مراجعة النتائج ويمكن للذكاء الاصطناعي اختيار جمع المزيد من المعلومات أو تحسين تحليله قبل تقديم الرد النهائي.


    بداية سريعة

    المتطلبات الأساسية

    1. Python 3.12+ - تحقق من الإصدار: python --version
    2. Ghidra 12.0.3 (مُوصى به) - تنزيل من إصدارات Ghidra
      • مسار بناء/تثبيت الإضافة موثق لـ Ghidra 12.0.3
      • تم اختباره مع: Ghidra 11.0.3, 11.3.2, 12.0.2, 12.0.3
    3. Java 21 - مطلوب لبناء إضافة Ghidra 12.0.3: java -version
    4. Ollama (اختياري، للنماذج المحلية) - تثبيت من ollama.com

    التثبيت

    root@kitploit:~
    # استنساخ المستودع
    git clone https://github.com/LLNL/OGhidra.git
    cd OGhidra
    
    # تثبيت التبعيات (اختر أحد الخيارين)
    uv sync                          # باستخدام UV (مُوصى به)
    pip install -r requirements.txt  # باستخدام pip
    
    # تكوين البيئة
    cp .env.example .env
    # عدّل .env بإعداداتك
    

    إعداد إضافة Ghidra

    خطوات بناء إضافة OGhidraMCP أدناه تستهدف Ghidra 12.0.3 (مُوصى به). يوجد أيضًا فيديو تعليمي على YouTube: https://www.youtube.com/watch?v=hBD92FUgR0Y

    بناء إضافة GhidraMCP

    كمطور، ستحتاج إلى بناء إضافة GhidraMCP قبل تثبيتها في Ghidra:

    1. المتطلبات الأساسية:

      • Ghidra 12.0.3 مثبتة
      • Java 21
    2. الخيار 1: استخدام نصوص البناء الآلية:

      • ويندوز:

        root@kitploit:~
        # تعيين مسار تثبيت Ghidra (سيحاول العثور على آخر نسخة مشغلة من Ghidra إذا لم يتم تعيينه)
        set GHIDRA_INSTALL_DIR=C:\path\to\ghidra_12.0.3_PUBLIC
        
        # تشغيل نص البناء
        build_ghidra_plugin.bat
        
      • Unix/Linux/Mac:

        root@kitploit:~
        # تعيين مسار تثبيت Ghidra (سيحاول العثور على آخر نسخة مشغلة من Ghidra إذا لم يتم تعيينه)
        export GHIDRA_INSTALL_DIR=/path/to/ghidra_12.0.3_PUBLIC
        
        # تشغيل نص البناء (اجعله قابلاً للتنفيذ أولاً إذا لزم الأمر)
        chmod +x build_ghidra_plugin.sh
        ./build_ghidra_plugin.sh
        
    3. الخيار 2: عملية البناء اليدوية:

      • أنشئ/حدّث OGhidraMCP/gradle.properties بمسار تثبيت Ghidra الخاص بك:

        root@kitploit:~
        GHIDRA_INSTALL_DIR=/absolute/path/to/ghidra_12.0.3_PUBLIC
        
      • على Unix/Linux/macOS:

        root@kitploit:~
        cd OGhidraMCP
        $GHIDRA_INSTALL_DIR/support/gradle/gradlew buildExtension --info
        
      • على ويندوز:

        root@kitploit:~
        cd OGhidraMCP
        "%GHIDRA_INSTALL_DIR%\support\gradle\gradlew.bat" buildExtension --info
        
    4. تحديد موقع الإضافة المبنية:

      • يتم إنشاء ملف zip للإضافة في OGhidraMCP/dist/
      • سيكون اسم الملف شيئًا مثل ghidra_12.0.3_PUBLIC_YYYYMMDD_OGhidraMCP.zip

    تثبيت إضافة GhidraMCP

    بمجرد بناء الإضافة بنجاح:

    1. تثبيت في Ghidra:

      • افتح Ghidra -> File -> Install Extensions
      • انقر Add Extension (أيقونة زائد خضراء)
      • تصفح إلى دليل OGhidraMCP/dist/
      • حدد ملف zip للإضافة المبنية حديثًا (مثل ghidra_12.0.3_PUBLIC_YYYYMMDD_OGhidraMCP.zip)
      • أعد تشغيل Ghidra
    2. تفعيل الإضافة:

      • افتح مشروع Ghidra
      • File → Configure → Enable Developer
      • فعّل إضافة OGhidraMCP
      • سيبدأ الخادم على http://localhost:8080/methods

      يجب أن يكون CODE BROWSER مفتوحًا لديك

    سحب نماذج الذكاء الاصطناعي

    root@kitploit:~
    # لـ Ollama (نماذج محلية)
    ollama pull gemma3:27b           				# توازن جيد (20GB ذاكرة وصول عشوائي)
    ollama pull nomic-embed-text     				# نموذج التضمين لـ RAG
    
    # نماذج بديلة
    ollama pull gpt-oss:120b         				# جودة عالية (80GB ذاكرة وصول عشوائي)
    ollama pull devstral-2:123b 					# جودة عالية (80GB ذاكرة وصول عشوائي)
    ollama pull devstral-2:123b-cloud               # نموذج سحابي
    

    تشغيل OGhidra

    root@kitploit:~
    # وضع الواجهة الرسومية (مُوصى به)
    uv run main.py --ui
    
    # واجهة سطر الأوامر التفاعلية
    uv run main.py --interactive
    
    # في واجهة سطر الأوامر التفاعلية، اختبر الاتصال
    health
    

    إذا قمت بتشغيل وضع الواجهة الرسومية، استخدم:

    root@kitploit:~
    curl http://localhost:8080/methods
    

    التكوين

    عدّل .env لتكوين مزود الذكاء الاصطناعي الخاص بك:

    الخيار 1: نماذج محلية (Ollama)

    root@kitploit:~
    LLM_PROVIDER=ollama
    OLLAMA_BASE_URL=http://localhost:11434/
    OLLAMA_MODEL=gemma3:27b
    OLLAMA_EMBEDDING_MODEL=nomic-embed-text
    

    الخيار 2: واجهات برمجة تطبيقات خارجية

    root@kitploit:~
    LLM_PROVIDER=external
    EXTERNAL_PROVIDER=google
    EXTERNAL_API_KEY=your-api-key-here
    EXTERNAL_MODEL=gemini-3.1-flash-lite-preview
    EXTERNAL_EMBEDDING_MODEL=gemini-embedding-001
    

    الخيار 3: واجهة برمجة تطبيقات مخصصة متوافقة مع OpenAI

    root@kitploit:~
    LLM_PROVIDER=custom_api
    CUSTOM_API_URL=https://api.example.com/v1/chat/completions
    CUSTOM_API_KEY=your-api-key-here
    CUSTOM_API_MODEL=your-model-name
    CUSTOM_API_EMBEDDING_MODEL=your-embedding-model
    

    إعدادات إدارة السياق

    اضبط وفقًا لنافذة سياق النموذج الخاص بك:

    root@kitploit:~
    # ميزانية السياق بالرموز (اضبط حسب حد النموذج الخاص بك)
    CONTEXT_BUDGET=100000              # 100 ألف رمز للنماذج متوسطة الحجم
                                       # 200 ألف+ للنماذج الرائدة
    
    # إعدادات التنفيذ
    MAX_EXECUTION_STEPS=5              # خطوات لكل دورة تخطيط
    MAX_AGENTIC_CYCLES=3               # عدد حلقات التخطيط-التنفيذ-المراجعة
    AGENTIC_LOOP_ENABLED=true          # تفعيل إعادة التخطيط التكيفي
    

    الميزات الرئيسية

    1. أزرار الأدوات الذكية (الواجهة الرسومية)

    وصول بنقرة واحدة إلى مهام الهندسة العكسية الشائعة:

    الأداةالوصف
    تحليل الدالة الحاليةغوص عميق في سلوك الدالة المحددة
    إعادة تسمية الدالة الحاليةالذكاء الاصطناعي يقترح أسماء ذات معنى بناءً على التحليل
    إعادة تسمية جميع الدوالإعادة تسمية جماعية مع خيارات ذكية/كاملة/إعادة تسمية فقط
    تحليل الاستيراداتتحديد المكتبات والتبعيات الخارجية
    تحليل السلاسل النصيةالعثور على عناوين URL، بيانات الاعتماد، بيانات التكوين
    إنشاء تقريرتقييم أمني شامل

    2. أوضاع المهام

    حدد أهداف تحليل متخصصة:

    root@kitploit:~
    # في الواجهة الرسومية: استخدم القائمة المنسدلة "Task Mode"
    # في سطر الأوامر: set task_mode <mode>
    
    task_mode malware      # تحليل البرامج الضارة مع اكتشاف الأنماط
    task_mode vuln         # تركيز أبحاث الثغرات
    task_mode general      # هندسة عكسية عامة
    

    3. اكتشاف أنماط البرامج الضارة

    اكتشاف تلقائي لأكثر من 12 نمطًا من أنماط البرامج الضارة:

    • التهرب: PEB Walking, Dynamic API Resolution, Anti-Debug, Anti-VM
    • الحقن: Process Injection (محلي/عن بعد)
    • الثبات: التسجيل، خطافات نظام الملفات
    • الإبهام: String Encoding, API Hashing
    • تصعيد الامتيازات: التلاعب بالرموز، تجاوز UAC

    تؤدي الأنماط إلى تنبيهات تلقائية في سياق الذكاء الاصطناعي مع تعيينات MITRE ATT&CK.

    4. التعداد الذكي

    بناء معرفة غنية وقابلة للاستعلام من تحليل الملفات الثنائية:

    root@kitploit:~
    # تعداد جميع الدوال مع ملخصات الذكاء الاصطناعي
    # اختر من:
    - Rename Only: معالجة أسماء الدوال العامة فقط
    - Smart Enumeration: التركيز على الدوال ذات الصلة بالأمن
    - Full Enumeration: تحليل كل دالة في الملف الثنائي
    

    الميزات:

    • استخراج بيانات وصفية منظمة (أسطر التعليمات البرمجية، التعقيد، العمليات)
    • تحسين البحث الدلالي
    • تجميع السياق القائم على النية
    • دعم متعدد المتجهات لاسترجاع دقيق

    5. إدارة الجلسة

    حفظ واستعادة جلسات التحليل:

    root@kitploit:~
    # حفظ التقدم
    File → Save Session
    
    # تحميل العمل السابق
    File → Load Session
    
    # حفظ تلقائي بعد العمليات الجماعية
    # تشمل الجلسات:
    - الدوال التي تم تحليلها مع الملخصات
    - متجهات RAG للبحث الدلالي
    - إحصائيات الأداء
    - حالة واجهة المستخدم
    

    إعداد الخلفية

    يدعم OGhidra نوعين من الخلفيات:

    • MCP — يتكامل مع خادم GhidraMCP ويتطلب تشغيل عميل Ghidra أثناء التحليل
    • PyGhidra — يدعم التحليل بدون رأس (headless) دون الحاجة إلى عميل Ghidra ويزيل مكون الخادم المطلوب بواسطة MCP

    اختيار خلفية

    استخدم خيار سطر الأوامر التالي لاختيار خلفية:

    root@kitploit:~
    --ghidra-backend={http,pyghidra}
    
    خيار الخلفيةالوصف
    httpيستخدم خلفية GhidraMCP
    pyghidraيستخدم خلفية PyGhidra

    تكوين PyGhidra

    استخدام مشروع Ghidra موجود

    حدد ملف مشروع Ghidra (.gpr) عند تشغيل OGhidra:

    root@kitploit:~
    --pyghidra-project=/path/to/project.gpr
    

    يتطلب PyGhidra مشروع Ghidra صالحًا لتشغيل OGhidra.


    اختيار برنامج

    حدد الملف الثنائي داخل مشروع Ghidra الذي يجب تحليله:

    root@kitploit:~
    --pyghidra-program=<program_name>
    

    مثال على استدعاء لاختيار برنامج في مشروع Ghidra:

    root@kitploit:~
    uv run main.py --ui --ghidra-backend=pyghidra --pyghidra-project=/path/to/project.gpr --pyghidra-program=<program_name>
    

    المتطلبات:

    • يجب أن يطابق اسم البرنامج تمامًا الاسم المعروض في واجهة مشروع Ghidra الرسومية
    • هذا الخيار مطلوب عند استخدام مشروع موجود
    • عدم تحديد برنامج سيمنع تشغيل OGhidra

    تشغيل ملف ثنائي مباشرة

    يمكنك أيضًا تقديم مسار ملف ثنائي مباشرة:

    root@kitploit:~
    --pyghidra-binary=/path/to/binary
    

    عند استخدام هذا الخيار، يقوم PyGhidra تلقائيًا بـ:

    1. إنشاء مشروع Ghidra جديد (.gpr)
    2. استيراد الملف الثنائي
    3. تشغيل الملف الثنائي في OGhidra للتحليل

    مثال على استدعاء لتشغيل ملف ثنائي مباشرة:

    uv run main.py --ui --ghidra-backend=pyghidra --pyghidra-binary=/path/to/binary


    سير العمل الشائع

    تحليل ملف ثنائي مشبوه

    1. تحميل الملف الثنائي في Ghidra وفتحه في CodeBrowser
    2. تفعيل إضافة OGhidraMCP (File → Configure)
    3. تشغيل OGhidra: uv run main.py --ui
    4. تعيين وضع المهمة: اختر "malware" من القائمة المنسدلة
    5. تشغيل التعداد الذكي: انقر "Rename All Functions" → "Smart Enumeration"
    6. طرح أسئلة: "ما هي الدوال عالية المخاطر؟" أو "أظهر لي اتصالات الشبكة"

    إنشاء تقرير أمني

    root@kitploit:~
    # في الواجهة الرسومية: انقر زر "Generate Report"
    # يتضمن التقرير:
    - ملخص تنفيذي
    - جرد الدوال (الدوال المعاد تسميتها مع السلوك)
    - تحليل أمني (دوال عالية المخاطر، أنماط)
    - تحليل الاستيرادات
    - تحليل السلاسل النصية
    - التوصيات
    

    التحقيق في دالة محددة

    1. الانتقال إلى الدالة في Ghidra
    2. انقر "Analyze Current Function"
    3. اطرح أسئلة متابعة:
      • "ماذا تفعل هذه الدالة؟"
      • "هل هي عرضة لـ buffer overflow؟"
      • "ما هي الدوال الأخرى التي تستدعي هذه؟"

    الميزات المتقدمة

    RAG (التوليد المعزز بالاسترجاع)

    يستخدم OGhidra تضمينات متجهة للبحث الدلالي عبر الدوال التي تم تحليلها:

    root@kitploit:~
    # فعّل في .env
    RESULT_CACHE_ENABLED=true
    TIERED_CONTEXT_ENABLED=true
    

    الفوائد:

    • تذكر التحليلات السابقة عبر الجلسات
    • العثور على دوال مماثلة دلاليًا
    • تقليل استدعاءات LLM المتكررة

    تحسين السياق

    ضغط السياق المتدرج يحافظ على المعلومات ذات الصلة:

    root@kitploit:~
    CURRENT_LOOP_MAX_CHARS=2000   # الأحدث: تفاصيل كاملة
    PREV_LOOP_MAX_CHARS=400       # السابقة: ملخصات
    OLDER_LOOP_MAX_CHARS=100      # الأقدم: مراجع فقط
    

    سجل LLM

    تتبع جميع تفاعلات الذكاء الاصطناعي لتصحيح الأخطاء:

    root@kitploit:~
    LLM_LOGGING_ENABLED=true
    LLM_LOG_FILE=logs/llm_interactions.log
    LLM_LOG_FORMAT=json
    

    استكشاف الأخطاء وإصلاحها

    مشاكل اتصال Ghidra

    root@kitploit:~
    # تحقق من تحميل الإضافة
    # افتح codebrowser!
    
    # تحقق من تشغيل الخادم
    curl http://localhost:8080/methods
    

    مشاكل اتصال Ollama

    root@kitploit:~
    # تحقق من تشغيل Ollama
    ollama list
    
    # تحقق من الاتصال
    curl http://localhost:11434/api/tags
    
    # أعد تشغيل خدمة Ollama
    ollama serve
    

    استجابات فارغة / تجاوز السياق

    root@kitploit:~
    # قلل ميزانية السياق
    CONTEXT_BUDGET=50000
    
    # فعّل الضغط
    COMPACTION_ENABLED=true
    COMPACTION_THRESHOLD=0.75
    

    أداء بطيء

    1. استخدم نماذج أصغر: انتقل إلى gemma3:9b
    2. قلل العمال المتوازيين: عيّن max_workers=2 في العمليات الجماعية
    3. عطّل تضمينات المتجهات: RESULT_CACHE_ENABLED=false
    4. زد تأخير الطلب: CUSTOM_API_REQUEST_DELAY=2.0

    نظرة عامة على البنية

    root@kitploit:~
    ┌─────────────────────────────────────────────────────────────┐
    │                     واجهة مستخدم OGhidra                    │
    │                  (GUI / Interactive CLI)                    │
    └────────────────────────┬────────────────────────────────────┘
                             │
                             ▼
    ┌─────────────────────────────────────────────────────────────┐
    │                   Bridge (src/bridge.py)                    │
    │  ┌────────────────────────────────────────────────────────┐ │
    │  │ • الحلقة الوكيلية: خطط → نفذ → راجع ← أعد التخطيط      │ │
    │  │ • موجه الأدوات: عميل Ghidra، عميل LLM، مدير CAG         │ │
    │  │ • مدير السياق: تخصيص الميزانية، الضغط                   │ │
    │  └────────────────────────────────────────────────────────┘ │
    └───────────┬────────────────────────┬────────────────────────┘
                │                        │
                ▼                        ▼
    ┌───────────────────────┐  ┌─────────────────────────┐
    │   عميل Ghidra         │  │   عملاء LLM              │
    │ • إضافة GhidraMCP    │  │ • Ollama (محلي)          │
    │ • عمليات الملفات الثنائية│  │ • واجهات برمجة تطبيقات خارجية│
    │ • فك الترجمة          │  │ • نقاط نهاية مخصصة       │
    └───────────────────────┘  └─────────────────────────┘
                │                        │
                └────────────┬───────────┘
                             ▼
    ┌─────────────────────────────────────────────────────────────┐
    │               مدير CAG (نظام المعرفة)                       │
    │  ┌────────────────────────────────────────────────────────┐ │
    │  │ • مخزن المتجهات: بحث دلالي عبر الدوال                 │ │
    │  │ • كاشف الأنماط: أكثر من 12 تقنية برامج ضارة           │ │
    │  │ • مستخرج البيانات الوصفية: تحليل منظم للدوال           │ │
    │  │ • مخزن الجلسات: حالة تحليل مستمرة                     │ │
    │  └────────────────────────────────────────────────────────┘ │
    └─────────────────────────────────────────────────────────────┘
    

    المساهمة

    نرحب بالمساهمات! مجالات الاهتمام:

    • أنماط جديدة للبرامج الضارة للكشف
    • تكاملات مزودي LLM
    • تحسينات واجهة المستخدم/تجربة المستخدم
    • تحسينات الأداء
    • التوثيق والأمثلة

    انظر CODE_OF_CONDUCT.md لإرشادات المجتمع.


    الاقتباس

    إذا كنت تستخدم OGhidra في بحثك، يرجى الاقتباس:

    root@kitploit:~
    @software{oghidra2025,
      title = {OGhidra: AI-Powered Reverse Engineering with Ghidra},
      author = {Enoch Wang},
      year = {2025},
      url = {https://github.com/LLNL/OGhidra}
    }
    

    الشكر والتقدير

    OGhidra يبني على مشاريع مفتوحة المصدر ممتازة:

    • Ghidra - منصة الهندسة العكسية من NSA
    • Ollama - بيئة تشغيل LLM محلية
    • LaurieWired/GhidraMCP - إضافة Ghidra MCP الأصلية
    • starsong/GhydraMCP - تنفيذ MCP محسّن

    الترخيص

    يتم توزيع OGhidra بموجب شروط ترخيص BSD 3-Clause مع بديل ترخيص تجاري.

    انظر LICENSE و NOTICE.md للحصول على التفاصيل.

    LLNL-CODE-2013290


    الدعم

    • المشكلات: GitHub Issues
    • المناقشات: GitHub Discussions
    • يمكنك مراسلتي مباشرة عبر البريد الإلكتروني: [email protected]
    تنزيل الأداة