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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
nosurf-cve-2025-46721 — إثبات المفهوم وتحليل لـ CVE-2025-46721، وهي ثغرة من نوع CSRF في مكتبة nosurf للغة Go بسبب فشل فحوصات نفس المصدر، مع عرض استغلال عملي. | Kitploit
أدوات/GitHubGitHub/justinas/nosurf-cve-2025-46721
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبأمن الويباختبار الاختراقالتعلم والتعليم
GitHubjustinas/nosurf-cve-2025-46721

nosurf-cve-2025-46721

إثبات المفهوم وتحليل لـ CVE-2025-46721، وهي ثغرة من نوع CSRF في مكتبة nosurf للغة Go بسبب فشل فحوصات نفس المصدر، مع عرض استغلال عملي.

عرض المستودع
منذ سنة واحدةلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2025-46721: ثغرة CSRF بسبب فشل عمليات التحقق من نفس المصدر في justinas/nosurf

  • ماذا حدث؟
  • هل أنا متأثر؟
  • إثبات المفهوم
  • التصحيح
  • الشكر والتقدير

ماذا حدث؟

جميع إصدارات nosurf قبل 1.2.0 فشلت في تطبيق عمليات التحقق من نفس المصدر (same-origin checks) للطلبات الواردة. حدث هذا بسبب الاعتماد على الحقل .URL.Scheme من نوع net/http.Request الخاص بمكتبة Go القياسية للتأكد أولاً من أن الطلب يُقدّم عبر HTTPS، وعندها فقط يتم تطبيق عمليات التحقق من نفس المصدر. الحقل المذكور Scheme لا يتم تعبئته بواسطة خادم HTTP الخاص بلغة Go للطلبات الواردة:

root@kitploit:~
بالنسبة لطلبات الخادم، يتم تحليل URL من URI
المقدّم في سطر الطلب (Request-Line) المخزّن في RequestURI.  بالنسبة لمعظم الطلبات، ستكون الحقول الأخرى غير Path و RawQuery فارغة.

https://pkg.go.dev/net/http#Request

حيث أنه في الحالة العامة، لا يمكن لـ Go تحديد ما إذا كان الطلب يحدث عبر TLS (بسبب وجود وكيل عكسي يُنهي TLS، وما إلى ذلك).

قد يسمح هذا للمهاجمين بإرسال طلبات عبر الأصل (cross-origin) غير آمنة إلى موقعك الإلكتروني.

هل أنا متأثر؟

بالإضافة إلى تنفيذ عمليات التحقق من نفس المصدر، يحمي nosurf أيضًا من CSRF باستخدام نمط إرسال ملف تعريف الارتباط المزدوج (double-submit cookie pattern). هذا يعني أنه، لتنفيذ طلب عبر الأصل يُغيّر البيانات بنجاح، يحتاج المهاجم أيضًا إلى التحكم في محتويات صفحة على موقعك الإلكتروني، أو على نطاق فرعي لموقعك الإلكتروني. يمكن تحقيق ذلك عبر ثغرة XSS، أو إذا منحت التحكم في محتوى HTML للمستخدمين على موقعك الإلكتروني عمدًا (على سبيل المثال، أنت مزود استضافة example.com يسمح للمستخدمين باستضافة مواقعهم على alice.example.com).

يوضح إثبات المفهوم (PoC) في هذا المستودع مثل هذا الهجوم في الحالة الأخيرة، حيث يتحكم المهاجم في المحتوى على نطاق فرعي من النطاق الرئيسي للموقع.

إثبات المفهوم

يتطلب Go و Caddy. قم بتشغيل الخوادم يدويًا:

root@kitploit:~
$ go run attacker.go & go run target.go & caddy run

أو عبر Process Compose:

root@kitploit:~
$ process-compose

قم بزيارة https://attacker.target.localhost. انقر على الزر لإرسال النموذج إلى https://target.localhost ولاحظ أن الطلب يتم بنجاح.

التصحيح

تم إصدار إصلاح لهذه المشكلة في nosurf 1.2.0.

الشكر والتقدير

شكرًا لـ Patrick O'Doherty على الإبلاغ عن المشكلة.

تنزيل الأداة