보안 / 애플리케이션 / 오픈소스

'셸쇼크' 배시 취약점 확산과 최신 패치의 문제점

Steve Ragan | CSO 2014.09.29
9월 24일, '셸쇼크(Shellshock)'에 대한 오스서트(AusCERT)와 멀웨어머스트다이(MalwareMustDie)의 첫번째 보도 이후 이 문제는 엄청난 파장을 낳고 있다.

셸쇼크는 GNU 배시(Bash) 1.14~4.3 버전에 존재하는 취약점이다.

GNU 배시 자체와 그것이 적용된 기기와 애플리케이션의 규모를 고려해볼 때 셸쇼크의 타격 범위는 하트블리드(Heartbleed)를 넘어설 것으로 전망되고 있다.

코어 시큐리티(Core Security)의 플라비오 드 크리스토파로는 "이 버그에 주목할 필요가 있다. 물론 이것이 환경에 미칠 영향이 하트블리드가 입힌 그것에 비해 클 것이라 확언하긴 어렵다. 개인적인 시각으로는 하트블리드로 인한 피해가 조금 더 클 것이라 생각한다. 이로 인해 영향을 받는 컴포넌트와, SSL의 광범위한 활용도가 그 근거다"고 논평했다.

기본적으로 이 취약점은 웹 서버들에서 쉽게 발견될 것이지만 사실 센트OS(CentOS) 버전 5~7, 우분투(Ubuntu) 10.04, 12.04 및 14.04(모두 LTS 버전이다), 드비안(Debian), 맥 OS X(Mac OS X), 레드 햇 엔터프라이즈 리눅스(Red Hat Enterprise Linux) 4~7까지, 취약하지 않은 것은 없다.

이지 솔루션즈(Easy Solutions) CTO 다니엘 잉그발드슨은 "이 취약점의 공략은 인터넷을 통합 접근이 가능한 배시 기능성에 의해 이뤄진다. 배시의 문제는 그것이 모든 곳에 이용된다는 데 있다. 리눅스 기반 시스템 상에서 배시는 기본적인 셸로 설정되어 있으며 따라서 웹을 경유하는 모든 프로세스는 입력과 구동, 명령(핑(ping), 세드(sed), 그렙(grep) 등)을 위해 셸 호출을, 즉 배시 호출을 필요로 한다"고 설명했다.

잉그발드슨은 "이 취약점을 이용해 공격자는 환경 변수를 경유해 배시에 비밀번호 파일 다운로드, 원격 셸 구동 등 자신이 원하는 명령을 손쉽게 원격으로 주입할 수 있다"고 덧붙였다.

문제가 확인되자 (애플을 제외한) 모든 주요 리눅스/유닉스 개발업체는 즉각적으로 패치를 배포했지만, 이것 모두가 완벽히 기능하는 것은 아니었다.

지난 목요일 레드 햇은 기존에 배포된 패치들의 불완전성을 지적하고 나섰다. 하지만 이런 지적 속에서도 개발업체들은 사용자들에게 추가적 업데이트를 기다리기보다는 현재의 패치를 하루 빨리 적용할 것을 촉구하고 있는 상황이다.

GNU 배시의 적용 범위에 대한 논쟁은 취약점 문제가 불거지기 시작한 이래로, 계속 진행되고 있다.

단순히 환경 변수를 경유한 저장 데이터에의 접근을 GNU 배시(/bin/sh)에 의존한다는 이유만으로 취약점에 노출된 웹 애플리케이션이 수천에 달하고 있지만, 여기에서 나아가 셸쇼크의 영향 범위는 웹 전반의 수백만 웹사이트와 기기들까지 확산 가능하다는 우려의 목소리도 들려온다.

데스크톱에서 태블릿까지의 각종 기기, 그리고 여타 플랫폼까지 잠정적 피해자로 분석되고 있는 이유는 GNU 배시가 레거시 코드로 존재하지만, 이것을 포함하는 기기들은 기본적으로 셸쇼크 취약성 패치를 업데이트할 수단을 가지지 못한 채 소비자들에게 전달된다는데 있다.

사실 피해의 가능성이 확산한 데에는 보안 문제에 안일하게 대응한 우리의 책임이 적지 않다. 전구와 온도 조절기, 스트리밍 미디어 센터(streaming media center)에 패치를 적용해야 한다는 생각은 아무도 못해봤을 것이다.

드 크리스토파로는 사용자들에게 패치 업데이트의 중요성을 강조했다. 드 크리스토파로는 사용자들에게 자신들이 공용 게이트웨이 인터페이스(Common Gateway Interface, CGI)를 구동하고 있지 않은지 확인해 볼 것을 조언했다(CGI는 취약점의 원격 공격을 보다 용이하게 한다).

하지만 이것이 시스템 취약점을 판단하는 유일한 기준은 아니라는 사실 역시 기억해야 한다. 다시 말해 CGI가 없다고 수정할 것이 없음을 의미하지는 않는 것이다.

드 크리스토파로는 "CGI 구동 확인은 기본적인 과정일 뿐이다. C++, 파이썬(Python), PHP 등 배시를 호출하는 모든 애플리케이션이 위험성을 지니고 있다. 여타 애플리케이션 보조 DHCP, SSH(제한된 셸) 역시 예외는 아니다. 공격은 원격으로만 이뤄지는 것도 아니다. 유닉스/리눅스 배포자들이 완벽한 해결책을 찾아낸다 해도 기업들은 자신의 구형 시스템, 그리고 배시를 구동하는 카메라나 라우터, ICS 등의 임베디드 기기들에 기반한 시스템들에 패치를 적용하느라 애를 먹어야 할 것이다"고 설명했다.

세월이 지나면 셸쇼크 버그를 활용한 공격은 웹 서버, 네트워크와 같은 이미 알려진 표면들을 넘어 전혀 예상치 못한, 예를 들어 IoT와 같은 곳에서도 모습을 드러낼 것이다. 이 과정이 자동화될 가능성도 배제할 수 없다. 이미 한 연구원에 의해 셸쇼크를 웜화(wormable)한 사례가 보고되기도 했다.

현재로써는 관리자들에게 전할 수 있는 위안의 말은, 셸쇼크 공략 시도가 시끄럽게, 즉 포착 가능하게 이뤄지고 있다는 점뿐일 것이다. editor@itworld.co.kr
Sponsored

회사명 : 한국IDG | 제호: ITWorld | 주소 : 서울시 중구 세종대로 23, 4층 우)04512
| 등록번호 : 서울 아00743 등록발행일자 : 2009년 01월 19일

발행인 : 박형미 | 편집인 : 박재곤 | 청소년보호책임자 : 한정규
| 사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.