آسیب پذیری اصلاح نشده 15 ساله پایتون به طور بالقوه بیش از 350000 پروژه را تحت تأثیر قرار می دهد

اعتقاد بر این است که بیش از 350000 پروژه منبع باز به طور بالقوه در معرض سوء استفاده قرار می گیرند که نتیجه یک نقص امنیتی در ماژول پایتون است که به مدت 15 سال بدون اصلاح باقی مانده است.

مخازن منبع باز تعدادی از حوزه های صنعتی مانند توسعه نرم افزار، هوش مصنوعی/ یادگیری ماشین، توسعه وب، رسانه، امنیت و مدیریت فناوری اطلاعات را در بر می گیرد.

نقصی که به عنوان CVE-2007-4559 ردیابی می شود (امتیاز CVSS: 6.8)، ریشه در ماژول tarfile دارد، که بهره برداری موفقیت آمیز از آن می تواند منجر به اجرای کد از یک فایل نوشتاری دلخواه شود.

Kasimir Schulz، محقق امنیتی Trellix در یک مقاله گفت: این آسیب‌پذیری یک حمله پیمایش مسیر در توابع استخراج و استخراج در ماژول tarfile است که به مهاجم اجازه می‌دهد تا فایل‌های دلخواه را با افزودن دنباله «..» به نام فایل‌ها در بایگانی TAR بازنویسی کند.

این باگ که در ابتدا در آگوست 2007 فاش شد، به این موضوع مربوط می‌شود که چگونه یک آرشیو tar ساخته شده به‌خصوص می‌تواند برای بازنویسی فایل‌های نوشتنی دلخواه روی یک ماشین هدف به سادگی پس از باز کردن فایل استفاده شود.

به بیان ساده، یک عامل تهدید می‌تواند با آپلود کردن یک فایل مخرب از نقطه ضعف سوء استفاده کند و به طور بالقوه کنترل یک دستگاه هدف را در دست بگیرد.

در اسناد Python برای tarfile آمده است: هرگز آرشیوها را از منابع نامعتبر بدون بازرسی قبلی استخراج نکنید. ممکن است فایل هایی خارج از مسیر ایجاد شوند، به عنوان مثال فایل هایی که با «/» شروع می شوند یا نام فایل هایی که با دو نقطه «..» هستند.

این آسیب‌پذیری همچنین یادآور نقص امنیتی اخیراً فاش شده در ابزار UnRAR RARlab (CVE-2022-30333) است که می‌تواند منجر به اجرای کد از راه دور شود.

Trellix همچنین یک ابزار سفارشی به نام Creosote را برای اسکن پروژه‌های آسیب‌پذیر CVE-2007-4559 منتشر کرده است و از آن برای کشف آسیب‌پذیری در Spyder Python IDE و همچنین Polemarch استفاده می‌کند.

این آسیب‌پذیری بدون کنترل، به طور ناخواسته به صدها هزار پروژه منبع باز و بسته در سراسر جهان اضافه شده است و سطح حمله زنجیره تأمین نرم‌افزاری قابل توجهی را ایجاد کرده است.

منبع:

https://thehackernews.com/2022/09/15-year-old-unpatched-python.html