cp 명령어에만 있는 취약점...성공률 낮아서 그런지 패치 나오기 전에 정보 공개
[보안뉴스 문가용 기자] 최근 도커 컨테이너 플랫폼에서 취약점이 발견됐다. 이 취약점을 통해 공격자들은 다른 컨테이너는 물론 호스트 서버와 연결된 파일에 접근할 수 있게 된다고 한다. 문제는 패치가 나오기 전에 취약점의 상세 정보가 먼저 공개됐다는 것이다.

[이미지 = iclickart]
이 취약점은 CVE-2018-15664로 보안 전문가 알레카 사라이(Aleka Sarai)가 처음 발견했다고 한다. 오류가 있는 위치는 도커의 cp 명령어이다. cp 명령어는 파일을 호스트 시스템에서 복사해 컨테이너로 옮길 때 사용하는 것으로, 공격자가 이를 통해 호스트 파일 시스템에 대한 읽기 및 쓰기 권한을 취득할 수 있게 된다.
사라이에 의하면 CVE-2018-15664는 “TOCTOU 버그의 일종”이라고 한다. TOCTOU는 time of check to time of use의 준말이다. “파일을 확인한 시간과, 파일을 사용하는 시간 사이에 변화가 일어나는 것을 말합니다. 즉 안전하고 복사해도 된다는 확인이 떨어졌는데, 갑자기 사용할 때는 그렇지 않게 변하는 것이죠.”
그렇다고 이 취약점이 파일 무결성이나 기밀성에 관한 문제라고만 볼 수는 없다. 공격자가 이 취약점을 성공적으로 익스플로잇 하게 되면 컨테이너 내에 있는 데이터를 마음대로 읽고 쓸 수 있게 됩니다. 즉 취약점 자체가 무결성 문제가 아니라, 무결성 문제를 야기하는 취약점이라는 겁니다.“ 보안 업체 캡슐8(Capsute8)의 부회장인 켈리 쇼트리지(Kelly Shortridge)의 설명이다.
다행인 건 원격에서 익스플로잇이 가능한 취약점은 아니라는 것이다. “공격을 성공시키려면 서버에서 돌아가는 컨테이너를 하나 소유하고 있어야 합니다. 또한 그 컨테이너에서 운영되는 코드에 대한 제어권도 있어야 합니다. 게다가 단지 cp 명령어만 남용할 수 있는 것이므로 공격 표면이 넓은 것도 아닙니다.”
그런데 재미있는 건, 이렇게 취약점 익스플로잇이 어렵기 때문에 도커 커뮤니티가 취약점에 대한 세부 공개를 아무렇지도 않게 공개하고 공유하고 있다는 것이다. 패치가 나오기도 전부터 말이다. “도커를 사용하는 사람들이 모인 커뮤니티 분위기를 보고 깜짝 놀랐습니다. 버그 정보가 상세하게 공유되고 있더군요. 아무런 위기감도 없이요. 위험성이 낮다는 결론이 나온 것으로 보였습니다.”
패치는 아직도 나오지 않은 상태다. 브루트포스 공격에 대한 방어만 제대로 하면 위험성을 어느 정도 낮추는 게 가능하다고 한다. “다행히 cp 명령은 자동화 프로세스에서 그렇게 많이 사용되지는 않습니다. 어쩌면 아예 cp 명령어 사용 자체를 막아두는 것도 좋은 방법일 수 있습니다.” 쇼트리지의 설명이다.
큐버네티스에서도 도커의 cp 명령을 사용할 수 있다는 걸 기억해야 한다고 쇼트리지는 추가로 지적했다. “그렇다는 건 취약점 패치로 문제가 완전히 사라지지 않을 가능성이 있다는 뜻이죠. 그러나 이번 취약점으로 인해 대대적인 패닉 사태가 일어나야 하는 건 아닙니다. 확실히 공격 성공 가능성이 낮긴 합니다. 주의를 기울이는 것만으로도 충분한 것입니다.”
3줄 요약
1. 도커 컨테이너에서 발견된 취약점, 호스트와 다른 컨테이너 내 파일에 접근 가능케 해줌.
2. cp 명령어에만 있어 공격 표면이 넓다고 할 수 없음. 그래서 취약점 정보 공유가 활발함.
3. 공격 성공률 낮아 보이지만, 조심해야 하는 건 맞음. 다만 지나치게 걱정할 필요는 없음.
[국제부 문가용 기자(globoan@boannews.com)]
<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>