یک دانشمند امنیت سایبری درباره امکان سوءاستفاده از فرایند نصب ماژول در پایتون هشدار داد.
منبع : مرکز مدیریت راهبردی افتا
یک دانشمند امنیت سایبری درباره امکان سوءاستفاده از فرایند نصب ماژول در پایتون هشدار داد.
به گزارش افتانا (پایگاه خبری امنیت فناوری اطلاعات)، زبان برنامهنویسی پایتون برای توسعهدهندگان قابلیتی را فراهم کردهاست تا بتوانند بستههایی را در برنامه خود نصب کنند تا عملکرد آن را گسترش دهند. زمانی که یک برنامه اجرا میشود، کد موجود در بسته نصب شده نیز همانطور که انتظار میرود اجرا میشود.
پژوهشگری به نام mschwager، یک روش حمله را تشریح کرد که از فایل setup.py موجود در ماژولهای پایتون سوءاستفاده میکند تا کد دلخواه مهاجم را پس از نصب یک بسته، اجرا کند.
با استفاده از این روش، مهاجم کد مخربی را در یک بسته قرار میدهد تا بتواند آن را با دسترسی روت اجرا کند. باید گفت که تمامی بستهها، نیازی به دسترسی تا این سطح (روت) ندارند. این پژوهشگر کد اثبات مفهومی (PoC) این نوع حمله را منتشر کردهاست.
ماژولهای پایتون معمولا از طریق pip نصب میشود. ابزار pip فایل setup.py را اجرا میکند تا ماژول مدنظر را در برنامه نصب کند. مهاجم میتواند با سوءاستفاده از آن، کد مخرب را در setup.py قرار دهد که باعث میشود بدافزار بدون اطلاع کاربر حتی اگر بسته موردنظر یا خود پایتون مورد استفاده قرار نگیرند، نصب شود.
روش دیگر، بارگذاری کدهای مخرب در کتابخانهها و منابع بستههای پایتون مانند PyPi است. مهاجمان میتوانند ماژولهایی مشابه نام ماژولهای قانونی ایجاد کنند و کد مخرب خود را در آن قرار دهند و سپس آن را در منبع بارگذاری کنند. با توجه به اینکه کاربر تنها به نام بسته توجه میکند و کد آنرا بررسی نمیکند، کد مخرب را دریافت میکند. بهدلیل عدم بررسیهای امنیتی در منابع ماژولها، بارگذاری محتوای مخرب امکانپذیر خواهدبود.
این پژوهشگر به توسعهدهندگان توصیه کردهاست تا نسبت به ماژولهای پایتون که در سیستم نصب میکنند، بهخصوص ماژولهایی که به دسترسی روت احتیاج دارند، هوشیار باشند.