본문 바로가기

보안/보안기술동향

bash 쉘 취약점

bash Shell 취약점


리눅스, 유닉스 계열의 운영체제에서 사용 중인 GNU Bash에서 발생하는 취약점이다.

Bash 환경변수의 함수정의를 이용하여 원하는 코드 추가를 하거나 실행할 수 있는 문제인데, 공격자는 이 취약점을 이용하여 사용자의 컴퓨터에 임의의 코드를 구동할 수 있게 하므로 그 위험도가 무척 높다.


CVE-2014-6271 및 CVE-2014-7169로 취약점이 등록되었고 그 위험도는 가장 높은 단계로 지정되어있어, 취약점에 노출된 모든 기기를 업데이트해줘야 한다. 취약점은 이를 압도하는 보한 결함으로 여겨지고 있습니다.


안드로드이드, MacOS, 리눅스, 유닉스 계열의 많은 시스템이 이 취약점에 노출 될 수 있다.


bash 버전 확인


# echo $BASH_VERSION



bash Shell 취약점  확인 


우선 자신의 운영체제가 Bash Shell 취약점에 노출되었는지를 확인한다.

터미널에서 환경변수 x 를 다음과 같은 함수로 설정한 뒤 실행하여 실행 결과를 확인한다.


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


실행결과가 this is a test 만 출력된다면 취약점을 가지고 있지 않다.


하지만 실행결과가

vulnerable

this is a test

가 출력된다면 취약성을 가지고 있으므로 반드시 패치를 수행하도록 해야 한다.




bash shell 취약점 대응 


센토:           http://lists.centos.org/pipermail/centos/2014-September/146154.html

데비안:         https://www.debian.org/security/2014/dsa-3035
레드햇:         https://rhn.redhat.com/errata/RHSA-2014-1306.html
우분투:         http://www.ubuntu.com/usn/usn-2363-2/