배시 취약점 '셸쇼크' 비상…왜 위험한가

일반입력 :2014/09/26 15:37    수정: 2014/09/26 15:38

손경호 기자

해외 보안 소식 중 가장 비중 있게 다뤄지고 있는 것은 배시(Bash)에서 발견된 취약점이다. 배시는 자유소프트웨어 진영인 그누(GNU) 프로젝트가 개발한 프로그램(셸)으로 출시 25년이 됐다. 현재 배시 셸은 리눅스는 물론 유닉스가 기반인 맥 OS X 등 운영체제(OS)에서 기본 설정으로 활용되고 있다.

이 셸은 윈도에서 CMD를 입력하면 뜨는 도스(DOS) 창과 유사한 기능을 한다. 이곳에 명령어를 입력하면 네트워크가 제대로 작동하고 있는 지를 확인하는 핑 테스트, IP주소 확인, 해당 PC 내 파일 검색 및 실행 등 기능으로 활용할 수 있다.

배시는 오래 사용된 만큼 시스템 관리자들에게 인기있는 원격관리 프로그램이다. 배시 셸을 실행시켜 웹서버에 대한 설정을 변경하거나, 분석, 복구, 업그레이드 등 기능을 수행하기 때문이다.

문제는 새로 발견된 배시 취약점인 일명 '셸쇼크(Shellshock)'를 활용해 리눅스/유닉스 기반 서버에 접속하는 PC, 모바일기기에 악성코드를 심거나 정보를 탈취하는 일이 가능해진다는 점이다. 웹브라우저를 통해 사용자가 접속하는 웹서버 자체가 공격 대상이 될 수도 있고, 이 웹서버가 해킹됐을 경우 여기에 접속한 사용자들도 공격 피해를 입을 수 있다.

이 때문에 해외 보안 전문가들은 셸쇼크가 과거 '웜' 수준의 공격을 가능케 한다고 설명했다. 웹서버와 연결된 다른 서버들로 해당 취약점을 악용한 악성코드가 급속도로 퍼질 수 있기 때문이다.

외신에 따르면 인터넷 연결에 사용되는 전 세계 웹서버 중 절반 가량이 잠재적인 위험에 노출될 수 있다. 윈도를 제외한 리눅스, 유닉스(맥 OS X 포함) OS가 모두 공격 대상이 될 수 있다. 윈도는 배시와 경쟁관계에 있는 유사 셸인 'Almquist 셸'을 활용하고 있어 취약점이 직접 영향을 미치지는 않는다.

김동우 이글루시큐리티 선행보안기술연구소장은 배시 셸은 공통게이트웨이인터페이스(CGI)로 프로그래밍을 할 때 주로 사용되는 것으로 리눅스 서버의 경우 별다른 설정을 하지 않았다면 기본적으로 이 셸을 사용하고 있다고 설명했다.

CGI는 웹서버와 외부 프로그램 사이에 정보를 주고 받기 위한 표준화된 프로그래밍 방식이다. 김 소장에 따르면 현재 대부분 웹사이트가 자바 스크립트를 기반으로 작성됐기 때문에 주로 과거에 만들어진 웹사이트 등이 CGI를 활용하고 있다.

더구나 무선랜 공유기가 해당 기능을 활용할 경우에는 여기에 접속한 사용자들의 노트북, 스마트폰 등을 공격 대상으로 삼을 수 있다. 현재로서는 맥북, 아이폰에만 해당되는 얘기다.

무선랜 공유기는 사용자들의 기기가 접속신호를 보내면 자동으로 IP를 배정해 주는 DHCP서비스를 제공한다. 공유기 혹은 이와 연결된 DHCP서버가 해킹될 가능성도 배제할 수 없다.

현재 이 취약점을 해결하기 위해 리눅스, 레드햇 등에서 임시패치를 내놓았지만 문제를 완벽하게 해결하지는 못했다. 이 취약점은 'CVE-2014-6271'이라는 이름으로 공식분류됐으나 최근 임시패치에서도 보안 문제가 완벽히 해결하지 못해 'CVE-2014-7169'라는 또다른 취약점에 대한 분류가 나오기도 했다. 새로운 분류에는 원격에서 공격자가 대상 파일이나 특정 시스템에 영향을 줄 수 있다며, 아파치 HTTP 서버, DHCP 서버 해킹 등이 발생할 수 있다고 설명했다. 이 취약점은 CVE 상 심각성이 높은 고위험군(CVSS 심각도 10점)으로 분류됐다.

관련기사

배시 셸은 광범위하게 오랫동안 사용돼 온 탓에 패치가 존재한다고 하더라도 일일이 시스템을 바꿔줘야 한다는 점도 어려움으로 지적된다. 외신에 따르면 일부 해외 보안 전문가는 이 취약점을 모두 고치기까지 수 년이 걸릴 수도 있다고 우려했다.

한국인터넷진흥원(KISA) 취약점분석팀 박진완 팀장은 CGI 기반으로 한 웹서버라면 악성코드를 유포하는 기능을 가졌을 가능성이 크다며 (기존 패치에 더해) 추가적인 보안 패치가 개발되고 있는 것으로 파악하고 있다고 말했다.