วิธีตรวจสอบว่าเราโดนเข้าแล้วรึเปล่า
ตรวจสอบ 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:
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