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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
NuReaper — ماسح Nuget | Kitploit
أدوات/GitHubGitHub/daanixpl/nureaper
التحليل الثابتماسحات الثغرات الأمنيةالتحليل الديناميكي (عزل)تحليل الكودتحليل البرمجيات الخبيثةDevSecOpsتحليل الملفات الثنائيةاستخبارات التهديداتأمن سلسلة التوريد
GitHubdaanixpl/nureaper

NuReaper

ماسح Nuget

5منذ 2 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

NuReaper — ماسح أمان حزم NuGet

⚠️ قيد التطوير — يتم تطوير المشروع بنشاط. محرك المسح الأساسي يعمل؛ إصرار قاعدة البيانات، التخزين المؤقت، وتغطية الاختبارات الكاملة مخطط لها في التكرارات القادمة.

NuReaper هو واجهة خلفية لتطبيق .NET 8 تقوم بتحليل أمان حزم NuGet تلقائيًا. يمكنك توفير رابط لأي حزمة NuGet، ويقوم النظام بتنزيل شجرة التبعيات بأكملها بشكل متكرر، وإعادة ترجمة الكود المُجمَّع، ومسح كل دالة (Method) بحثًا عن أنماط ضارة — مع إرجاع تقرير تهديد مفصل.

🔍 للقُرّاء غير التقنيين: تخيل أنك تُثبّت تطبيقًا على هاتفك. معه، يتم تثبيت العشرات من المكتبات الصغيرة تلقائيًا. NuReaper يفحص كل واحدة منها — بالنظر إلى الكود الثنائي المُجمَّع الفعلي — ويكتشف ما إذا كان أي منها يحاول الاتصال بخوادم مشبوهة، أو تنفيذ كود مخفي، أو إخفاء سلوكه الحقيقي.


🎯 ماذا يفعل NuReaper؟

أرسل طلب HTTP واحدًا مع رابط حزمة NuGet، وسيقوم NuReaper بالتالي:

  1. بناء شجرة التبعية الكاملة — يجلب ويعيّن جميع الحزم التي تعتمد عليها الحزمة المستهدفة بشكل متكرر (حتى عمق 20 مستوى)، ويكتشف التبعيات الدائرية على طول الطريق
  2. تنزيل كل حزمة والتحقق منها — يجلب ملف .nupkg ويحسب تجزئة SHA-256 الخاصة به
  3. تحليل كود IL المُجمَّع — يعيد ترجمة تجميعات .NET ويمسح كل دالة (Method) في كل فئة (Class) بحثًا عن أنماط مشبوهة
  4. تقييم مستوى التهديد — بناءً على الأنماط المكتشفة، عدد الاكتشافات، تنوع الأنواع، درجات الثقة، وعمق الإخفاء
  5. إرجاع تقرير كامل — مع نتائج كل حزمة، تتبّع تدفق الكود، ومخطط التبعية الكامل

🔬 أنماط الكود الضار المكتشفة

يقوم المحرك بتحليل الكود على مستوى تعليمات IL (اللغة الوسيطة) ويتعرف على 7 أنماط مميزة للبرامج الضارة:

أنواع التهديدات المكتشفة

root@kitploit:~
Network:      HttpClient, WebClient, DNS, TcpClient, WebSocket
Execution:    Process.Start, Assembly.Load, Activator.CreateInstance
Low-level:    DllImport, VirtualAlloc, CreateThread, NtCreateThreadEx
System:       ManagementObjectSearcher (WMI)
String-based: Concatenation, CharArray, Interpolation, StringBuilder
Suspicious:   URL, IP address, .onion address, Base64

درجة مستوى التهديد (0–100)

تأخذ خوارزمية التهديف في الاعتبار:

  • أقصى مستوى خطر لأي اكتشاف واحد
  • العدد الإجمالي للاكتشافات (حتى +30 نقطة)
  • تنوع أنواع التهديدات المكتشفة (حتى +15 نقطة)
  • متوسط درجة الثقة عبر جميع الاكتشافات (+5 نقاط إذا >90%)
  • وجود إخفاء — بناء سلسلة متعددة القفزات (+10 نقاط)

📡 واجهة API

POST /api/PackageScan

يقوم بمسح حزمة NuGet المقدمة مع شجرة تبعيتها الكاملة.

الطلب:

root@kitploit:~
{
  "url": "https://www.nuget.org/packages/System.Net.Http/4.3.4"
}

الاستجابة:

root@kitploit:~
{
  "rootPackageName": "System.Net.Http",
  "rootPackageVersion": "4.3.4",
  "totalPackages": 12,
  "totalFindingsFromAllPackages": 5,
  "threatLevelAllPackages": 47.5,
  "scannedTimeAllPackages": "2026-03-25T12:00:00Z",
  "packages": [
    {
      "packageName": "System.Net.Http",
      "version": "4.3.4",
      "sha256Hash": "abc123...",
      "threatLevel": 35.0,
      "totalFindings": 3,
      "findings": [
        {
          "type": "HttpClientCall",
          "confidenceScore": 95.0,
          "dangerLevel": 60.0,
          "evidence": "http://example.com/payload",
          "location": "MyClass::SendData",
          "hopDepth": 0,
          "flowTrace": "[Pattern1] Direct API call using string..."
        }
      ]
    }
  ],
  "dependencyGraph": {
    "rootPackage": "[email protected]",
    "nodes": [...],
    "edges": [...],
    "cycles": [...]
  }
}

🏗️ الهندسة المعمارية

مبنية على الهندسة النظيفة (Clean Architecture) مع فصل صارم للمسؤوليات:

root@kitploit:~
NuReaperBackend/
├── NuReaper.Api/               # طبقة API — المتحكمات، الوسائط، التشغيل
├── NuReaper.Application/       # طبقة التطبيق — الأوامر، الواجهات، DTOs، التحقق
├── NuReaper.Domain/            # النواة الأساسية — الكيانات، العدادات، التجريدات
├── NuReaper.Infrastructure/    # التطبيقات — الماسحات، المحلّلات، المستودعات
│   └── Repositories/
│       ├── Scanners/           # محرك تحليل IL
│       │   ├── Analysis/       # ScanModule, ScanMethod, NetworkApiCallScan
│       │   ├── Detectors/      # 7 كاشفات أنماط (Pattern1–Pattern7)
│       │   ├── Patterns/       # PatternRegistry (تعبيرات منتظمة: URL, IP, .onion, Base64)
│       │   ├── RiskCalculation/# خوارزمية تقييم التهديد
│       │   ├── Finders/        # تحديد موقع استدعاءات API داخل تعليمات IL
│       │   ├── VariableAnalysis/# تتبع قيم المتغيرات عبر IL
│       │   └── StringAnalysis/ # إعادة بناء السلاسل النصية من الأجزاء
│       ├── Parsers/            # تحليل ملفات .nuspec
│       ├── GraphBuilders/      # بناء رسم بياني للتبعيات (BFS + تكرار)
│       └── FileHelpers/        # تنزيل، استخراج، SHA-256
└── Docker/
    ├── Dockerfile
    └── docker-compose.yml

التقنية والأنماط المستخدمة


⚙️ كيف يعمل محرك المسح

root@kitploit:~
Package URL
    │
    ▼
DependencyGraphBuilder          ← يبني الرسم البياني للتبعيات من ملفات .nuspec
    │  (تكرار + BFS، كشف الدورات)
    ▼
قائمة الحزم الفريدة
    │
    ▼  (بالتوازي، SemaphoreSlim — عدد الخيوط = CPU-1)
NetworkApiCallScan لكل حزمة
    ├── DownloadPackageAsync     ← يجلب .nupkg
    ├── CalculateSha256          ← التحقق من التكامل
    ├── ExtractNupkgAsync        ← يفك ضغط الأرشيف
    └── GetAssemblyFiles         ← يسرد ملفات .dll
            │
            ▼  (Parallel.ForEachAsync)
        ScanModule (لكل ملف .dll)
            │
            ▼  (Parallel.ForEach — جميع الأنواع والدوال)
        ScanMethod (لكل دالة)
            │
            ▼  (7 كاشفات أنماط)
        Pattern1..7 → FindingSummaryDto
            │
            ▼
    CalculateThreatLevel         ← درجة من 0 إلى 100
    │
    ▼
ScanPackageResultResponse

📦 التبعيات الرئيسية


📄 الترخيص

هذا المشروع متاح بموجب رخصة PolyForm Noncommercial License 1.0.0، ويُحظر الاستخدام التجاري. للتراخيص التجارية أو الاستفسارات، اتصل على: [email protected]

تنزيل الأداة
#النمطالوصف
1استدعاء API مباشرسلسلة نصية مشبوهة تُستخدم فورًا في استدعاء شبكة
2تعيين سلسلة نصيةURL يتم تعيينه لمتغير، ثم تمريره إلى استدعاء شبكة
3بناء سلسلة نصيةURL يُبنى عن طريق الربط ("http://" + var + "/path") — تقنية إخفاء
4إقحام سلسلة نصيةURL يُجمّع عبر الإقحام ($"{part1}{part2}")
5إقحام حروف فقطURL يُبنى حرفًا بحرف من مصفوفة أحرف — إخفاء متقدم
6معالج السلاسل المُقحم الافتراضي (DefaultInterpolatedStringHandler)آلية إقحام منخفضة المستوى تُستخدم لإخفاء السلاسل من التحليل الثابت
7استدعاءات API عاريةاستدعاءات شبكة مباشرة بدون سلاسل نصية صريحة (TcpClient.Connect, Socket.Connect, Process.Start)
المجالالتقنية / النمط
الهيكل المعماريClean Architecture (الهندسة النظيفة)
التواصل بين الطبقاتCQRS + MediatR
تحليل كود ILdnlib
التحقق من الإدخالFluentValidation + نمط السلوك في MediatR Pipeline
تعيين الكائناتAutoMapper
التسجيلSerilog (وحدة التحكم + ملف دوار يومي)
توثيق APISwagger / OpenAPI
قاعدة البياناتEntity Framework Core + MySQL (Pomelo)
HTTPIHttpClientFactory مع تجميع الاتصالات
الحاويةDocker + Docker Compose
الاختباراتxUnit + Moq
الحزمةالغرض
dnlibفك ترجمة وتحليل .NET IL
MediatRCQRS — خط الأوامر/الاستعلامات
FluentValidationالتحقق من صحة الطلبات
AutoMapperتعيين الكائنات عبر الطبقات
Serilogالتسجيل المنظم
Pomelo.EntityFrameworkCore.MySqlORM لـ MySQL
Swashbuckle.AspNetCoreواجهة Swagger
xUnit + Moqاختبارات الوحدة