bash یک پوسته یونیکس و مفسر دستورات خط فرمان است که در اکثر لینوکسها به عنوان پوسته پیشفرض نصب میشود. علاوه بر لینوکس در سیستم عامل MAC OSX نیز bash پوسته پیش فرض است.
یک آسیب پذیری در bash اعلام شدهاست، این حفره به کسانی که به متغییرهای محلی سیستم دسترسی دارند اجازه میدهد سیستم محدود کننده متغییرهای محلی bash را رد کند، با وارد کردن کدهای bash آسیبزا در متغییرهای محلی سیستم و اجرای این کدها به سیستم، دسترسی بگیرند.
این آسیبپذیری همه محصولاتی که از bash استفاده میکنند (همه مخصولاتی که bash را اجرا میکنند) را تحت تاثیر قرار میدهد.
آیا bash من آسیبپذیر است؟
برای بررسی آسیبپذیری bash دستور زیر را در bash وارد کنید.
env x='() { :;}; echo vulnerable' bash -c "echo this is a test"
چنانچه خروجی دستور به شکل زیر باشد bash آسیب پذیر است و باید bash را به آخرین نسخه بهروز رسانی کنید.
vulnerable this is a test
اگر با اجرای دستور خروجی زیر را مشاهده کردید BASH آسیب پذیر نیست.
bash: warning: x: ignoring function definition attempt bash: error importing function definition for `x' this is a test
چند نمونه از برنامههای آسیبپذیر:
- وبسرور httpd: اسکرپیتهای CGI میتوانند آسیبپذیر باشند، هنگامی که وبسرور اسکریپت CGI را اجرا میکند برای ارسال دادهها به اسکریپت از متغییرهای محلی استفاده میکند. این متغییرهای محلی ممکن است بوسیله هکر مورد استفاده قرار گیرد.
- ssh: ممکن است مدیر سیستم با استفاده از آپشن ForceCommand دسترسی کاربران را در ssh محدود کرده باشد و کاربر تنها قادر به اجرای برنامههای خاصی مانند git یا rsync باشد. در این موارد کاربر میتواند با دسترسی به متغییرهای محلی هر دستوری را در سرور اجرا کند.
- dhclient: کلاینتهای dhcp تنظیمات شبکه را با استفاده از bash انجام میدهند چنانچه dhcp کلاینت تنظیمات را از یک سرور dhcp که در اختیار هکر است بگیرد میتواند آلوده شود.
- CUPS: سیستم پرینت CUPS نیز با توجه به اینکه بسیار از تنظیمات را در متغییرهای محلی ارسال میکند میتواند آسیبپذیر باشد.
رفع آسیبپذیری bash:
برای رفع آسیبپذیری کافیاست bash سیتسم خود را به آخرین نسخه آپدیت کنید،
در سیستمهای CentOS برای بهروز رسانی bash دستور زیر را وارد کنید:
yum update bash
در سیستمهای ابونتو برای بهروز رسانی bash دستور زیر را وارد کنید:
apt-get upgrade bash
3 دیدگاه. دیدگاه تازه ای بنویسید
دستتون درد نکنه بابت اطلاع رسانی به موقع
در صورتیکه از ورژنی از اوبونتو استفاده می کنید که بروز رسانی bash آن منتشر نشده می توانید بروش زیر اقدام کنید:
2. Check OS codename (for example: saucy)
lsb_release -a
3. Search & replace codename to newest release (not necessary if trusty already):
sudo sed -i ‘s/saucy/trusty/g’ /etc/apt/sources.list
3. Perform upgrade of bash:
sudo apt-get update
sudo apt-get install –only-upgrade bash
4. Check if problem is fixed:
env X=”() { :;} ; echo busted” `which bash` -c “echo completed”
5. Possibly change back your sources.list by running the sed command again with codenames reversed if you don’t want to use the newest repositories.
sudo sed -i ‘s/trusty/saucy/g’ /etc/apt/sources.list
منبع:http://cloudgames.com/blog/fix-bash-exploit-old-new-releases-ubuntu-apt-get/
سایت majazitv.com
در حالحاضر همه نسخههای رسمی اوبونتو (که پشتیبانی رسمی اوبونتو دارند) آپدیت دادرند. اگر نسخهای از اوبونتو آپدیت نداشتهباشد به این معنیاست که نسخه خیلی قدیمی، به جز این آسیبپذیری هزاران آسیب پذیری دیگر هم خواهد داشت و بهتر است نسخه بهروز آن نصب گردد.