
إثبات مفهوم لـ CVE-2019-14751
إثبات مفهوم لـ CVE-2019-14751
مُحمّل NLTK Downloader قبل الإصدار 3.5 معرّض لثغرة اجتياز الدليل (directory traversal)،
مما يسمح للمهاجمين بكتابة ملفات عشوائية عبر ../ (نقطة-نقطة-شرطة مائلة)
في حزمة NLTK (ملف ZIP) تتم معالجتها بشكل غير صحيح أثناء الاستخراج.
لمزيد من المعلومات انظر https://salvatoresecurity.com/zip-slip-in-nltk-cve-2019-14751/.
ضع index.xml و zip-slip.zip في دليل حيث سيتم تقديمهما بواسطة خادم ويب. اضبط الصلاحيات للسماح بتقديم الملفات.
شغّل NLTK Downloader
$> python3
>>> import nltk
>>> nltk.download()
غيّر القيمة في حقل "Server Index" لتشير إلى index.xml من الخطوة 1
انقر على "Download" لتثبيت الحزمة الخبيثة
تحقق من وجود "/tmp/evil.txt".
$> cat /tmp/evil.txt
This is an evil file
$>
تم إصلاح هذه الثغرة في إصدار NLTK 3.4.5 والإصدارات الأحدث. الالتزام التالي يعالج الثغرة: