วันจันทร์, กันยายน 29, 2557

Fixing bug Shellshock, Aftershock แก้ไขบั๊ก shellshock, aftershock บน OSX

จากข่าวนี้ พบบั๊กร้ายแรงใน Bash ทุกรุ่น ทุกคนควรอัพเกรดด่วน

วิธีตรวจสอบว่าเราโดนเข้าแล้วรึเปล่า

ตรวจสอบ Shellshock (CVE-2014-6271)
 - เปิด Terminal ขึ้นมา 
 - พิมพ์คำสั่งเหล่านี้ กด enter เพื่อทดสอบ

env x='() { :;}; echo vulnerable' bash -c "echo this is a test"


ถ้าได้ผลแบบนี้ แสดงว่าปลอดภัยจาก bug นี้

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

this is a test

ถ้าได้แบบนี้ มีคำว่า vulnerable แสดงว่ายังไม่ปลอดภัยจาก bug นี้ 

vulnerable

this is a test


ตรวจสอบ Aftershock (CVE-2014-7169)

 - พิมพ์คำสั่งเหล่านี้ กด enter เพื่อทดสอบ

env var='() {(a)=>\' bash -c "echo date"; cat echo; rm -f echo

ถ้าได้ผลแบบนี้ แสดงว่าปลอดภัยจาก bug นี้

bash: var: line 1: syntax error near unexpected token `='
bash: var: line 1: `'
bash: error importing function definition for `var'
date
cat: echo: No such file or directory

ถ้าได้แบบนี้ มี วันที่เดือนปี แสดงว่ายังไม่ปลอดภัยจาก bug นี้

bash: var: line 1: syntax error near unexpected token `='
bash: var: line 1: `'
bash: error importing function definition for `var'
Fri Sep 26 09:20:00 UTC 2014



ถ้าใช้ OSX homebrew อยู่แล้ว  สามารถอัพเดต repository เอา bash ตัวที่แก้ไขแล้วมาได้เลย ง่ายๆ
$ brew update
$ brew install bash

หลังจากได้ bash version ที่แก้ bug พวกนี้มาแล้วให้ทำสร้าง symbolic link ให้ osx มาใช้ bash ตัวใหม่ที่มากับ brew 

Backup ของ original ไว้ อุ่นใจ

$ sudo mv /bin/bash /bin/bash_old
$ sudo mv /bin/sh /bin/sh_old

สร้าง link ไปยัง OSX system ให้มันมาใช้ bash ที่ได้จาก brew

$ sudo ln -s /usr/local/Cellar/bash/4.3.25/bin/bash /bin/bash
$ sudo ln -s /usr/local/Cellar/bash/4.3.25/bin/bash /bin/sh


Reboot OSX สักครั้งเพื่อความสบายใจ จริงๆเรียกใช้งาน bash ครั้งต่อไปก้อจะถูกเรียกจาก binary ตัวใหม่ที่เรา upgradeไปแล้ว 


Reference:

  • https://wiki.bitnami.com/security/2014-09-25_Critical_security_issue_in_bash_CVE-2014-6271_CVE-2014-7169?vero_conv=272180757
  • http://security.stackexchange.com/questions/68202/how-to-patch-bash-on-osx-in-wake-of-shellshock/68250#68250




ไม่มีความคิดเห็น :