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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
أدوات/GitHubGitHub/stvm8/cve-2026-2005_lab
تحليل الثغرات الأمنيةالاستغلالCTFالتعلم والتعليمأمن قواعد البياناتاستغلال الملفات الثنائيةمختبرات وتدريب عملي
GitHubstvm8/cve-2026-2005_lab

CVE-2026-2005_lab

مختبر Docker مستقل لممارسة استغلال CVE-2026-2005، وهو تجاوز سعة المخزن المؤقت في الكومة (heap buffer overflow) في امتداد pgcrypto الخاص بـ PostgreSQL، مما يتيح تصعيد الامتيازات وتنفيذ الأكواد داخل الحاوية.

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

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2026-2005 — مختبر تجاوز سعة الكومة في pgcrypto الخاص بـ PostgreSQL

مختبر Docker متكامل لممارسة استغلال CVE-2026-2005، وهو تجاوز سعة مخزن مؤقت في الكومة في امتداد pgcrypto الخاص بـ PostgreSQL والذي يتيح تنفيذ التعليمات البرمجية عن بُعد دون امتيازات المستخدم الفائق.

الإصدارات المتأثرة: PostgreSQL ≤ 17.7 / 16.11 / 15.15 / 14.20 / 18.1
تم الإصلاح في: 18.2, 17.8, 16.12, 15.16, 14.21 (صدر في 2026-02-12)


الإعداد

المتطلبات: Docker، Docker Compose

root@kitploit:~
git clone <this-repo>
cd CVE-2026-2005
docker compose up -d

سيكون PostgreSQL يستمع على 127.0.0.1:5433.


نقطة البداية

لقد حصلت على بيانات اعتماد قاعدة البيانات من ملف إعدادات أحد التطبيقات:

المعاملالقيمة
المضيف127.0.0.1
المنفذ5433
قاعدة البياناتtargetdb
اسم المستخدمpentester
كلمة المرورpentester123

اتصل لتأكيد الوصول:

root@kitploit:~
psql -h 127.0.0.1 -p 5433 -U pentester -d targetdb

يمتلك الحساب صلاحية CREATE على مخطط public. وهو ليس مستخدمًا فائقًا.


الأهداف

التقط كلا العلمين لإكمال المختبر.

العلم 1 — تصعيد صلاحيات قاعدة البيانات

root@kitploit:~
SELECT * FROM flag_db;
-- يمكن قراءته فقط بعد التصعيد إلى مستخدم فائق داخل جلسة قاعدة البيانات

العلم 2 — تنفيذ تعليمات برمجية داخل الحاوية

root@kitploit:~
/var/lib/postgresql/flag.txt
-- يمكن قراءته فقط بعد تنفيذ الأوامر كمستخدم postgres لنظام التشغيل داخل الحاوية

ملاحظة حول النطاق: يتم تنفيذ COPY TO PROGRAM داخل حاوية Docker، وليس على المضيف. التأثير الأساسي في العالم الحقيقي هو الوصول الكامل للقراءة إلى قاعدة البيانات (جميع الجداول، جميع قواعد البيانات). يتطلب الوصول إلى مضيف Docker تقنية منفصلة للهروب من الحاوية.


خلفية الثغرة

الخلل موجود في pgp_parse_pubenc_sesskey() داخل pgcrypto/pgp-pubenc.c.

عند فك تشفير حزمة مفتاح جلسة مشفرة بمفتاح عام، تستمد الدالة طول مفتاح الجلسة كـ msglen - 3 من حمولة RSA/ElGamal يتحكم فيها المهاجم وتنسخه في مخزن مؤقت ثابت بحجم 32 بايت (PGP_MAX_KEY) دون التحقق من الحدود. يمكن للمهاجم كتابة مئات البايتات خارج حدود المخزن المؤقت.

يتم الاستغلال على ثلاث مراحل:

  1. تسريب معلومات — يكشف التجاوز عن بيانات وصفية مجاورة في الكومة، مما يسرب عنوان PIE الأساسي وعناوين الكومة
  2. كتابة عشوائية — إفساد بنية dst لاستبدال CurrentUserId في .data بالقيمة 10 (BOOTSTRAP_SUPERUSERID)
  3. تنفيذ تعليمات برمجية داخل الحاوية — مع امتيازات المستخدم الفائق، ينفذ COPY (SELECT '') TO PROGRAM '<cmd>' أوامر نظام التشغيل كمستخدم postgres داخل الحاوية. في نشر حقيقي بدون Docker، يعني هذا وصولًا على مستوى نظام التشغيل إلى مضيف قاعدة البيانات.

نظرًا لأن تخطيط ASLR متطابق عبر جميع الاتصالات إلى نفس عملية postmaster، تظل العناوين المسربة على اتصال واحد صالحة في الاتصال التالي.


مراجع مفيدة

  • NVD: CVE-2026-2005
  • تقرير فني: https://www.zeroday.cloud/blog/postgres-xint
  • كود مصدر pgcrypto الخاص بـ PostgreSQL: pgcrypto/pgp-pubenc.c
  • حل الرموز: objdump -t $(which postgres) | grep CurrentUserId

الإزالة

root@kitploit:~
docker compose down -v

قانوني

هذا المختبر مخصص لأبحاث وتعليم الأمن المصرح بها فقط. قم بتشغيله فقط على الأنظمة التي تملكها أو لديك إذن صريح لاختبارها.

تنزيل الأداة