금융업계의 보안 수준을 짐작케하는 현대캐피탈 해킹 사건(2011년 4월)

또한 번의 보안사고가 전산업계를 뒤흔들고 있다. 하지만 이전의 보안사고들과는 달리 외부(인터넷을 통해)에서 침입하여 현대캐피탈 고객 42만명의 개인정보는 물론 일부 금융정보까지 빼내어간 완벽(?)한 해킹사고라는 점에서 충격의 여파는 상당히 크고 오래 지속될 것으로 보인다. 비록 1금융권이 아닌 대출전문 캐피탈 업체이긴 하지만 업계 1위의 업체인데다가 “현대그룹” 이라는 간판으로 인해 1금융권도 보안에 취약한 것이 아니냐는 우려마저 나오고 있다.

=현대캐피탈 해킹사건의 전말. (이데일리 기사 발췌)=

◇ 해킹 피해 `42만명+α`..신용정보도 새나가

===================================================

최근 주로 발생되는 DDOS 공격은 단순히 공객 대상이 되는 업체의 일부 서버가 서비스를 수행하지 못하도록 비정상적인 과도한 트래픽을 유발시키는 해킹기업이다. 따라서 개인정보 혹은 기타 공공 및 기업의 기밀에 해당되는 정보 유출은 없다.

또한 과거 발생했던 GS칼텍스 등에서 발생했던 대량의 고객정보 유출은 외부에서의 해킹이 아닌 내부자가 연관되어 발생된 “내부 보안 사고”의 성격이 강했다.

하지만 과거 옥션의 개인정보 유출과 이번 현대캐피탈 고객정보 및 금융정보 해킹사건은 내부자가 아닌 외부자가 인터넷을 통해 내부 시스템에 침입한 완벽한(?) 해킹으로 인해 발생한 보안사고이기 때문에 그 심각성은 다른 보안사고와는 차원이 다른 수준이다.

현대캐피탈의 내부통제 수준

몇차례 현대캐피탈의 IT 부서에 방문하여 업무협의와 PT, Demo 등을 진행한 경험이 있다. 공교롭게도 현대캐피탈에서 해킹이 발생했다고 공개한 날짜와 비슷한 시기였다. 결국 담당자가 선호하는 외산 SecureOS를 도입하는 것으로 결정이 되었다는 안타까운(?) 소식을 접하긴 했지만 그 과정에서 경험한  현대캐피탈의 내부통제 시스템은 듣던대로 비교적 잘 갖추어져 있고 적용도 잘되어 있는 듯 했다. 또한 필요한 네트워크 보안 시스템 즉, 방화벽, IPS 등도 운영중이었다.

문제는 서버 및 애플리케이션 보안

이번 해킹사고는 완벽할 것이라고 믿는 네트워크 보안시스템의 한계를 잘 드러낸 사건이다. 방화벽, IPS 그리고 클라이언트와 서버간의 통신 암호화로 대변되는 네트워크 보안이 결코 시스템을 해킹으로부터 완벽하게 보호해줄 수 없다는 일반적인 상식(?)을 증명해준 해킹사건이다.

과거 해커들은 시스템의 취약점을 데이터의 이동 통로인 네트워크서 찾는 경향이 있었지만 최근에는서 서버에서 데이터를 관리하는 애플리케이션에서 찾는 경향이 두드러지게 나타나고 있다. 특히 이번 해킹사건에서 보듯 인터넷에 공개되어 있는 웹서버는 해커들의 주요 공격대상이 되고 있다.

해커들은 집요하게 웹서버를 공격하려 취약성을 찾는다. 이 취약성의 대부분은 웹서버에서 구동되는 서버사이드스크립트인 JSP(Java Server Page) 및 서블릿이 갖고 있게 된다. 결국 웹 응용프로그램 개발자의 보안 수준에 따라 취약성이 많은 시스템을 개발하느냐 아니면 취약성이 거의 없는 시스템을 개발하느냐가 결정되어 진다.

또한 취약성이 발견되어 해커가 해당 취약성을 공격하였을 때 해커가 얻게되는 최초의 서버 접근권한을 운영체제 차원에서 제대로 통제하느냐에 따라 해킹의 성공여부가 판가름 난다. 만약 운영체제 차원에서 적절한 통제를 수행하지 못한다면 해커는 해당 시스템을 장악할 수 있는 발판을 마련하게되고 그때부터 시스템은 해커의 공격에 무방비 상태로 노출되는 것이다. (네트워크 보안 시스템으로는 통제하기 어려움)

해커가 취약성에 대한 공격으로 서버 접근 권한을 얻게 되면 그때부터 원격지에서 서버에 존재하는 수많은 파일을 뒤져 자기가 원하는 추가적인 정보를 얻을 수도 있다. 이때부터 주요 정보의 유출은 시간문제가 된다. 운이 좋다면 root의 패스워드 혹은 다른 서버에 관리자 권한으로 접근할 수 있는 계정정보가 하드코딩된 스크립트를 얻을 수도 있을 것이다.

현대캐피탈의 해킹은 지금까지 설명한 과정을 거쳐 이루어졌을 것으로 보인다. 이러한 과정은 전형적인 웹서버 해킹의 과정일 뿐이다.

또다른 문제 – 서버 감사시스템의 부재

많은 금융사에서 고객의 계좌정보를 메인프레임에서 Unix 서버로 다운사이징하여 운영하고 있다. 그리고 계좌정보의 일부가 서비스의 성능을 높이기 위해 기간계 서버에서 각기 다른 Unix 및 Windows 서비스 시스템으로 (예를 들면 이번 해킹사고가 발생한 프라임론 시스템) 분산되어 저장된다.

하지만 Unix 나 Windows 모두 보안에 취약한 운영체제다. 외부로 부터 침입한 해커든, 내부자이든, 아니면 기술지원을 나온 외부의 엔지니어든 서버에 접근하여 무엇을 하는지 통제하고 감사기록을 남길 수 있는 솔루션을 운영체제 자체적으로 제공해주지 않는다.

사실 이번 해킹의 경우도 정확하게 어떤 정보가 유출되었는지 확실치 않다. 또한 해커가 어떤 백도어를 숨겨두었는지 찾아낼 방법도 없다. 아니면 해킹당했다는 프라임론 시스템외에 같은 네트워크내에 있는 다른 어떤 서버가 또 해킹을 당했는지 확인할 완벽한 방법이 없다. 확인할 수 있는 것은 외부의 어떤 IP에서 접근했는지와 다른 서버로 Telnet, FTP, rlogin 같은 단순한 방법으로 로그온을 시도했는지와 그 로그인의 성공여부 정도 뿐이다.

해커가 서버에서 어떤 파일을 열어보았는지, 어떤 명령어를 수행했는지, 어떤 파일을 만들었는지와 같은 구체적인 활동정보는 어디에도 기록되어 있지 않을 것이다. 보안사고 및 침해행위를 감사할 수 있는 기능을 제공하는 솔루션은 현재로서는 SecureOS를 이용하여 감사정책을 적용하는 것이 최선의 방법이나 현대캐피탈에는 아직 적용되어 있지 않은 듯 하다.

서버 보안의 강화가 필요한 시점

많은 공공기관과 금융기관 그리고 일반 기업체에서 SecureOS 를 도입하고도 제대로 활용하지 못하는 경우가 많다. 네트워크 보안과는 달리 서버 운영체제, 네트워크, 시스템소프트웨어, 웹응용프로그램에 대한 지식을 비롯한 다양한 경험과 지식을 필요로 하는 것이 바로 SecureOS 제품이다.

하지만 국내의 엔지니어에 대한 정서(?)상 그렇게 다양하고 풍부한 경험과 지식을 갖춘 엔지니어를 찾기는 어렵다. 기술자를 경시하는 풍조가 IT 업계에도 만연되어 있어 엔지니어가 오랫동안 다양한 분야에서 경험과 지식을 쌓기란  무척 어렵기 때문이다. 그리고 그러한 이유에서 제대로 서버보안S/W(SecureOS)를 운영할만한 엔지니어를 찾기란 쉽지 않다.

하지만 주요 데이터가 보관되고 서비스되는 서버의 보안을 서버 내부가 아닌 서버 외부의 네트워크 보안 시스템에게 맞기는 것은 사람이 오리털 파카를 입고 있으면서 그 속에는 홀라당~~ 벗고 있는 것과 크게 다를 바가 없다.

서버와 애플리케이션 보안의 강화, 그것만이 보안이 취약한 Unix/Linux/Windows 서버의 해킹을 막을 수 있는 유일한 해결책이다.

댓글 달기

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

Scroll to Top