مشکل امنیتی حاد سیستم عامل لینوکس/مک

Friday, September 26, 2014

مشکل امنیتی BASH برای سیستم عامل لینوکس می باشد ، این مورد در تاریخ 25 سپتامبر شناسایی شده است و برروی تمامی سرور های میزبانی وب ابری میزبان پایتخت رفع شده است، لذا صاحبان سرور مجازی لینوکس می بایست اقدام به رفع مورد خود از طریق آموزش زیر نمایند.
 
Bash چیست ؟
Bash یا Bourne-again shell سیستم shell اصلی سیستم عامل Ubuntu می باشد. هنگامیکه شما از طریق Terminal یعنی terminal emulator , tty , ssh به سیستم عامل دسترسی پیدا می کنید شما معمولا دستورات bash را می خوانید و اجرا می کنید. حتی اگر شما به terminal دسترسی ندارید شما bash را برروی سیستم عامل خودتان دارید.
 
توضیحات حفره:
یک عیب یا ایراد در کارکرد bash یافت شده است که مقادیر ارزش گذاری شده در environment را به environment دیگری منتقل می کند. هکر یا حمله کننده می تواند از این ویژگی استفاده کند و اقدام به دور زدن محدودیت های environment برای اجرا کردن دستورات shell قبل از اینکه محدودیت از سوی environment اعمال گردد نماید. بسیار سرویس و اپلیکشین به هکر اجازه می دهند به صورت مخفیانه و unauthenticated دسترسی به مقادیر environment داشته باشند و توسط exploit ها برای شما مشکل بیافرینند.
 
چگونه این exploit برروی من تاثیر می گذارد ؟
مقاله زیر را دنبال نمایید.
http://askubuntu.com/questions/528101/what-is-the-cve-2014-6271-bash-vulnerability-and-how-do-i-fix-it

سیستم عامل های تحت تاثیر:

1- Ubuntuhttp://www.ubuntu.com/usn/usn-2362-1/

2- CentOS: Versions 5,6,7: http://lists.centos.org/pipermail/centos/2014-September/146099.html 

3- Debianhttps://security-tracker.debian.org/tracker/CVE-2014-6271

4- MacOshttp://alblue.bandlem.com/2014/09/bash-remote-vulnerability.html


رویه شناسایی مشکل

دستور زیر را در ssh وارد نمایید (پیشنهادی):

for i in `type -a bash| egrep -o "/.*"`; do /bin/echo -n "$i " ; x="() { :; };t=un" $i -c 'echo  is ${t}safe' 2>/dev/null; done

یا این یکی:

 env x='() { :;}; echo vulnerable' bash -c "echo hello"

 - اگر سیستم شما  آسیب پذیر باشد شما مقدار زیر را مشاهده می کنید:

vulnerable
hello

- اگر سیستم شما آسیب پذیر نباشد, شما مقدار زیر را مشاهده می کنید:

bash: warning: x: ignoring function definition attempt
bash: error importing function definition for`x'
hello

For CVE-2014-7169

دستور زیر را در ssh وارد نمایید (پیشنهادی):

cd /tmp; rm -f /tmp/echo; env 'x=() { (a)=>\' bash -c "echo date"; cat /tmp/echo

- اگر سیستم شما  آسیب پذیر باشد شما مقدار زیر را مشاهده می کنید:

   # cd /tmp; rm -f /tmp/echo; env 'x=() { (a)=>\' bash -c "echo date"; cat /tmp/echo
   bash: x: line 1: syntax error near unexpected token `='
   bash: x: line 1: `'
   bash: error importing function definition for `x'
   Fri Sep 26 09:53:04 EDT 2014

- اگر سیستم شما آسیب پذیر نباشد, شما مقدار زیر را مشاهده می کنید:

   # cd /tmp; rm -f /tmp/echo; env 'x=() { (a)=>\' bash -c "echo date"; cat /tmp/echo
   date
   cat: /tmp/echo: No such file or directory

 

راه حل:

1- Ubuntu:
http://www.ubuntu.com/usn/usn-2362-1/

برای بروزرسانی سیستم خودتان طبق آموزش روبرو عمل نمایید.: https://wiki.ubuntu.com/Security/Upgrades.

شما از طریق دستور زیر می توانید اقدام به بررسی نسخه نمایید.:

dpkg -s bash | grep Version

برای بروزرسانی و نصب نسخه جدید bash:

sudo apt-get update && sudo apt-get install bash

 

2- CentOS:

شما از طریق دستور زیر می توانید اقدام به بررسی نسخه نمایید.:

rpm -qa bash  

بروزرسانی بسته Bash:

yum update bash

3- Debianhttps://security-tracker.debian.org/tracker/CVE-2014-6271 

برای بروزرسانی و نصب نسخه جدید bash:

sudo apt-get update && sudo apt-get install bash

 

4- MacOS:برای بروزرسانی سیستم خودتان طبق آموزش روبرو عمل نمایید.: http://alblue.bandlem.com/2014/09/bash-remote-vulnerability.html

 

منابع:

 

« برگشت