2013년 3.20 사이버테러 이후 지난 2월 보안회사가 또 다시 공격자들의 먹잇감으로 노출되는 사례가 발생하면서 내부적으로 보다 확실한 해킹 대비책이 필요해진 상황이다.
이미 3.20때 겪었듯 사회혼란을 노린 해킹그룹에게 보안회사가 제공하는 패치관리시스템(PMS)과 같은 툴들은 목표로 한 대상들에게 악성코드를 대량으로 유포시킬 수 있는 유용한 수단으로 꼽힌다.
지난 2월 문제가 된 코드서명용 인증서와 개인키 유출사건도 마찬가지다. 해킹그룹이 해당 회사의 온라인 인감도장(코드서명용 개인키)을 훔쳐낸 뒤 이 도장을 찍은 악성 프로그램을 웹 상에 배포하면서 문제가 심각해질 수도 있는 사안이었다.
보안회사들은 이러한 문제를 해결하기 위해 여러가지 보완책을 마련해 놓고 있다. 한국인터넷진흥원(KISA)에서는 이러한 피해를 예방하기 위해 코드서명 인증 보안 가이드(관련링크)를 내놓기도 했다.
먼저 주목할만한 것은 지문인식 기능이 탑재된 USB형태 보안토큰이다. 코드서명 개인키 유출사건은 내부에서 개발자가 쓰는 PC나 노트북에 온라인 인감도장 역할을 하는 개인키를 별다른 보안대책 없이 저장한 뒤 사용한 탓에 불거졌다.
SGA의 경우 이러한 문제에 대응하기 위해 2012년부터 지문인식형 보안토큰을 도입했다. USB형태의 보안토큰에 개인키를 저장해 놓은 뒤 지정된 개발자의 지문인식을 거쳐야만 온라인 인감도장을 찍을 수 있도록 한 것이다. 이 회사 관계자는 "백신 패턴파일을 업데이트하거나 PMS용 서버에 보안업데이트 파일을 올리는 등 작업을 할 때 지문인식형 보안토큰을 도입해 활용하는 중"이라고 밝혔다.
PMS는 기업, 기관 내에서 사용 중인 PC, 노트북 등에 필요한 여러 업데이트를 일괄 적용하기 위해 사용되는 솔루션이다. 보안회사들이 주로 공급하고 있는 이 솔루션은 크게 고객사 내부에서 관리하는 배포서버와 보안회사들이 직접 관리하면서 보안업데이트 파일을 고객사 배포서버에 전송하는 업데이트 서버로 구성된다.
SGA는 2013년 이후 공공기관에 공급한 PMS에 대해서도 해당 기관 담당자가 지문인식형 보안토큰을 통해 ERP나 CRM 등과 같이 내부에서 활용 중인 솔루션들에 대한 업데이트를 할 수 있도록 하고 있다고 설명했다.
안랩은 코드서명용 개인키 관리 문제에 대해 "개인키 저장 서버를 기존 서버와 분리하고, 접근제어, 망분리 등 다중 보안체계를 적용해 관리하고 있다"고 밝혔다.
구체적으로 코드서명용 개인키는 용도별로 각각 별도 서버에 저장해 놓으며, 이들 서버는 인터넷과는 분리된 폐쇄망에 위치해 있도록 해서 외부 공격에 대응할 수 있게 했다는 설명이다. 또한 내부에서도 허가된 사람만 해당 서버에 접속해 코드서명용 개인키를 활용한 자사 업데이트 파일 등에 대한 온라인 인감도장을 찍을 수 있도록 했다고 덧붙였다.
하우리는 자사가 직접 운영하는 업데이트 서버에 파일을 올릴 때 개발망(폐쇄망)을 인터넷망과 분리해 운영하고 있다고 밝혔다. 하우리 김의탁 연구소장은 "하우리 자체적으로 운영 중인 업데이트 서버와 고객사에서 내부에서 담당자들이 업데이트 파일을 설치하기 위한 용도로 쓰이는 배포 서버 사이에 서로 상대방이 맞는지를 검증하는 상호인증과정을 거쳐야지만 파일을 전송할 수 있도록 하고 있다"고 설명했다. 하우리 업데이트 서버와 고객사 배포 서버가 서로 인증을 거쳐야지만 하우리가 제공하는 보안 업데이트 파일을 고객사에 설치할 수 있게 되는 것이다.
코드서명용 개인키 유출을 방지하기 위해 하우리는 자사에서 개발한 프로그램 실행파일을 자신의 PCㅏ노트북에서 코드서명하지 못하도록 하고 있다. 대신 망이 분리된 빌드 전용 서버에 직접 담당자가 가서 보안토큰을 꽂아서 코드서명을 한 뒤에만 이후 웹사이트나 업데이트 서버를 통해 자사가 개발한 프로그램 실행파일을 배포할 수 있도록 했다. 이 과정에서 하우리도 지정된 담당자들만 지문인식을 활용해 코드서명을 할 수 있도록 하고 있다.
KISA가 내놓은 가이드에 따르면 기본적으로 코드서명용 개인키를 활용해 서명작업을 수행하는 시스템이나 인증서와 개인키를 저장해 관리하는 시스템은 일반 업무용 PC와 함께 사용하지 말 것을 권고했다. 또한 인터넷망과 분리된 내부 망에서만 온라인 인감 도장을 찍는 작업(전자서명)이 이뤄져야한다고 조언했다.
관련기사
- 미래부, 코드서명 인증서 보안 가이드 배포2016.04.14
- 中 해킹조직, 韓 모바일SW기업 코드서명 훔쳐2016.04.14
- 보안업체 노린 해킹 기승...왜?2016.04.14
- 보안업체 코드서명 정보 유출, 파장은?2016.04.14
이와 함께 코드서명용 인증서, 개인키는 지정된 담당자 외에는 쓸 수 없도록하고, 인증서와 개인키는 반드시 안전한 별도 저장매체에 저장할 것을 요청했다. 가장 확실한 방법은 보안토큰에 인증서와 개인키를 저장해서 지정된 담당자들만 활용할 수 있도록 권한을 주는 것이다.
보안토큰에서 코드서명용 인증서와 개인키를 불러와서 전자서명을 하기 위해서는 별도로 비밀번호가 필요하다. KISA는 비밀번호를 사용할 경우 숫자, 대소문자, 특수문자 중 2개 이상을 조합한 10자 이상, 혹은 3개 이상을 조합한 8글자 이상 비밀번호를 쓰는 것을 권장한다고 밝혔다.