암호화 방식과 접근제어 및 사후 기록 감사 방식 있어, 하이브리드 방식 최신 트렌드로 부상

현대인이 살아가는 실생활의 모든 부분에서 데이터베이스의 활용이 관여되어 있지 않는 부분은 없다. 하지만 대부분의 사람들은 일상생활에서 데이터베이스의 유용성, 생활과의 밀접성을 느끼지 못하며 그 사용 범위를 정확히 이해하지 못하고 있는 실정이다. 최근 들어 금융권을 중심으로 데이터베이스의 관리와 보안의 필요성에 대해 점차 눈을 뜨고 있으며, 데이터베이스 보안에 대한 여러 방법론이 대두되고 있다. 데이터베이스 보안은 앞으로 보안 필수 요소의 한축으로 자리 잡을 전망이다.

정기용 이사 bulsajgy@banet.co.kr
바넷정보기술 CTO

요즘 사람들은 각자의 공간에서 인터넷으로 정보를 검색하며, 물건을 쇼핑하고 원하는 컨텐츠를 다운로드해 사용한다. 이는 광대역 브로드밴드의 보급이 가속화된 후 주위에서 흔히 볼 수 있는 모습이다.
PC를 통해 어떤 창구에 접속해 정보를 획득하고 이를 활용하는 것은 전통적인 데이터베이스의 활용 방법이었다. 하지만 데이터베이스의 활용은 모든 사물, 행위들이 네트워크화 되면서 우리 생활에 없어서는 안될 근간이 되었다. 기차표를 예약하거나 공과금을 지불할 때 은행에서 돈을 찾거나 홈쇼핑에서 물건을 주문할 때 이 모든 행위들은 일련의 데이터를 형성한다. 은행에서 얼마간의 돈을 찾으려 할 때 은행은 축적된 데이터베이스를 바탕으로 어떤 고객에게 얼마 만큼의 돈을 지불해야 할지를 결정한다. 이는 데이터베이스를 기본으로 한 정보시스템에서 이루어 지는 일이며 만일 이런 도구가 없다면 현재의 편리한 생활은 이루어 질 수 없을 것이다. 이처럼 편리한 생활의 근간이 되는 데이터베이스 또는 그 데이터베이스를 보관하는 장치들에 대해 어떤 외부적 교란이나 충격을 가한다면 우리 생활 자체의 혼란을 초래할 것임은 자명한 일이다.

DB는 우리 생활 그 자체
이처럼 웹기반 네트워킹으로 인한 정보사회가 고도화되면서 ISP(Internet Service provider)업체에서는 고객관리 데이터베이스 서버와 웹 서버를 따로 분리해 네트워크 사용자들을 관리하고 있다. 이는 축적되는 데이터베이스의 양이 과거와는 비교할 수 없을 정도로 방대해져 모든 데이터베이스를 일괄적으로 통제하는 것은 불가능하기 때문이다.
여러 데이터베이스 서버를 관리한다는 것은 데이터베이스의 알맹이 즉 데이터베이스의 내용뿐만 아니라 여러 구성요소들로 이루어진 데이터베이스 시스템의 취약점까지 상세히 파악하여 외부로 부터의 충격에 대비하여야만 한다는 것을 말한다.
최근 사회에 큰 파장을 일으킨 ‘리니지 개인정보 유출 파동’은 어딘가에 쌓여있던 개인정보 관련 데이터베이스들이 불법적인 방법에 의해 유출, 불법적인 돈벌이에 사용되면서 문제가 된 것이다. 수십 만명의 명의가 도용된 이 사건은 그 규모의 방대함도 엄청나지만 국내 최고의 게임서비스 업체임에도 불구하고 제대로 된 보안 정책이 없었다는 점에서 더욱 큰 충격을 주었다. 국내 뿐만 아니라 국외에서도 이러한 개인정보 유출 사고로 대표되는 데이터베이스 유출사고는 끊임없이 이어지고 있다 . 데이터베이스 해킹의 대부분은 내부자 소행에 의한 데이터베이스 침입으로 이에 대한 시급한 보안장치 마련이 요구되고 있다.
보안의 일반적 개념을 좀 더 세부적으로 살펴보면 우선 보안의 위험 요소 즉 공격의 유형에 대해 올바르게 알고 대처할 필요가 있다. 다양한 해킹 기법만큼이나 공격의 유형도 갈수록 진화하고 다양해지고 있다.
보안 위험요소, 공격의 유형을 살펴보면 바이러스의 공격 즉 바이러스, 트로이 목마, 웜, 악성 코드 기타 백도어 프로그램 등 불법적으로 시스템을 공격하기 위해 만들어진 소스이다. 이는 시스템의 오작동 및 서비스 거부 데이터의 변조 파괴 등 직접적으로 사용자에게 영향을 끼치는 전통적인 공격의 개념이다.
최근 들어 유행하는 또 하나의 공격방법은 대량의 허위 트랜잭션(Flooding)을 발생시켜 각종 서버를 동작 불능의 상태로 몰고 가는 DOS(Denial of Service) 공격이다. 몇해 전 국내에서도 대규모 DOS공격을 통해 DNS서버가 다운되어 전국의 인터넷망이 불통되는 초유의 사태를 겪은 적이 있다.
마지막으로 이러한 외적 공격요인 이외에 내부의 보안위험 요소 즉 내부로부터의 공격 데이터 절취 행위가 있다. 외부로부터의 공격은 이제까지 그 심각성이 충분히 인식되어 여러 가지의 방법과 수단을 통해 통제 방지되고 있으나 내부로부터의 보안 위협 즉 내부 사용자에 의한 보안 침해 사례는 전체 사고의 약 80% 이상을 차지할 정도로 급증하고 있다.

정보보호=데이터의 보호
데이터베이스 보안에 대한 이해를 깊게 하려면 우선 현 보안 체계의 흐름도를 알아볼 필요가 있다. 현재 대부분의 보안 체계는 외부로부터의 위험요소 침투를 방지하기 위해 방화벽, 안티 바이러스 기능의 필터를 설치하고, 네트워크 침입차단시스템의 인증을 거쳐야 데이터베이스 서버에 도달할 수 있다.
하지만 방화벽, 네트워크 침입차단 시스템의 암호와 인증 방법을 모두 입수, 숙지하고 있다면 그 이후 데이터가 저장된 공간에서의 접속 데이터를 절취하거나 변조한다 해도 어떤 제지를 가하거나 무슨 일을 누가 어떻게 했는지 알 방법이 없다. 일반 기업이나 은행을 포함한 금융권, 그리고 행정업무를 담당하는 관공서 및 공공기관 등은 헤아릴 수 없는 데이터를 보유하고 이를 데이터베이스화하여 서버에 저장 보존 활용하고 있다.
이러한 데이터베이스의 중요성은 두 번 말할 필요가 없다. 시스템의 중단 혹은 시스템 내부 데이터의 변조 및 유출로 인한 불법적 사태 발생은 곧바로 조직의 재무적 손실로 이어질 뿐만 아니라 심지어는 돈으로는 환산할 수 없는 치명적인 손실을 입힐 수 있기 때문이다.
일본에서는 개인정보보호법의 실행으로 각종 내부 보안 솔루션들이 구축되고 있으며, 구미 선진국 역시 샤베인 옥슬리 법안, 바젤II 등 각종 개인 정보 보호 및 내부 정보 보안에 관한 법률을 만들어 여러 분야에 걸쳐 발생할 수 있는 보안 리스크에 대비하고 있다.
정보보호란 각 조직들이 보유하고 있는 데이터베이스내의 알맹이들 즉, 데이터를 보호하는 것을 말한다. 데이터베이스를 보호하는 방법은 일차적으로 방화벽이나 침입방지시스템, 바이러스 백신 등 전통적인 방법으로 일차적 보호가 가능하지만 갈수록 진화되어 가는 기법의 출현이나 인가된 내부사용자들에 의한 침입으로 인해 근본적인 해결책을 마련하지 못했다. 이에 데이터베이스 자체에 대한 모든 접근은 제어 로깅 방법 또는 데이터베이스 유출 시도 자체를 아예 봉쇄하는 데이터베이스 암호화 등의 보안 방법이 나오고 있다.

보안의 새 흐름 ‘데이터베이스 보안’
한 가지의 보안만으론 절대적인 보안의 위협으로부터 벗어날 수 없으며 여러 가지 단계별 보안이 구축, 적용되어야만 중요한 자산인 데이터베이스를 외부 혹은 내부의 침입으로부터 안전하게 지킬 수 있다. 물론 보안의 방법론적 구축 강구에 앞서 조직의 최고 경영자 혹은 최고 정보 관리자의 보안확보에 대한 명확한 의지와 이에 따르는 실질적인 정책 수립이 선행되어야 하는 것은 말할 필요가 없다.
보안의 신흐름으로 자리 잡고 있는 데이터베이스 보안의 기술적 동향과 방법에 관해 알아보자. 현재 데이터베이스 보안 솔루션은 크게 암호화 방법과 접근제어 및 사후 기록, 감사의 방법으로 나뉘어져 있다.

▲ 암호화 방식 : 암호화 알고리즘을 이용하여 데이터를 직접 암호화 하는 방법으로 데이터베이스를 지키는 방법 중 하나이다. 암호화 방식의 가장 큰 장점은 데이터가 불법적으로 외부에 유출된다 하더라도 유출된 데이터가 암호화 되어 있으므로 그 데이터를 활용할 수 없다는 점이다.
암호화 알고리즘을 이용한 암호화 방식은 데이터베이스 분야 이전에 네트워크 혹은 시스템 분야에서도 혼용돼 사용되기도 한다. 암호화 방식 자체가 필요한 데이터를 암호화 하여 데이터베이스에 저장하고 필요시 이를 불러내어 복구 변경 혹은 조회하고 다시 데이터베이스에 암호화 하여 저장하는 방식을 반복한다. 이 때문에 대규모 데이터를 항시 처리해야 하는 현재의 상황에서는 암호화 처리에 상당한 트래픽이 발생하는 암호화의 방식은 일부 특정한 분야에서 사용되는 것이 일반적이다. 물론 암호화의 기술적 난제를 극복하기 위해 보다 빠른 압축 알고리즘 로직의 개발, 개인정보 및 일부 주요정보 등 특정 컬럼에 대한 선택적 암호화, 데이터 자체의 암호화가 아닌 네트워크 단의 패킷 암호화 등 여러 가지 방법론적 시도들이 시험되고 있고 있다. 그렇지만 아직은 대용량 데이터 처리에 따른 지연, DBMS의 성능저하, 데이터베이스 전체의 보안 설정 및 접근 방지대책, 데이터 무결성을 보장하거나 데이터베이스 접근에 대한 원천적 차단에 대한 여러 가지 보안책이 별도로 필요하기에 다른 방법에 비해 아직은 한정적으로 사용되고 있다.

▲ 접근제어 및 사후 기록 감사 방식 : 접근제어 및 사후 기록, 감사의 방식은 현재 데이터베이스 보안 구현의 가장 현실적인 방법으로 널리 사용되고 있다. 일반적으로 프록시 방식, 인라인 방식, 스니핑 방식, 에이전트 방식이 사용된다. 이 방식의 특징은 DBMS에 부하를 주지 않으며 타깃 데이터베이스로의 허가되지 않은 접근을 원천적으로 차단 할 수 있다는 점과 모든 SQL을 실시간으로 감시, 기록 할 수 있다는 점, 어떤 데이터베이스 보안 방법이든 필연적으로 발생할 수밖에 없는 DBMS의 속도저하를 최소한으로 할 수 있다는 장점이 있다.
앞에서 언급한 4가지의 방식은 모두 각기 나름대로의 장단점을 가지고 있으며 특정 환경에 맞게 각 방식이 가지는 장점들을 살려 한 가지 이상의 방법을 혼용하는 하이브리드 방식이 현재 트렌드로 자리 잡고 있다. 하지만 모든 방식을 이해하고 실제 구현 할 수 있는 기술력을 보유한 기업이라야 제대로 된 하이브리드 방식을 구현할 수 있다. 현실적으로 하이브리드 방식의 구현을 위해 컨설팅을 하고 시스템을 구축할 수 있는 업체는 극히 소수에 불과하다.

접근 제어 각 방식별 장단점
▲ 에이전트 방식 : 에이전트 방식은 서버 자체에 접근제어 및 로깅 기능을 포함하는 에이전트를 이식, 데이터베이스 보안을 구현하는 방식이다. 데이터베이스에 직접 컨택하는 전용 클라이언트를 포함해 모든 접근 루트를 컨트롤할 수 있는 가장 강력한 방법의 데이터베이스 보안 방법이다. 하지만 에이전트를 데이터베이스 자체에 직접 설치 구동함으로서 데이터베이스 서버에 트래픽을 발생, 데이터베이스 서버의 성능저하 우려가 있고 에이전트와 데이터베이스 내 데이터베이스와의 충돌, 시스템 정지의 리스크가 내재하고 있다. 더욱이 이런 위험성을 방지하기 위해 이중화를 구성하는 방법 역시 불가능하므로 데이터베이스 운영 혹은 관리자의 입장에서는 기피하게 되는 방식이다. 이러한 위험성으로 인해 업계에서의 입지가 좁아지는 추세이다.

▲ 프록시 방식 : 게이트웨이 방식의 일종으로 데이터베이스 서버로 접속하는 모든 IP를 데이터베이스 보안서버(프록시서버)를 통하도록 포워딩하게 설정을 변경해야 한다. 물론 이런 설정을 변경하는 불편은 있지만 가장 강력한 접근 제어 기능을 제공하며 정책의 추가만으로 타깃 DBMS의 추가가 가능해 대형 시스템 환경에 유리하다. 데이터베이스 보안서버(프록시서버)의 장애발생 시에도 이중화 구성이 가능하므로 온라인 업무에 지장 없이 복구가 가능하다. 단, 데이터베이스 서버로 직접 접속하는 경로 차단이 필요하며 이는 에이전트 방식을 제외한 모든 방식에 동일하게 적용되는 룰로 보안 책임자의 정책적 결정이 필요한 사안이다.

▲ 인라인 방식 : 인라인 방식은 타깃 데이터베이스 서버와 클라이언트 네트워크 사이에 인라인 보안시스템을 구성하는 방식으로 이 역시 게이트웨이 방식의 일종이다. 또 서버나 클라이언트에 별도의 에이전트 설치나 설정 변경이 필요 없는 장점이 있으며 규모가 크지 않고 데이터베이스 서버가 한 장소에 위치해 있으며 온라인 업무의 비중이 그다지 높지 않은 시스템에 유리한 방식이다. 이러한 장점과 더불어 모든 패킷에 대해 100% 통제, 모니터링, 로깅이 가능하다는 장점이 추가되지만 데이터베이스 보안서버의 다운시 모든 업무의 중단 우려가 있으며 타깃 데이터베이스 서버의 규모에 따라 다수의 데이터베이스 보안서버가 필요하다는 단점이 있다. 그리고 데이터베이스 보안 서버의 성능에 따라, 트랜젝션의 규모에 따라 시스템에 부하가 걸리는 단점이 있다. 데이터베이스 보안 서버 장애 발생에 대응하기 위해 데이터베이스 보안 백업서버로 이중화 구성을 통한 바이패스기능을 제공한다 하더라도 아직은 장애 대응시 불안정한 요소가 산재해 있다. 이러한 불안정 요소에 대비하기 위해 데이터베이스 보안 서버에 리소스를 넉넉히 산정 시스템을 구축할 필요가 있다.
▲ 스니핑방식 : 네트워크 선로 상에 흐르는 패킷들을 TAP방식과 패킷미러링 방식을 통해 패킷을 분석 로깅하는 방법으로 사전통제의 방법론적 의미보다는 사후 감사의 의미에 비중을 두는 데이터베이스 보안 방법이다. 스니핑 방식은 인라인 방식과 마찬가지로 서버와 클라이언트 사이에 어떠한 에이전트의 설치나 설정변경이 필요없으며 네트워크에 전혀 부하가 없으며 시스템 구축이 용이하다는 장점이 있다.
하지만 일단 흘러간 패킷에 대한 어떠한 차단이나 통제가 불가능해 원천적으로 불법적인 방법에 의해 타깃 데이터베이스로의 접근을 차단한다는 사전접근의 기능은 부족하다. 이 때문에 데이터의 변조나 훼손으로 인한 무결성 유지에 어려움이 있을 수 있으며 권한설정 및 접근차단을 위해 데이터베이스 보안을 구축하려는 환경에는 적합한 방법이 아니다. 또 스니핑 기법의 신뢰성에 있어서도 기술력이 뛰어나지 못하면 100% 패킷을 스니핑하기 어렵다는 기술적 문제도 가지고 있다. 스니핑 기법은 주로 사후 모니터링만 가지고도 충분히 데이터베이스 보안이 해결 가능한 경우에 주로 쓰이며 스니핑 기법의 단점들을 보안하기 위해 다른 방식과 혼용하여 사용되는 사례도 있다.

▲ 하이브리드 방식 : 데이터베이스 보안의 흐름에서 새로운 트렌드로 떠오르는 방식이다. 주로 한 가지 방식만으로는 보완의 여지가 필요한 복잡한 시스템 환경에 적합하며 주로 프록시 방식과 스니핑 방식을 병행하여 사용하는 방법이 현재 기술적으로 가장 우위에 있다. 하이브리드 방식의 장점은 데이터베이스 보안의 대상을 명확히 설정하여 데이터베이스를 타깃으로 하는 클라이언트들의 접속을 정형적 접근과 비정형적 접근으로 구분, 그 중요도에 따라 사전접근 통제와 실시간 모니터링, 사후 감사 등을 병행하여 실시하는 방법을 말한다. 이는 스니핑 방식의 단점인 사전통제의 어려움과 프록시방법의 단점인 시스템의 대형화에 대응할 수 있는 방식으로 각 방식의 장점을 활용하여 시스템을 구성할 수 있다.
대형 금융사 등의 온, 오프라인 업무 등 대규모의 시스템에 적합한 방식이다. 이외에 이러한 방식들에 부분적으로 암호화를 가미한 하이브리드 방식 등이 있으나 기술적인 문제와 효율성의 문제로 현재는 스니핑 방식과 프록시 방식을 혼합한 하이브리드 방식이 기술적 우위를 가진 일부 데이터보안 솔루션 업체들에 의해 구현되고 있다.

데이터베이스 보안의 선택
완벽한 보안이란 없다는 말처럼 단 한 가지의 보안으로 모든 침입 혹은 보안 위험 요소에 대한 우려를 불식시킬 수는 없다. 이는 단 한 가지만의 소프트웨어 혹은 하드웨어, 즉 한 가지 방식의 솔루션 구축만으로는 모든 네트워크에 흐르는 데이터에 대한 보안이 실행 될 수 없다는 것을 의미한다. 완벽한 정보보호를 위해서는 앞에서도 말했듯이 최고 경영자 혹은 최고 정보책임자의 정보 보안에 대한 강력한 의지와 이를 뒷받침 하는 정책 결정 그리고 이를 수행하기 위한 조직의 결성 및 정책 실행이 필요하다. 단 한 번의 이벤트성 보안 시스템 구축이 아닌 보안에 대한 끊임없는 관심 및 경각심이 유지되어야만 최소한의 보안 유지가 가능한 것이다.
보안의 한 방법으로 데이터베이스 보안을 선택하기 앞서 우선 고려되어야 할 사항으로 시스템에 맞는 아키텍처 선택 뿐만이 아닌 향후 확장성, 그리고 구축 후의 안정성에 관한 일체를 고려해야 한다. 여기에다 과거 수행하던 모든 업무환경에 대한 연관성을 고려하고, 같은 네트워크 환경 안에서 돌아가는 다른 보안 솔루션이나 애플리케이션과의 호환성을 따지고, 기존 업무에 지장을 주지 않는 범위 한에서 데이터베이스 보안을 구축하는 것이 현명한 방법이다.
데이터베이스 보안을 기술적 관점 뿐만이 아닌 경영적 측면에서 정책 관리와 더불어 가이드라인을 설정해 운영한다면 좀더 효율적인 보안의 방법을 마련할 수 있을 것이다.
저작권자 © 아이티데일리 무단전재 및 재배포 금지