Bash 보안 취약점의 문제와 간단한 해결방법

September 26, 2014 | 1 Minute Read

지난번 openssl 보안 취약점에 이어, 다시 Bash 보안 취약점이 발견되어서 난리가 났습니다. 문제되는 경우는 아주 일반적인 경우 두 가지 정도라고 볼 수 있는데요. 하나는 쉘에 로그인해서 bash 를 사용할 수 있는 경우(호스팅 서버 등)와, 또 하나는 웹 서비스등을 통해 외부 쿼리를 했을 때 fork 등을 통해 자식 프로세스를 만들 수 있는 경우가 있습니다.

자세한 설명

redhat SECURITY BLOG HakSum (한글) 일반적인 경우에는 문제가 될 여지가 크진 않을텐데, 리눅스 서버를 운영하시는 분들 중 호스팅 서비스를 운영하시는 분 또는, 오래된 웹 서버와 코드(특히 CGI)를 사용하시는 경우에는 문제가 생길 가능성이 높습니다.

이 경우 해결책은 두 가지가 있는데요. 하나는 서버에서 bash 를 삭제해버리고 ^_^; 모든 계정의 기본 쉘을 다른 것으로 바꾸는 방법. 하나는 서버 업데이트를 하는 방법이 있겠습니다. 이미 대부분의 배포본에 업데이트가 완료되었구요. 서버 업데이트의 경우 기존에 사용하는 애플리케이션들의 의존성에 문제가 생길 수 있으니, 아래와 같이 간단하게 bash만 업데이트 하셔도 쉽게 해결할 수 있으니 꼭 업데이트 하시길 바랍니다.

레드햇 계열 (페도라, CentOS 등)

yum update bash

데비안 계열 (우분투 등)

apt-get update

apt-get install –only-upgrade bash

추가참고

좀 더 정확하게 설명하자면, 이 버그는 bash 쉘이 최초 실행될 때, 설정되어 있는 환경 설정을 읽으면서 해당 환경설정에 들어있는 익스플로잇 코드가 실행되는 버그입니다. 따라서 bash 바이너리만 바꿔주시면 되고, 시스템이나 서비스들을 재부팅할 필요는 없습니다. (레드햇 문서)