미국의 대규모 해킹 사태를 통해 살펴보는 IoT 보안 및 DNS 보안..
이 글을 쓰는 시점에서 한달여전에 미국에서는 DNS 서비스에 대한 DDoS 공격으로 인해 미국 전역의 주요 인터넷 서비스들이 서비스 장애를 겪는 해킹 사고가 일어났다. 미국의 유료 DNS 서비스인 Dyn DNS 서비스에 DDoS 공격이 10월 23일에 일어났으며 이로 인해 넷플릭스, 트위터, 뉴욕타임즈, 워싱턴포스트 등과 같은 유명 인터넷 서비스들이 접속이 안되는 사태가 벌어졌다. DNS 서비스는 도메인(이 블로그의 poem23.com과 같은 인터넷 주소)에 연결되어 있는 서비스 서버의 IP를 알려주는 인터넷 세계의 핵심 서비스로 인터넷 서비스 시장에 있어서 무척이나 중요한 서비스이다. 페이스북도 구글도 네이버도 DNS가 잘못되면 서비스 접속이 안된다. 그만큼 중요한 요소다. 그런데 그 요소가 공격을 당한 것이다.
일단 알려진 이유로는 샤오미(라고 알려지고 있음)에서 만든 웹캠 등을 해킹하여 Dyn DNS 서비스에 DDoS 공격을 감행했으며 DDoS 공격으로 인해 Dyn DNS 서비스가 장애를 일으켰고 Dyn DNS가 관리하던 위에서 언급한 넷플릭스, 트위터, 뉴욕타임즈 등과 같은 서비스의 DNS 정보를 얻지 못한 사용자들이 해당 서비스에 접속을 못하는 사태가 일어났다는 것이다. 웹캠, 인터넷 저장장치 등의 이른바 IoT 제품을 악용한 DDoS 사태다. 해당 이슈에 대한 아카마이의 분석 보고서에 따르면 DDoS 공격 방법은 쇼다운프록시(SSHowDowN Proxy)라는 오픈SSH의 취약점을 악용한 공격이라고 한다. 이 취약점은 12년전에 발견되었으며 원인은 IoT 기기들이 초기에 출시될 때 설정된 비밀번호를 바꾸지 않고 그대로 사용하고 있는데 이 초기 비밀번호들은 대부분 알려져있기 때문에 이 비밀번호를 통해 해당 IoT 기기에 불법으로 접속하여 원격으로 공격 트래픽을 만들어낸다는 것이다. 이는 IoT 기기 뿐만이 아니라 우리나라의 경우에도 커피숍 등의 공공장소에서 사용하는 무선 AP의 경우 초기 비밀번호를 그대로 사용하는 경우에도 이를 악용하여 해킹하여 피해를 입힐 수 있다는 점에서 그냥 지나칠 수는 없는 사안처럼 보인다.
내가 지금 하고 있는 일이 보안에 관련된 일이고 사회에 들어와서 지금까지 하는 일 중 80%가 보안에 관련된 일을 했다보니 보안 이슈에 대해서 나름 흥미롭게 보고 있는데 이번 해킹 사태를 통해 보안 정책에 대한 부분과 미래의 먹거리라 불리는 IoT 산업에서 보안을 어떻게 다뤄야 할 것인지를 생각해보게 되는 계기가 되었다. 또한 인터넷이 대중화되고 생활화 된 이 시점에서 DNS 서비스에 대한 보안이 어떻게 진행되고 있는지에 대해서도 생각해보는 계기가 되었다고 할 수 있다.
기본적인 보안 정책부터 다시 생각을..
샤오미에서 만든 웹캠이 이번 미국 IoT 해킹 사태의 원인이라고 하는데..
이번 공격에서 사용된 방식은 알려진 비밀번호를 바꾸지 않고 그대로 사용함으로 야기된 문제다. 많은 사람들이 IoT 기기든 뭐든 전자기기를 받게 되면 초기에 설정된 내용을 그대로 사용하는 경우가 많다. 제대로 된 사용을 원한다면 자기가 원하는, 자기만이 알고 있는 비밀번호 등으로 변경하는 등 보안을 강화해야 한다. 하지만 그것이 익숙하지 못한 것이 현실이다. 이유는 귀찮기 때문인데 그것으로 인해 악용되어 받은 피해는 그 귀찮음의 대가보다 훨씬 크다고 할 수 있다. 물론 몰라서 그럴 수도 있다. 어찌되었던 초기에 설정된 비밀번호는 대부분 알려진 비밀번호이기 때문에 해킹에 악용될 확률은 거의 100%에 가깝다. 앞서 언급하기도 했지만 인터넷 공유기의 경우에도 보안을 설정하지 않거나 설정한다고 하더라도 잘 알려진 암호를 이용하거나 초기에 설정된 값을 그대로 사용하는 경우가 있는데 이런 경우에는 거의 100%에 가깝게 해킹에 악용된다고 보면 된다. 이는 기업에서도 동일하게 적용되는데 기업의 경우 대부분 비밀번호 등을 설정하도록 보안 정책을 세우고 지침을 내리지만 그렇지 않는 경우도 종종 있기 때문에 기밀 데이터 유출 사고 등의 문제가 생기곤 한다. 보안에 조금만 신경을 쓰면 이런 상황이 벌어지지 않았을 것이라고 생각이 드는 이유도 이런 내용이 있기 때문이다.
이제는 IoT 보안을 신경써야 할 때..
또 하나 생각해봐야 할 것이 보통 DDoS 공격의 숙주는 데스크탑이나 노트북 등 주로 PC 계열이었고 최근에는 태블릿이나 스마트폰 등과 같은 스마트 디바이스들이 많이 사용되면서 이런 모바일 단말기로 옮겨가서 공격 대상이 되고 있는데 이제는 그 숙주의 대상이 웹캠 등과 같은 IoT 기기로 넘어가고 있다는 것이 눈에 띈다. 기존의 PC나 노트북, 태블릿이나 스마트폰과 같은 기기들은 사람들이 많이 사용하기 때문에 공격의 숙주가 되었지만 보안업체들이 이 기기들에 대한 보안 프로그램 등을 개발하면서 많이 방어가 되고 있는 상황이다. 물론 해커들은 그런 보안에 아랑곳하지 않고 온갖 방법을 다 동원해서 숙주로 만들고 DDoS 공격을 감행하지만 말이다. 그런데 어찌되었던 이런 기기들의 보안은 강화되기 때문에 새로운 숙주를 찾아 해커들은 본격적으로 뜨기 시작하고 있는 IoT 기기들을 눈여겨보게 되었고 그 중에서 시스템 자원이 적은 소형 IoT 기기들을 주목하게 된 것이다.
IoT 기기들이 보안에 취약할 수 밖에 없는 이유는 그 설계 컨셉 때문이다. 시스템 자원이 나름 그래도 풍부한 데스크탑이나 노트북, 태블릿이나 스마트폰과 달리 스마트워치, 스마트밴드, 웹캠, 그 외의 센서 등과 같은 소형 IoT 기기들은 디자인에 대한 제약으로 인해 최소한의 시스템 자원을 이용하여 설계되며 제조된다. 배터리 이슈도 있고 기존 디자인에 거슬리지 않는 제품을 만들기 위해 성능의 많은 부분을 손해보기도 한다. 그렇기에 보통 해당 기능을 사용하는데 적합한 수준으로 시스템 자원을 할당하며 설계하게 된다. 그러다보니 보안에 대해 많은 신경을 쓰지 못하는 것이 사실이다. 실제로 개발을 하게 되면 기능 구현에 집중하게 되고 보안 부분은 2순위나 3순위로 밀리는 경우를 보게 된다. 일단 구동시키는데 목적이 있다보니 그렇다. 그렇기에 당연히 취약점이 생기게 되며 그 취약점을 악용하여 해킹을 하게 된다. 그리고 정기적인 보안 패치가 이뤄져야 하는데 IoT 기기들은 그렇지 못하는 경우가 대부분이다. IoT 기기들의 인터넷 접속이 앞서 얘기한 PC나 스마트폰, 태블릿과 같은 기기와 달리 원활하지 못한 부분도 한몫하고 있고 또 보안패치를 자체적으로 진행하는 것이 아니라 어디 따로 연결해서 진행하는 경우가 많기 때문에 모르고 지나가는 경우가 대부분이다. 이번에 Dyn DNS를 공격했던 웹캠들도 옛날 펌웨어에 옛날 보안 설정으로 되어 있었기 때문에 공격 대상이 되어 숙주가 되었고 Dyn DNS 서비스에 DDoS 공격을 감행했던 것이다.
이는 IoT 기기들을 제작하는 기업들 입장에서는 딜레마일 수 밖에 없다. 보안을 강화하게 되면 이에 대한 반비례 작용으로 성능이 떨어질 수 있다. 일반적인 프로세스에 2중, 3중으로 검증하는 프로세스가 더해지기 때문에 속도에서 또 자원 사용에서 손해를 볼 수 밖에 없지만 이런 부분까지 감안을 하면서 제품을 만들게 되면 원래 진행하려고 했던 디자인을 만들 수 없는 경우가 허다하기 때문에 개발하는 입장에서는 어디를 중점으로 둬야할 것인지에 대해서 계속 생각을 할 수 밖에 없는 것이다. 물론 최근에는 IoT용 플랫폼이 고도화되고 성능이 높아지면서 보안에 대한 강화도 이뤄지고 있기 때문에 많이 좋아지고 있기는 하지만 그래도 여전히 위협은 존재하고 있는 것이 사실이다. 그리고 이런 딜레마는 지금 스마트폰 이후 포스트 스마트폰 시대로 IoT 시대를 꼽고 있는데 이 시대의 가장 큰 위협이 될 수도 있겠다는 생각이 든다. 뭐 어찌되었던 이것은 현재의 IoT 개발 회사들이 지속적으로 연구해서 해결하는 수 밖에 없다는 것이 내 생각이다.
DDoS 공격 대상이 이제는 DNS 서비스로..
마지막으로 DNS 서비스에 대한 보안에 대해서 살펴보자. 최근 DDoS 공격의 대상이 인터넷 서비스를 하는 서비스 서버가 아닌 DNS 서비스를 노리는 경우가 많아졌다. DDoS 공격의 목적이 해당 서비스에 접속을 못하게 만들고 그것을 빌미로 돈을 뜯어낸다는 것인데 요즘은 서비스 서버에 다양한 보안 장비를 넣어서 DDoS 공격 등에 대비하는 모습을 많이 보여주고 있기에 과거와 같은 서비스 서버에 대한 DDoS 공격이 잘 안먹히는 것이 사실이다. 물론 엄청난 양의 악성 트래픽을 이용한 DDoS 공격에 대해서 제대로 방어할 수 있는 DDoS 방어 솔루션은 그렇게 흔치 않다. 인터넷 인프라를 이용하는 방법으로 현재 내가 다니는 회사(이노지에스코리아)에서 만드는 HydraDNS 서비스의 Hydra 서비스나 앞서 보고서를 만든 아카마이에서 제공하는 코나 디펜더 서비스, 아니면 KISA에서 제공하는 DDoS 대피소와 같은 서비스가 있고 아니면 시스코나 시만택, 화웨이 등에서 만드는 DDoS 방어 시스템 등이 있는데 인프라 기반 DDOS 방어 서비스는 나름 잘 방어해주기는 하지만 가격이 비싸서 쉽게 도입하기가 어려운 것이 사실이며 장비 기반 DDoS 방어 시스템은 대용량 공격에는 무용지물이 되는 경우가 허다하다. 하지만 어찌되었던 DDoS를 방어하는 방법이 없는 것이 아니기에 대비를 하고 있다.
하지만 DNS 서비스는 어떨까? 인터넷 서비스를 하는데 있어서 도메인 서비스와 함께 DNS 서비스는 핵심 서비스이며 중요한 서비스다. 알다시피 웹브라우저와 같은 프로그램은 poem23.com, naver.com과 같은 도메인을 그대로 인식하지는 못한다. 이를 프로그램이 인식할 수 있는 IP로 바꿔주는 서비스가 DNS 서비스다. 즉, 이 블로그인 poem23.com 도메인을 접속하기 위한 서비스 서버의 IP 주소를 알려주는 서비스가 DNS 서비스라는 얘기이며 이는 모든 인터넷 서비스에서 동일하게 적용되는 것이다. 그리고 DNS 서비스는 한두개의 업체가 이용하는 것이 아니라 수십, 수백, 수천개 이상의 인터넷 서비스 사이트가 이용하고 있다. DNS가 없으면 웹서비스 접속이 안된다. 그만큼 중요하다. 그렇기 때문에 DNS 서비스에 대한 보안도 무척이나 중요하다. 과거 해커들은 해당 서비스 업체로부터 이득을 취하기 위해 해당 서비스를 직접 공격하는 방식을 이용했는데 이제는 그 방향을 바꿔 DNS 서비스를 공격함으로 그 피해 범위를 훨씬 넓히고 있다.
문제는 DNS 서비스를 제공하는 업체들이 대기업들이 아니라는 점이다. 물론 DNS 서비스는 서비스를 제공하는 업체에서 직접 만들어서 제공하기도 하며 CDN 업체들이 제공해주기도 한다. 그리고 보통은 도메인을 제공하는 업체에서 서비스로 제공해주기도 한다. 이번에 공격을 당한 Dyn DNS 서비스와 같이 전문적으로 DNS 서비스를 제공해주는 기업도 있고(국내에는 DNSEver에 대표적인 경우다) 내가 다니는 회사에서 제공하는 HydraDNS 서비스도 DNS 전문 서비스이기는 하지만 우리나 Dyn DNS와 달리 많은 기업들이 도메인 서비스에서 제공하는 서비스 개념의 DNS 서비스를 이용하는 경우가 많다. 그리고 그 DNS 서비스는 우리가 알고있는 만큼의 보안이 잘 된 DNS는 아니라는 것이 문제다. 나름대로 보안을 해두기는 했겠지만 Dyn DNS와 같은 DNS 전문 업체도 DDoS 공격에 맥을 못췄는데 DNS 서비스를 도메인이나 호스팅 서비스의 부가 서비스 개념으로 제공하는 업체의 DNS 보안이 그렇게 잘 되어있을리는 만무하다. 앞서 얘기도 헀지만 많은 기업들, 특히 웹호스팅 서비스를 제공하는 기업들이 DNS 서비스를 함께 제공한다. 호스팅을 하기 위해서는 DNS 정보 관리가 필수이기 때문에 서비스 차원에서 제공해주는 것이다. 그러다보니 상대적으로 호스팅 서비스에 비해 DNS 서비스의 보안은 약할 수 밖에 없는 것이 현실이다. 이런 점을 해커들이 파악했고 서비스 서버 공격보다 훨씬 수월하게 공격할 수 있는, 그리고 그 피해범위가 훨씬 더 큰 DNS 서비스를 DDoS 공격 대상으로 잡은 것이다. 최근 DDoS 공격 관련 보고서들을 보면 DNS 서비스에 대한 DDoS 공격이 급증했다는 것을 알 수 있는데 이런 이유 때문이 아닐까 싶다.
뭐 간만에 보안 얘기를 좀 해봤다. 개인이 가져야 할 보안 정책에 대해서도 좀 생각을 해봐야 할 시점이고 IoT 시대에 맞춰 IoT 기기 보안에 대해서도 이제는 제대로 신경을 쓸 때가 아닌가 싶다. 그리고 DNS 서비스에 대한 보안을 이제는 기업들이 심도깊게 봐야 할 상황이라고 본다. DNS 서비스는 인터넷 서비스의 관문 서비스나 다름없다. 그런데 그 입구부터 문제가 생기면 서비스 자체가 문제가 될 수도 있기 때문에 이에 대한 보안도 이제는 신경을 쓸 때가 아닌가 싶다.