HAURI

전체메뉴 열기

Boan News

보안뉴스 매체사 기사

보안매체 기사

한 보안 전문가, 독자적으로 알파인 리눅스에서 취약점 발견
등록일 :
2018.09.19
알파인 리눅스, 용량 작고 부팅 빨라 도커와 함께 널리 사용돼
가장 치명적인 버그는 중간자 공격 통해 코드 실행하게 해주는 것


[보안뉴스 문가용 기자] 한 보안 전문가가 알파인 리눅스(Alpine Linux)에서 임의 코드 실행 등을 포함한 몇 가지 취약점을 발견했다. 알파인 리눅스는 도커(Docker)와 함께 흔히 사용되는 리눅스의 일종이다.

[이미지 = iclickart]


알파인 리눅스는 musl과 비지박스(BusyBox)를 기반으로 하고 있으며, 용량이 매우 작은 것이 특징이다. 부팅 시간이 빠르다는 장점 때문에 콘테이너, 도커와 함께 인기리에 사용되고 있기도 하다.

알파인의 기본 패키지 관리자를 APK라고 하는데, 먼저는 여기서 몇 가지 버그가 발견됐다. 이를 발견한 건 보안 전문가 맥스 저스틱즈(Max Justicz)로, “이 버그들 중 가장 중요한 건 네트워크 내에서 중간자 공격을 통해 임의의 코드를 실행시킬 수 있게 해주는 취약점”이라고 짚는다.

“왜 이 오류가 특히 나쁘냐면, 디폴트 리포지토리들을 사용할 때 패키지들이 TLS를 통해 제공되지 않기 때문입니다.” 저스틱즈의 설명이다. “공격자가 알파인 기반 도커 하나를 겨냥해 침해하고, 코드를 실행시킬 수 있게 됩니다. 이에 관해서는 영상 자료를 함께 공개했습니다.” 해당 영상 주소는 이것(https://justi.cz/assets/apkpoc.mp4)이다.

문제의 근원에 대해 저스틱즈는 다음과 같이 설명한다. “APK 패키지 관리자는 패키지를 먼저 풀고, 그 다음 해시를 확인합니다. 패키지라고 하면 보통 gzip으로 압축된 tar 파일을 말하며, 이 파일들은 apk의 형태로 배포됩니다. 아무튼 확인한 해시 값이 맞지 않으면, APK가 압축 해제된 모든 파일과 디렉토리들의 연결을 끊는 작업을 시작합니다.” 압축을 어딘가에 다 풀어놓고, 확인 후 맞지 않으면 그제야 허둥지둥 수습을 한다는 것이다.

그런데 APK에는 커밋 훅(commit hook)이라는 기능이 있다고 그는 설명을 이어간다. “이걸 활용해 공격자들이 지속적인 임의 파일 쓰기 기능을 코드 실행으로 변환할 수 있게 됩니다. 단 관련된 파일들이 클린업 후에도 살아남았을 때의 이야기입니다. 그렇게 되면 설치 프로세스가 실패한 apk 패키지에서 빠져나가기 전에 파일 실행을 할 수 있게 됩니다.”

그 다음으로는 APK 프로세스가 성공적으로 종료되어야 한다. 그러려면 종료 코드가 0이 되어야 한다. “보통은 APK가 설치 실패한 패키지의 숫자와 같은 수의 종료 코드를 되돌려줍니다. 이 경우 최소 1이겠죠. 그렇다면 성공적인 종료가 어렵게 됩니다.”

하지만 이 값을 오버플로우 하는 게 가능하다. 또한 오류의 숫자 % 256 == 0이면, 프로세스에서 되돌아오는 종료 코드 값이 0이 된다. 즉 공격이 성공적으로 진행된다는 뜻이다. 심지어 저스틱즈는 셸코드를 작성해 exit(0)을 직접 메모리에 삽입한 후 실행시킬 수도 있었다고 한다.

저스틱즈가 발견하고 공개한 취약점들은 알파인 리눅스 사용자 전부를 잠재적인 위험에 노출시키고 있다. 알파인으로 만든 콘테이너 이미지들은 전부 다시 구축하는 편이 안전할 것으로 보인다.

알파인 리눅스는 그리 널리 사용되는 건 아니지만, 그래도 족히 수백에서 수천 개의 조직에서는 사용되고 있는 것으로 알려져 있다. 저스틱즈는 “그 중 한두 군데에서는 버그바운티를 진행하고 있을 수도 있다”며 기대감을 나타내기도 했다. 그는 위에 언급된 코드 실행 취약점을 두고 ‘치명적으로 심각한’ 버그라고 표현했다.

3줄 요약
1. 리눅스의 수많은 버전 중 도커 및 콘테이너와 함께 즐겨 사용되는 알파인 버전에서 취약점 나옴.
2. 특히 APK라는 요소에 있는 코드 실행 취약점이 심각한 것으로 보임.
3. 알파인 리눅스 기반 콘테이너 이미지들, 전부 재구축 하는 게 안전할 것.

[국제부 문가용 기자(globoan@boannews.com)]

<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>

  • - 본 정보에 대한 저작권은 '보안뉴스'에게 있으며 이에 무단 사용 및 재배포를 금지합니다.
  • - 본 정보에 대한 이용문의는 "보안뉴스(www.boannews.com)"로 문의하여 주십시오.

Top