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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
cats — أداة اختبار سريع لواجهات REST API واختبار سلبي لنقاط نهاية OpenAPI. تولّد وتنفّذ وتُبلغ عن آلاف الاختبارات ذاتية الإصلاح دون أي جهد برمجي، وتغطي سيناريوهات الحدود والأمان. | Kitploit
أدوات/GitHubGitHub/endava/cats
ماسحات الثغرات الأمنيةاختبار أمان APIأمن الويبالاختبار العشوائي
GitHubendava/cats

cats

أداة اختبار سريع لواجهات REST API واختبار سلبي لنقاط نهاية OpenAPI. تولّد وتنفّذ وتُبلغ عن آلاف الاختبارات ذاتية الإصلاح دون أي جهد برمجي، وتغطي سيناريوهات الحدود والأمان.

عرض المستودع
1.4k9061منذ 2 أيامتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

CATS logo CATS logo

CI Commits

License Java Version GraalVM Quality Gate Status Coverage Bugs Code Smells

وثائق CATS متاحة على https://endava.github.io/cats/

أداة اختبار سلبي وتخمين (fuzzing) لواجهات REST API. شغّل آلاف اختبارات API ذاتية الإصلاح في غضون دقائق دون أي جهد برمجي!

  • شاملة: يتم إنشاء الاختبارات تلقائيًا بناءً على عدد كبير من السيناريوهات وتغطي كل حقل وترويسة
  • ذكية: يتم إنشاء الاختبارات بناءً على أنواع البيانات والقيود؛ ولكل أداة تخمين (Fuzzer) توقعات محددة حسب السيناريو قيد الاختبار
  • قابلة للتخصيص بدرجة عالية: قدر كبير من التخصيص: يمكنك تصفية أدوات تخمين محددة، ورموز استجابة HTTP، وطرق HTTP، ومسارات الطلبات، وتوفير سياق الأعمال والمزيد
  • ذاتية الإصلاح: نظرًا لأن الاختبارات يتم إنشاؤها، فإن أي تغيير في مواصفات OpenAPI يُلتقط تلقائيًا
  • سهلة التعلم: منحنى تعلم سلس، مع إعدادات وصياغة بديهية
  • سريعة: عملية تلقائية لكتابة الاختبارات وتشغيلها وإعداد تقاريرها، وتغطي آلاف السيناريوهات في غضون دقائق

هل أنت ضيق الوقت؟ اطّلع على دليل البدء السريع في دقيقة واحدة!

نظرة عامة

باستخدام صياغة بسيطة ومختصرة، مع منحنى تعلم سلس، تتيح لك CATS (Contract API Testing and Security) إنشاء آلاف اختبارات API في غضون دقائق دون أي جهد برمجي. يتم إنشاء جميع الاختبارات وتشغيلها وإعداد تقاريرها تلقائيًا بناءً على مجموعة محددة مسبقًا من أكثر من 160 أداة تخمين (Fuzzer) (بالإضافة إلى 31 مُحوِّل عشوائي للتخمين المستمر). تغطي أدوات التخمين مجموعة واسعة من اختبارات الحدود، وإكراه الأنواع، والحقن، والسيناريوهات السلبية: من الحمولات الكبيرة من Unicode وأحرف التحكم إلى القيم المعتمدة على السياق المستمدة من أنواع بيانات الطلبات وقيودها، بالإضافة إلى الفحوصات ذات الحالة لـ IDOR، وخاصية العدم التكرارية (idempotency) لـ PUT، واتساق التحديث والقراءة، والتعامل الشرطي مع ETag، وتوافر الموارد المحذوفة، وتعرض البيانات الحساسة.

بشكل افتراضي، ترتّب CATS مسارات POST المُنتِجة قبل العمليات التابعة، وتنفّذ أدوات التخمين في موجات عرض أولًا عبر المسارات، وتعيد استخدام المعرّفات وخطوط الأساس المستفادة من استجابات 2XX في الطلبات اللاحقة، وتؤجّل استدعاءات DELETE الخاصة بـ HappyPath حتى نهاية التشغيل، وتتحقق من صحة الاستجابات مقابل مخططات OpenAPI 3.0 و3.1. يمكنك أيضًا كتابة اختبارات وظيفية من طرف إلى طرف بصيغة YAML باستخدام cats run.

البدء السريع

# Run the full suite against an OpenAPI contract
cats -c openapi.yml -s http://localhost:8080

# Run a built-in profile (quick, security, compliance, ci, coverage, crash, type-coercion, health-check)
cats -c openapi.yml -s http://localhost:8080 --profile quick

# Run for a fixed time budget, continuing with random mutations if deterministic fuzzers finish early, and enforce a quality gate
cats -c openapi.yml -s http://localhost:8080 --stopAfterTimeInSec 60 --fillTimeBudget --qualityGate "errors<1"

# Lint the OpenAPI contract
cats lint -c openapi.yml

# Inspect dependency-ordered paths or explain a profile/fuzzer
cats list --paths --executionOrder -c openapi.yml
cats explain --type profile security

# Replay a test case or print the equivalent curl command
cats replay Test12
cats replay Test12 --curl

تقرير HTML

CATS

سطر الأوامر

CATS

واجهة الطرفية

استخدم --tui على أمر fuzzing عادي لمتابعة التنفيذ وفحص النتائج دون مغادرة الطرفية:

cats --contract openapi.yml --server http://localhost:8080 --tui

تعرض النظرة العامة المسارات، وتكوين التشغيل، ووقت الاستجابة، ورموز استجابة HTTP، والنجاح/التحذيرات/الأخطاء، والـ Fuzzers التي تم تشغيلها باستخدام المصطلحات نفسها المستخدمة في CLI وتقرير HTML. يستخدم جدول الـ fuzzer جميع صفوف الطرفية المتاحة؛ استخدم j/k أو Page Up/Page Down لتصفحه عندما لا تتسع القائمة الكاملة. اضغط 2 لعرض تفاصيل التنفيذ، أو 3 لملخص التنفيذ ونتيجة بوابة الجودة، أو 4 لتفاصيل التنفيذ حسب سبب النتيجة، أو 5 للمسارات المضمّنة، أو 6 للاختبارات المنفذة مرتبة حسب وقت الاستجابة. تفتح صفوف Result Reason وPath الاختبارات المطابقة لها بالضغط على Enter.

استخدم مفاتيح الأسهم أو j/k لتحديد اختبار، واضغط Enter لفحص طلبه واستجابته ونتيجته وتتبعه وأمر إعادة تشغيله في عرض تفصيلي بملء الشاشة. اضغط / في قائمة الاختبارات للبحث في معرّفات الاختبارات والـ fuzzers والمسارات والسيناريوهات وأسباب النتائج والطرق والنتائج ورموز الاستجابة. تصفّي المفاتيح a وe وw وs وi النتائج الكلية والأخطاء والتحذيرات والنتائج الناجحة والنتائج المتخطاة. يمسح Esc أولاً بحثًا نشطًا، وإلا يعود إلى الشاشة السابقة؛ ويفتح 1 النظرة العامة.

اضغط q لمغادرة الواجهة. أثناء تشغيل نشط، يطلب ذلك الإلغاء، ويُنهي الاختبار الحالي حيثما أمكن، ويحافظ على النتائج المكتوبة بالفعل، ويخرج بالحالة 130. بعد انتهاء التنفيذ، يخرج q بشكل طبيعي.

تتطلب TUI طرفية تفاعلية لا تقل عن 80 عمودًا و24 صفًا، ولا يمكن دمجها مع --dryRun. وهي متاحة لأوامر الـ fuzzing المدعومة بـ OpenAPI؛ ويستمر الأمر المستقل template في استخدام مخرجات CLI العادية. تحتفظ TUI افتراضيًا بأحدث 10,000 تفصيل اختبار؛ استخدم --tuiMaxResults لاختيار حد موجب مختلف. تستمر الإحصاءات المجمّعة في تغطية التشغيل الكامل عند التخلص من التفاصيل الأقدم.

دروس تعليمية حول كيفية استخدام CATS

هذه قائمة بمقالات تحتوي على أدلة خطوة بخطوة حول كيفية استخدام CATS:

  • Testing the GitHub API with CATS
  • How to write self-healing functional tests with no coding effort

بعض الأخطاء التي اكتشفتها CATS

  • https://github.com/hashicorp/vault/issues/13274 | https://github.com/hashicorp/vault/issues/13273
  • https://github.com/hashicorp/vault/issues/13225 | https://github.com/hashicorp/vault/issues/13232
  • https://github.com/go-gitea/gitea/issues/19397 | https://github.com/go-gitea/gitea/issues/19398
  • https://github.com/go-gitea/gitea/issues/19399

التثبيت

Homebrew

> brew tap endava/tap
> brew install cats

يدوي

يُقدَّم CATS كملف JAR قابل للتنفيذ أو كملف ثنائي أصلي. لا تحتاج الملفات الثنائية الأصلية إلى تثبيت Java.

بعد تنزيل الملف الثنائي الأصلي الخاص بنظام التشغيل لديك، يمكنك إضافته إلى PATH لتتمكن من تنفيذه كأي أداة أخرى من أدوات سطر الأوامر:

sudo cp cats /usr/local/bin/cats

يمكنك تفعيل إكمال الصدفة (shell completion) في bash أو zsh مباشرةً من الملف التنفيذي:

source <(cats generate-completion)
تنزيل الأداة