월패드 해킹에 대한 정리
이 글을 쓰는 시점에서는 좀 시기가 지난 얘기(?)일 수도 있겠지만 최근들어 아파트 등과 같은 공동주택에 편의성을 위해 설치된 월패드를 해킹해서 안에 사는 사람들의 사생활이 유출되는 문제가 일어나고 있다. 지금은 아니지만 과거에 관련 보안업계에서 일했던 사람으로서 관심이 있어서 어떤 상황인지 조금 정리를 해보고자 한다.
월패드가 뭔가?
일단 월패드가 뭔지부터 좀 봐야할 듯 싶다. 내 경우 월패드가 설치된 아파트에서 살아본 경험이 없어서 그런지 월패드라고 하면 그냥 대문이나 아파트 입구의 카메라를 통해서 방문자를 확인한 후 문을 열어주거나 관리실이나 경비실과 통화할 때, 혹은 다른 집과 통화를 할 때 쓰는 기기 정도로 알고 있다.
그런데 요즘 월패드는 그정도를 넘어서 홈네트워크 허브, 홈 디바이스 컨트롤러로서의 역할을 하고 있는 듯 싶다. 과거 도어락 제어와 관리실, 경비실, 다른 집과의 연결 정도가 아니라 집안 내부의 조명이나 CCTV의 카메라, 난방 등 집 안의 IoT 기기들을 제어하는 수준까지 제공하고 있다고 한다.
그리고 월패드 자체의 조작 뿐만이 아니라 외부에서 스마트폰을 통해서 집 안에 설치된 월패드에 연결해서 원격으로도 제어할 수 있게 기능을 제공해준다고 한다. 난 뭐 이런 월패드를 사용해본 적이 없어서 이런 것이 있더다러 하는 수준만 들었을 뿐이다. 좌우간 요즘 월패드는 이정도의 수준까지 발전을 한 듯 싶다.
문제는 이 월패드를 해킹해서 집 안에 설치된 IoT 장비들, 예를 들어 CCTV의 카메라 등을 해커가 제어할 수 있게 해서 CCTV의 카메라에 찍힌 내용을 해커가 보거나 녹화해서 유출하는 일이 벌어지고 있는 것이다. 아니면 녹화된 영상이 월패드에 연결된 시스템에 저장되어 있을텐데 그 영상을 뺴내서 유출하는 사례도 보고되고 있다.
왜 월패드 해킹이 일어나나?
그렇다면 왜 이런 해킹이 일어나는 것일까? 월패드 해킹은 여러가지 방법으로, 또 경로로 발생되고 있는데 언론에 공개된 내용을 기반으로 내 경험을 더해서 정리를 해볼까 한다. 아래의 내용은 내가 알고 있는 내용들을 기반으로 정리한 것이다.
웹셀에 대해서
일단 월패드 해킹 관련 기사들을 살펴보면 나오는 단어가 하나 보이는데 다름아닌 웹셀(WebShell)이라는 단어다. 웹 기반으로 동작하는 셀 프로그램인데 셀 프로그램은 외부에서 명령을 입력하면 그것을 실행하는 프로그램으로 윈도 OS에서는 명령 프롬프트, 리눅스나 맥에서는 터미널이라고 보면 된다.
명령 프롬프트나 터미널이 셀의 일종인데 이것을 띄우면 명령을 입력받을 수 있게 되어 있으며 명령을 입력하면 해당 명령을 실행하는 구조다. 그리고 이런 명령들을 자동으로 실행할 수 있게 모아서 실행하는 것이 셀 스크립트라고 부르는 프로그램이다.
웹셀은 이런 셀이 웹 구조로 되어 있는 것을 의미한다. 즉, 웹서비스 상에서 동작할 수 있으며 웹서비스를 구동하는 웹서버에 명령을 내릴 수 있는 프로그램이 웹셀이라고 보면 된다. 방식은 일반 셀과는 조금 다르지만 웹셀이 설치된 웹페이지를 통해서 홈페이지 주소를 호출하는 방법으로 실행할 수 있다는 것이 웹셀의 특징이다.
웹셀을 이용하게 되면 외부에서 웹서버에 접근할 때 다양한 인증 방식 및 보안 시스템을 통과해야 할 때 우회할 수 있기도 하다. 보통은 웹서버에 접근할 때에는 사용자 ID 및 패스워드를 입력하고 지정된 IP의 장비만 접근을 할 수 있게 하는 경우가 많은데 웹셀을 이용하면 이런 보안 방식을 우회해서 웹서버에 접근할 수 있다는 얘기다.
이런 식으로 웹서버에 들어온 해커는 웹셀을 통해서 다양한 명령어로 웹서버를 제어할 수 있으며 웹서버 안의 내용을 조작하거나 유출이 가능하며 웹서버에 연결된 다른 장비의 접속도 용이하다.
월패드 관리 서버를 해킹하는 경우..
월패드 해킹 이야기를 하면서 웹셀 이야기가 나온 이유는 아마도 2가지 정도로 해석할 수 있는데 하나는 아파트 등에 설치된 월패드의 경우 아파트의 관리실에 제어 서버를 두고 해당 아파트 전체에 설치된 월패드에 연결해서 월패드의 소프트웨어를 업데이트하거나 월패드에 어떤 정보를 일괄적으로 제공할 때, 아니면 다른 집에 통신을 연결할 때 이용하게 하는 시스템인 경우다.
이 경우 관리실에 설치된 월패드 제어 서버에서 제어 프로그램이 웹기반으로 되어 있는 경우가 많기 때문에 해당 관리 서버가 해킹되어 웹셀이 설치될 경우 해당 아파트 전체의 월패드에 대한 제어 권한이 해커에게 넘어갈 수 있다.
그렇다면 왜 웹셀이 설치되는 것일까? 그것은 아마도 관리 서버, 혹은 관리 프로그램이 설치된 PC를 통해서 관리자가 다른 웹페이지를 이용할 때 문제가 되는 웹페이지를 접속하게 되고 해당 웹페이지에서 웹셀을 설치하도록 유도할 수도 있다. 아니면 이메일이나 메신저 등을 통해서 웹셀을 관리 서버에 설치하도록 할 수도 있다. 물론 해당 관리자는 인지하지 못하는 상태에서 벌어지는 일들이다.
관리 서버를 통해서 이런 일이 진행되지 않더라도 만약 관리 서버와 같은 네트워크 안에서 관리자가 사용하는 다른 노트북이나 PC에서 이런 문제가 되는 웹사이트에 접속했을 때 해당 해킹 프로그램이 관리 서버를 네트워크에서 찾아서 접속해서 웹셀을 설치하도록 유도할 수도 있다. 방법은 뭐 다양하다.
이런 방식으로 웹셀이 월패드를 제어하는 관리 서버에 설치가 되면 해커는 관리 서버에 설치된 웹셀을 통해서 월패드 전체의 제어 권한을 갖게 되고 월패드에 접속해서 각 집에 설치된 월패드에 웹셀을 설치하던지 아니면 별도의 해킹 프로그램을 설치할 수도 있다.
이렇게 월패드가 해킹되는 방법이 하나가 존재한다. 월패드 관리 서버를 해킹한 후 해킹된 관리 서버를 통해서 각 집의 월패드를 해킹하고 그 해킹된 월패드에 해커가 접속해서 그 안에 저장된 동영상 등을 유출하는 방법이 있다는 얘기다.
각 집에 있는 월패드 시스템을 해킹하는 경우..
또 하나의 방법은 월패드 관리 서버가 아니라 직접 해당 집의 월패드를 해킹하는 방법일텐데 앞서 요즘의 월패드는 외부에서 스마트폰으로도 연결되어 제어가 가능하다고 했는데 그렇다는 얘기는 월패드마다 외부에서 접속할 수 있는 방법이 존재한다는 것이고 해커는 이 접속 방법을 이용하는 것이다.
스마트폰이 접속할 수 있다는 것은 스마트폰이 아니더라도 다른 기기들도 얼마든지 접속 방법만 알면 접속이 가능하다는 얘기다. 스마트폰의 어플리케이션을 이용할텐데 해커는 이 어플리케이션에서 각 집에 있는 월패드에 접속할 수 있는 방법을 어떻게든 찾았을 것이다(조금만 체크하면 접속 방법은 금방 찾을 수 있다).
접속 방법만 알면 해킹할 수 있는 방법은 많다. 관리 서버도 그렇지만 각 집에 설치된 월패드 시스템 역시 요즘은 대부분 리눅스 시스템으로 되어있고 UI는 웹기반으로 많이 만들고 있기 때문에 앞서 관리 서버를 해킹하는 방법과 비슷한 방법으로 웹셀을 설치한다던지 하는 것이 가능하다.
혹은 월패드 시스템으로 들어가는 방식을 너무 쉽게 해서 외부에서 손쉽게 접속할 수 있게 되어있었을지도 모른다. 여러 보안 장치를 해뒀어야 하는데 그렇지 못하는 경우도 많다. 집에 있는 PC 등에 설치된 웹캠이 손쉽게 해킹되는 것을 보면 알 수 있듯 생각보다 보안적인 부분에서 허술한 경우가 많다.
즉, 보안적인 부분이 허술한 월패드 시스템이라면 접속 경로만 안다면 얼마든지 접속해서 그 안의 데이터를 맘대로 조작할 수 있다. 웹셀 설치 등과 같은 귀찮은(?) 작업을 하지 않더라도 말이다.
이렇게 앞서 언급한 2가지 방법으로 월패드 해킹이 가능하다. 월패드 관리 서버를 해킹해서 월패드에 접근해서 데이터 유출을 하는 방법도 있고 직접 월패드 시스템를 해킹해서 데이터 유출을 하는 방법도 있다.
월패드 해킹 뿐만이 아니라 집안 네트워크 해킹의 경우..
그 외에도 여러가지 방법이 있을 것이다. 스마트폰을 해킹해서 월패드와 연결된 어플리케이션을 제어하는 방법도 있을테고 말이다. 또는 해당 집에 설치된 네트워크 기기의 취약점을 이용하는 경우도 있다.
요즘 집에서 인터넷, 혹은 IPTV를 많이 사용하는데 인터넷을 사용할 때 보통은 인터넷 제공자(KT, SKT, LG U+, 혹은 케이블TV 등)가 제공하는 모뎀을 사용한다. 요즘 나오는 제품들은 각 제품들마다 패스워드를 따로 주기 때문에 기본 패스워드라는 개념은 희박하다.
하지만 이전에는 모뎀도 대량 생산을 해야하기 때문에 제품이 나올 때 기본 암호라는 것을 제공해줬다. 이것은 해당 모델에 모두 적용되는 암호인데 원래는 이 기본 암호를 사용자가 사용할 때에는 다른 암호로 바꿔서 써야 한다. 암호라는 것은 본인만 알고 있어야 하는데 기본 암호는 이미 공개된 내용이기 때문에 암호의 역할을 할 수 없기 때문이다.
그런데 많은 사람들이 암호 바꾸는 것을 귀찮아서, 혹은 할 줄 몰라서 기본 암호를 그대로 사용한다. 그렇다면 그 장비는 개인 장비가 아닌 공공 장비가 되어버린다. 누구나 다 접속해서 쓸 수 있다는 얘기다. 심지어 관리자 암호 역시 이런 상황이 되다보니 해커가 얼마든지 기본 암호로 해당 네트워크 장비의 관리자 권한을 갖게 된다.
해커가 어떤 집의 개인 네트워크에 들어가게 되면 그 다음부터는 뭐 말 안해도 알 것이다. 그 안에서 얼마나 분탕질하면서 다니겠는가. 해당 네트워크에 연결된 보안이 취약한 장비들이 죄다 악영향을 받게 될 것이다. 앞서 월패드 해킹의 경우 월패드에 연결된 장비가 문제가 되겠지만 이 경우에는 해당 네트워크에 연결된 장비들이 문제가 될 것이다.
월패드 해킹 얘기를 하면서 네트워크 장비의 기본 암호 관련 얘기도 같이 언급을 했는데 어찌되었던 여러가지로 문제가 많아지고 있는 것이 사실임은 분명하다. 내가 조심한다고 해서 다 해결되는 문제도 또 아닌 경우도 많다.
그렇다고 해서 그냥 당하고 있을 수는 없는 노릇이니 과학기술정보통신부에서 언급하는 방법을 잠깐 살펴볼까 한다. 그 전에 망분리 언급도 있기는 했는데 그것은 뒤에서 조금 더 얘기해볼까 한다.
과기정통부에서 제시하는 월패드 및 홈 네트워크 기기 해킹 예방법
과기정통부에서 제시하는 월패드 및 홈 네트워크 기기 해킹 예방법은 얼추 다음과 같다. 보니까 제조회사의 방침, 관리자의 방침, 이용자의 방침으로 나눠서 언급을 했다.
제조사 보안 수칙
먼저 장비 제조회사의 경우 안전한 소프트웨어 개발을 해야 한다고 한다. 당연한 이야기지만 운영되는 소프트웨어 자체에 문제가 있으면 아무리 사용자들이나 관리자들이 조심하더라도 뚫리는 것은 시간문제다. 시큐어코딩 등을 통해서 안전한 프로그램을 만들어야 한다는 것이 우선시된다. 또한 지속적인 보안취약점을 체크해서 개선 버전을 계속 업데이트 해야 한다고 한다.
관리자 보안 수칙
관리자(아파트 관리실 등)의 경우는 어떨까? 먼저 방화벽 등 보안 장비를 운영하라고 권고하고 있다. 물리적으로 외부에서 접근할 수 있는 경로에 대해서 보안을 먼저 실행하라는 얘기로 보인다. 또한 관리 서버는 주기적으로 보안취약점을 점검하고 최신 보안패치를 적용해야 한다.
그리고 관리 서버에 불필요한 서비스나 소프트웨어는 제거하고 설치하지 않아야 한다. 웹셀의 설치는 바로 이 부분을 통해서 많이 진행된다는 것을 생각한다면 당연한 조치다. 또한 주기적으로 접속 암호를 변경해야 한다고 권고하고 있는데 알려진 암호를 피해야 하는 것은 기본일 듯 싶다.
마지막으로 침해를 당했을 시 인터넷침해대응센터(118)에 연락해서 전문가들의 조치를 받을 수 있게 하라고 권고하고 있다. 여기에 내 의견을 더하자면 관리 서버가 연결되어 있는 네트워크에 다른 장비를 연결하지 않는 것도 중요한 방법이다.
이용자 보안 수칙
이용자 보안 수칙도 있는데 관리자 보안 수칙과 비슷하다. 앞서 언급했던 네트워크 장비, 혹은 네트워크에 연결되는 장비의 기본 암호를 반드시 변경하라는 것, 또 변경한다고 하더라도 잘 알려진, 혹은 유추가 가능한 내용으로 하지 말라는 것이 있다. 그리고 모든 장비를 주기적으로 업데이트해서 보안 등에서 최신 패치가 적용되도록 하는 것이 중요하다고 얘기하고 있다.
재미난 것은 카메라의 경우 사용하지 않는 경우 물리적인 가리개 등을 이용해서 가리는 것이 좋다고 언급하고 있는데 이게 문제가 될 수 있는 것이 집안에 CCTV 등을 설치하는 경우가 집에 어떤 문제가 있거나, 아니면 애완동물이나 아이들만 있을 경우에 잘 있나 확인하기 위함인데 이것을 못하는 경우가 생겨서 논란이 되는 듯 싶다.
어찌되었던 과기정통부에서 제시하는 제조업체, 관리자, 이용자 보안 수칙은 위와 같으며 보안이라면 측면에서는 맞는 얘기임은 분명하지만 논란이 될 수 있는 내용도 있는 것이 사실이기도 하다. 그래도 저렇게만 한다면 크게 문제가 될 것 같지는 않다.
망분리에 대해서..
앞서 관리자 관리 수칙을 언급할 때 관리 서버가 연결되어 있는 네트워크에 다른 장비를 연결하지 않는 것이 좋다고 언급을 했는데 월패드 해킹에 대한 개선책으로 망분리가 언급되고 있으며 비슷한 맥락으로 얘기할 수 있다. 요즘 시스템들이 모두 네트워크 안에서 동작을 하며 중요 시스템의 경우 보통은 별도의 독립된 네트워크를 이용하는 경우가 많기 때문이다.
하지만 현실적으로 월패드가 설치된 모든 아파트에 이런 물리적 망분리를 적용하는 것은 어려운 일이며 관리의 효용성 측면에서도 문제가 되는 것이 사실이다. 월패드 시스템의 주기적 업데이트 등이 월패드를 개발한 회사에서 인터넷을 통해서 각 월패드 관리 시스템에 접속해서 진행되는 경우가 많은데 물리적 망분리를 하는 경우 직접 사람이 가서 업데이트를 해야 할 수도 있기 때문이다.
이미 설치된 월패드 시스템에 물리적 망분리를 적용할 때에도 시간, 비용의 부담도 존재한다. 논리적 망분리 얘기도 나오는 것 같지만 논리적 망분리를 하는 시스템 자체가 해킹을 당하는 경우도 존재하기 때문에 그렇게 바람직한 방법이라고 말하기도 어려운 것이 현실이다.
그나마 확실하게 월패드 시스템의 외부의 해킹으로부터의 보호를 위해서는 물리적 망분리를 하는 것이 완벽하지는 않지만 많은 도움이 되는 것은 확실하다. 하지만 앞서 언급한 문제들로 인해 무조건 해야 한다고 말할 수도 없다. 현실적인 방법을 찾아야 한다는 얘기다.
아직까지 완벽한 방법은 제시되지 못하고 있는 듯 싶다. 그나마 앞서 언급한 과기정통부에서 제시한 보안 수칙을 지킨다면 어느정도는 예방이 가능하니 좀 더 현실적인 방법을 찾기 전까지는 저 방법이라도 해야 하지 않을까 싶다. 이렇게 정리를 마무리할까 한다.