[보안뉴스 문가용] 다위드 골룬스키(Dawid Golunski)라는 보안 전문가가 MySQL이라는 오픈소스 데이터베이스 소프트웨어에서 치명적인 제로데이 취약점을 발견해 공개했다. 오라클에는 이미 40일 전에 알렸으나 아무런 패치가 나오지 않자 내린 결정이라고 한다.

이번에 공개된 건 두 가지 취약점인데 하나는 원격에서 my.cnf 환경설정 파일을 조작할 수 있게 해주는 것이다. 해당 취약점은 루트 권한을 탈취해 임의의 코드를 실행할 수 있게도 하는 것으로 알려졌다. “즉, MySQL 서버를 완전 장악하는 게 가능하다”는 의미다.
해당 취약점에는 CVE-2016-6662라는 이름이 붙었다. phpMyAdmin과 같은 웹 인터페이스나 네트워크 연결을 통해 인증할 수 있는 공격자라면 누구나 익스플로잇이 가능하다고 한다. 또 다른 취약점은 CVE-2016-6663으로 6662번 취약점의 익스플로잇을 훨씬 용이하게 만들어준다.
골룬스키는 해당 취약점은 5.5, 5.6, 5.7 버전의 MySQL 디폴트 환경설정에서 발견되는 것으로 리눅스의 보안 모듈인 AppArmor와 SELinux가 설치되어 있어도 소용이 없다고 설명한다. 또한 마리아DB(MariaDB)와 퍼코나DB(PerconaDB)라는 데이터베이스에서도 발견이 되는 문제다.
“하지만 해당 솔루션 개발자들은 이 문제를 파악하고 해결을 한 상태입니다. 이미 8월말에 패치가 나왔죠. 오라클에서는 아무런 소식이 없습니다.” 골룬스키가 공식 패치 발표 이전에 취약점을 공개한 건 바로 이 때문이다. “어차피 퍼코나DB와 마리아DB 측이 패치를 공개 발표했기 때문에 취약점이 드러난 것이나 다름이 없습니다.”
대신 골룬스키는 패치가 나올 때까지 사용자들이 취할 수 있는 일들이 무엇인지도 함께 발표했다. “일시적인 방법이긴 하지만, MySQL 환경설정 파일이 MySQL 사용자들에게 노출되지 않도록 확실한 조치를 취해야 합니다. 또, 루트에 가짜 cnf 파일을 만들어 놓는 것도 좋은 방법입니다. 물론 이 cnf 파일은 사용해선 안 되겠죠.”
하지만 이는 임시방편이며 완전한 해결책이 아님을 거듭 강조한다. “응급처치로만 병을 낫게할 수는 없잖아요? 도움이 올 때까지 버티는 것일 뿐이죠. 제가 설명한 방법들도 마찬가지입니다. 오라클에서 공식 패치가 나오면 곧바로 적용하셔야 합니다.”
한편 최근 미국에선 머디 워터스(Muddy Waters)와 메드섹(MedSec)이란 업체가 세인트주드메디컬(St. Jude Medical)이라는 의료기관의 보안 취약점을 공개해 주식 시장에서 이득을 챙겼다는 보도가 있어 논란이 된 바 있다. 당시 메드섹과 머디 워터스는 “세인트주드는 아무리 보안 취약점에 대해 여러 사람이 알려줘도 고치질 않는다”며 “오히려 환자들의 안전을 위한 행위였다”고 설명하고 있으나, 대부분 사람들은 제3자의 취약점을 악용했다고 비난하고 있다.
다른 기업의 소프트웨어나 시스템에서 발견된 취약점을 어떤 방식으로 공개하는가에 대해서는 오래 전부터 논란이 끊이지 않고 있다. 다만 현재는 패치를 만들어야 하거나 만들 수 있는 주체들에게 먼저 공개해서 어느 정도 패치 개발 시간을 주고, 패치가 나오고 나서야 취약점을 공개하는 게 관례적으로 자리잡아가고 있다. 하지만 완전히 합의된 내용은 아니라 메드섹과 머디 워터스의 취약점 공개 행위가 큰 수익을 냈다고 밝혀질 경우, 취약점 공개를 악용하는 사례가 늘어날 수도 있을 것으로 보인다.
[국제부 문가용 기자(globoan@boannews.com)]
<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>