آسیب‌پذیری وصله نشده ۱۵ ساله پایتون سبب اجرای کد می‌شود

دسته بندی ها : آسیب پذیری, اخبار 1 مهر 1401 آپا دانشگاه تبریز 153 بازدید
پایتون

آسیب پذیری CVE-2007-4559 در زبان برنامه نویسی پایتون که سال ۲۰۰۷ نادیده گرفته شده بود، اکنون مورد توجه قرار گرفته است. این آسیب پذیری احتمالا بر بیش از ۳۵۰۰۰۰ مخزن منبع باز تاثیر گذاشته و می‌تواند باعث اجرای کد شود.

تنها راه‌حل ارائه شده برای این آسیب پذیری به‌روزرسانی مستندات است که به توسعه‌دهندگان در مورد این خطر هشدار می‌دهد.

آسیب‌پذیری پایتون از سال ۲۰۰۷ پچ نشده

این یک اسیب‌پذیری پیمایش مسیر است که در پکیج tarfile پایتون، در کدی که از تابع پاکسازی نشده ()tarfile.extract و یا از پیش‌فرض‌های داخلی ()tarfile.extractall استفاده می‌کند، وجود دارد و به مهاجم این امکان را می‌دهد که فایل های دلخواه را بازنویسی کند.

این نقص از قسمتی ناشی می شود که کد موجود در تابع استخراج در ماژول tarfile پایتون به طور صریح به اطلاعات موجود در شی TarInfo اعتماد می کند “و به مسیری که به تابع استخراج و نام در شی TarInfo ارسال می شود می پیوندد.”

CVE-2007-4559_پایتون

یک هفته پس از افشای این نقص، ردیاب باگ پایتون با پیامی اعلام کرد که این مشکل حل شده است و راه حل به روز رسانی اسنادی است که هشدار می‌دهند: “ممکن است استخراج آرشیو از منابع نامعتبر خطرناک باشد.”

محققان Trellix تخمین می‌زنند که این آسیب‌پذیری، ۳۵۰۰۰۰ پروژه نرم‌افزاری، اعم از منبع باز و بسته را تحت تاثیر قرار داده است. آن‌ها ۱۷۵ مورد از مخزن ها را به صورت دستی بررسی کردند تا ببینند آیا تحت تأثیر قرار گرفته‌اند یا خیر. طی بررسی های انجام شده ۶۱ درصد از آنها آسیب پذیر بودند. پس از اجرای یک بررسی خودکار بر روی مخازن دیگر درصد پروژه های آسیب‌پذیر به ۶۵٪ افزایش یافت که نشانگر یک مشکل اساسی است.

با این حال، نمونه کوچک تنها به عنوان پایه ای برای رسیدن به تخمینی از تمام مخازن تحت تاثیر موجود در گیت هاب عمل کرد.

Trellix با استفاده از یک نرخ آسیب‌پذیری که به صورت دستی ۶۱% تأیید شده، تخمین می‌زند بیش از ۳۵۰۰۰۰ مخزن آسیب‌پذیر وجود دارد که بسیاری از آنها توسط ابزارهای یادگیری ماشین مانند (GitHub Copilot) استفاده می‌شوند. این ابزارها به کمک توسعه‌ دهندگان می‌آیند تا پروژه را سریع‌تر تکمیل کنند.

GitHubCopilot کد پایتون
چنین ابزارهای خودکاری برای ارائه گزینه های «تکمیل خودکار» به کد صدها هزار مخزن وابسته هستند. اگر کد ناامنی ارائه کنند، این مشکل بدون اینکه توسعه‌دهنده بداند به پروژه‌های دیگر منتقل می‌شود.

با نگاهی بیشتر به مشکل، می‌توان دریافت که این کد منبع باز که دارای آسیب پذیری CVE-2007-4559 است، تعداد زیادی از صنایع را در بر می‌گیرد. همانطور که انتظار می رفت، بخش توسعه بیشترین تأثیر را از این نقص داشته و پس از آن فناوری یادگیری ماشین و وب قرار دارد.

CVE-2007-4559AcrossIndustries

بهره برداری از CVE-2007-4559 در پایتون

یکی از محققان trellix مراحل ساده بهره‌برداری از CVE-2007-4559 در نسخه ویندوز Spyder IDE، که یک محیط توسعه یکپارچه چند پلتفرمی منبع باز برای برنامه‌نویسی علمی است، شرح داد.

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

همچنین Trellix وصله هایی را برای بیش از ۱۱۰۰۰ پروژه ایجاد کرده است. اصلاحات در قالب یک پکیج از مخزن تحت تاثیر قرار گرفته در دسترس خواهند بود و بعداً از طریق درخواست های pull به پروژه اصلی اضافه خواهند شد.

به دلیل تعدد مخازن آسیب‌پذیر، محققان انتظار دارند که بیش از ۷۰۰۰۰ پروژه در چند هفته آینده اصلاحیه دریافت کنند. با این حال رسیدن به حالت ۱۰۰% ، یک چالش سخت است، زیرا درخواست های ادغام نیز باید توسط مسئولین پذیرفته شوند.

اخبار آسیب‌پذی‌ها را از وبسایت آپا بخش آسیب‌پذیری‌ها دنبال کنید.

 

راه آسان‌تری برای ارتباط با کاربران‌مان پیدا کرده‌ایم :) عضویت در کانال

نظرات کاربران

    دیدگاهتان را بنویسید

    نشانی ایمیل شما منتشر نخواهد شد.

    لینک کوتاه :