밤사이 밝혀진 방송사 해킹사고의 취약점은 안랩의 백신관리서버 였다.

밤사이 부지런한 분석가들로 인해 KBS, MBC, YTN 그리고 일부 금융사 해킹으로 인한 전산시스템 다운의 원인이 밝혀진듯 하다. 원인은 각 사에서 사용하는 PMS 서버에 PC로 배포할 프로그램으로 위장하여 침투하고 정해진 시간에 일거에 동작하여 장애를 유발 시킨 지응적인 APT 공격으로 밝혀지는 듯 하다.

PMS (Patch Management System)  무엇인가? 그리고  PMS의 취약점은 ??

Windows에는 제어판의 프로그램 추가/제거 기능이 있고 이 기능은 Windows 자체의 버그패치와 보안패치 그리고 windows 자체의 프로그램 설치와 제거를 할 수 있는 일종의 모듈관리 기능을 갖고 있다. 하지만 일반인 수준의 사용자들은 Windows 자체의 버그패치나 보안 패치를 잘 하지 않는다는 점에 착안하여 여러 보안 업체들이 Windows가 설치된 PC의 패치를 항상 최신으로 유지하기 위해 자동화된 시스템을 개발하여 PMS라는 이름으로 판매하고 있다.

또한 안랩 APC의 경우 윈도의 패치관리는 물론 V3 백신의 업데이트도 함께 수행하고 있다.

자동화하기 위해서는 중앙에 한대 혹은 그 이상의 패치를 배포하는 서버가 있어야 하고 패치 배포서버로 부터 파일을 받아 설치해주는 에이전트(Agent)라 불리는 프로그램이 PC에 설치되어야 한다.

이번 해킹을 기획한 해커집단은 이 PMS가 갖고 있을 수 밖에 없는 근본적인 취약성을 공격한 것이다. 해커가 PMS 서버에 침투하여 악성프로그램을 모든 PC에 배포할 정상적인 패치파일로 위장할 수만 있다면 특정 기업이나 기관의 대부분의 PC에 악성프로그램을 배포하고 실행하여 장악할 수 있게 되는 것이다.

320해킹, 320사태
< APC로부터 피해를 입은 PC로 배포된 악성코드의 분석 화면 >

 

농협 사태와의 비교

이번 사고에서 가장 큰 역할을 한 것은 안랩의 APC 라는 PMS 및 백신업데이트 솔루션이다. 지난 번 농협의 사고 때 악용되었던 IBM의 시스템관리 솔루션이 떠오르는 것은 과연 우연일까 ? 어찌 보면 공격의 대상이 서버에서 PC로만 바뀌었을 뿐 특정 기업의 중앙 집중관리 솔루션이 공격의 대상인 것은 동일한 그림이다.

농협의 경우 IBM에서 공급한 유닉스 서버의 시스템관리솔루션에 의해 수백대의 서버에서 동일한 명령이 실행되어 디스크를 포맷(유사한)하는 공격인 것으로 알려졌다. 한 때 IBM과 방통위와의 격한 싸움(?)이 날뻔 했다는 소문도 있었다.

이번 사고에서 악용된 솔루션은 PMS와 백신업데이트 서버다. 수백대의 PC에 파일을 배포하고 동시에 실행하는 솔루션이다.

양쪽 모두 중앙집중관리를 위한 솔루션이라는 점이 공통점이다.

결국은 또 서버 공격이었다.

농협사태를 비롯해 최근 발생하는 해킹사고의 1차 침투 대상은 바로 서버다. 하지만 아직도 많은 전산전문가라는 사람들은 백신타령만 한다. 백신은 PC 보안의 첨병이다. 하지만 사고를 예방하기 위해 PC의 보안만 강조하는 것은 너무도 무책임한 처사다.

하지만 서버에 대한 보안은 참 어렵다. 전산전문가들과 보안 전문가들 조차도 손대기 어려운 것이 바로 서버의 보안이다. 왜냐하면 우리나라의 IT 업무 풍토상 서버에 보안을 강화하면 개발자나 서버 관리자가 소위 “죽는 소리”를 한다. 일이 힘들어진다고 생각하기 때문이다.

물론 서버에 보안을 적용하는 첫단계는 매우 힘든 것이 사실이다. 서버의 계정에 대한 관리 정책 수립과 권한에 대한 분리, 개발자들의 업무 패턴, 솔루션 관리에 대한 체계 수립, 위험 명렁어에 대한 실행권한 체계 수립 등 보안정책으로 수립되어지고 지켜져야할 것이 꽤나 많기 때문이다.

하지만 이러한 보안관리 체계가 수립되지 않으면 대형 보안사고는 계속 터질 수 밖에 없다.

잔소리) Windows 서버의 보안체계의 문제점

보안쪽 일을 하는 기술자의 입장에서 Windows는 솔직히 썩 권장하고 싶지 않은 운영체계다. Windows의 기초 설계 개념에 보안이 그리 중요시되어 있지 않았다는 것이 눈으로 보일정도이고 제공하는 보안 기능도 그때 그때 필요에 따라 추가한 냄새(?)가 진하게 나기 때문이다.

보안의 기본인 계정에 대한 권한 분리가 Windows의 기본설계에 제대로 반영되어 있지 않다보니 Windows 운영체계에서 실행되는 많은 솔루션들도 자연스레 보안을 무시하고 개발하게 된다. 예를 들면 백신이나 보안솔루션들이 cmd.exe를 너무도 빈번하게 실행하는 점과 많은 SW들이 system 이라고하는 Windows의 최고 권한의 계정권한으로 실행된다. 이는 해당 솔루션이 해킹을 당하면 Windows의 최고 관리자 권한이 바로 탈취된다는 점에서 무척 위험한 설계라고 할 수 있다.

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

Scroll to Top