데이터베이스 보안의 의미
공격목표는 데이터베이스- 우리의 데이터는 안전한가
올 초 ‘1.25 인터넷 대란"의 악몽이 채 사라지기도 전인 2월 중순 미국발 외신은 8백만명의 비자, 마스터 카드 정보가 해킹당한
사건을 보도했다. 어마어마한 정보 유출 숫자에도 놀랐지만 굴지의 글로벌 기업에서 벌어진 어처구니없는 보안정책 미비가 더욱 충격을 주었다.
국내에서도 고객정보가 유출되거나 해킹 당한 사례가 빈번해 심각함이 더해지고 있다. 특히 비자 및 마스터카드의 해킹 등에서 알 수 있듯이
데이터베이스 유출은 심각한 문제를 발생한다. 또한 해킹의 대부분이 내부자 소행에 의한 데이터베이스 침입으로 시급한 보안장치 마련이 요구되고
있다.
정보보호란 궁극적으로 각 조직이 저장하고 있는 데이터베이스내의 데이터를 보호하는 것이다. 기존의 방화벽, 침입탐지시스템, 안티 바이러스
등은 매번 새로운 기법으로 침입을 시도하기 때문에 속수무책으로 당할 수밖에 없다.
현재 정부는 ‘정보통신망이용촉진 및 정보보호등에 관한
법률(일부개정 2002.12.18 법률 제6797호 정보통신부, 시행일 2003.1.19)"과 ‘개인정보보호지침(고시 2002.1.18)"을
시행하고 있다. 개인정보보호지침의 제4조 2항 개인정보보호를 위한 일반원칙과 제17조 각 항의 기술적 보호조치에 따르면 피해자인 각 조직 또한
‘개인정보를 보호하기 위해 적극 노력하여야 한다"라고 하는 조항을 충족시키지 못하고 있음을 간접적으로 드러내고 있다.
우리가 주변에서
듣는 해킹 사례는 오히려 빙산의 일각에 지나지 않는다. 각종 보도 및 지난 5월 한국정보보호진흥원(KISA) 침해사고대응팀(CERTCC)이
발표한 ‘해킹·바이러스 통계 및 분석 월보"에 따르면 4월 말 현재 총 1만1천99건의 해킹사고가 발생한 것으로 나타났다. 이같은 수치는 지난해
전체 해킹사고 건수인 1만5천1백92건의 73%에 이르는 수치다.
공격유형
해킹을 당하는 사례만큼이나 공격의 유형도 다양하다
.
△공격 유형1 - 바이러스 감염: 바이러스, 웜,
트로얀 목마, 기타 악성 코드 등의 소프트웨어에 의한 컴퓨터 공격 행위를 통해서 조직의 시스템 오작동 및 서비스 거부(DOS), 데이터의 무결성
파괴 등을 유발하는 행위다.
△공격유형2 - Flooding(대량의 허위 트랜잭션 발생행위): DoS(Denial of Service)
공격의 일종으로 서버의 작동 불능을 유발시키는 행위로서 SYN Flooding, Ping Flooding, Mail Flooding 등이 있다.
△공격유형3 - 데이터 절취: 네트워크에서 정보를 훔치는 행위이며, 신용카드 정보를 포함하는 고객의 데이터베이스로부터 정보를 절취하는
행위와 네트워크상에 전송되는 데이터를 중간에서 가로채는 행위 등이다.
이러한 공격행위는 급속도로 증가되고 있으며 지능화해 가고 있다.
이러한 현상은 해커들의 실력이 날로 향상되고 있는 것 외에도 일반 사용자들에 의해 정보보안 취약성을 분석, 탐지하는 도구 또는 프로그램(네트워크
스니핑 및 각종 취약성 분석 스캐너)들이 침입의 수단으로 악용되고 있기 때문이다. 그러나 보다 근원적인 문제는 정보보호 정책의 미비에서 기인하는
것이다. 최근 모 신문사가 실시한 모의 해킹에서 대부분의 사이트가 수분이내에 뚫렸다는 사실은 시사하는 바가 크다.
현 보안 체계
먼저 현재 대부분이 채택하고 있는 보안의 체계를 살펴보자. 현재의 보안체계(<그림1> 참조)는
외부로부터의 위협을 차단하기 위해 방화벽, 안티바이러스라는 장벽을 설치하고 네트워크 침입차단시스템, 인증을 거쳐야 DMZ인 서버에 도달할 수
있다.
비유를 하면 검문서 거쳐 방역확인(공항 입국시 사스 감염자 식별하는 것과 유사)을 하고 신분증을 제시한 후 문을 통과하면 이제는 누구도
간섭하지 않는다. 여기까지를 소위 경계선 보안(Perimeter Security) 영역이라 한다. 그런데 사용자 아이디와 비밀번호가 노출된다면
위장 입국해서 무슨 짓을 해도 모를 것이다.
만일 해커나 악의를 가진 사용자가 어떤 특정 시스템에 가서 서비스 거부 같은 사태를 유발할
경우를 생각해 보자.
현대 기업조직 및 공공 기관들은 엄청난 데이터를 그들의 데이터베이스에 저장하고 있다. 정보시스템 의존도가 높은
업종의 경우 시스템 서비스 중단 사태는 곧바로 재무적 손실을 초래하거나 조직의 신뢰가 추락할 것이다. 그 정보가 심각한 경우 그들의 고객들로부터
송사를 제기 당할 수 있다는 것을 쉽게 유추해 볼 수 있다.
보다 심각한 경우는 당연히 데이터의 유출, 파괴, 변질을 가져오는 ‘공격유형
3"에 속하는 ‘데이터 절취"일 것이다. 그것이 개인의 정보일 경우 개인정보보호 지침을 수행하지 못한 것이며 고객들의 이탈도 피할 수 없다.
또한 손해배상소송이 제기됨은 물론 조직의 업종에 따라서 존폐 위기에 몰릴 수도 있다.
일반적으로 현재 대부분의 조직들은 외부 침입 위협으로부터 자신들의 정보자산을 보호하기 위한 경계선 방어 분야에 몰두하고 있다. 반면 정보보호의 궁극적인 대상인 데이터 및 데이터베이스의 방어에 대해서는 그다지 뾰쪽한 방법이 없는 게 현실이다.
<그림1> 현재의 보안 체계
데이터 보안 대책
경계선 방어에 더해 데이터의 방어에는 어떤 방안들이 있고 어떤 경우에 적용할 수 있을까.
△보호방안 1 - 재난 복구: 운영중인 데이터베이스의 고의 또는 실수에 의한 파괴, 무결성 훼손, 천재지변 등에 대비해 시스템 의존도가 높은 업무활동의 연속성을 보장하기 위한 시설·장치·프로세스를 일컫는다. 이는 발생 빈도 또는 확률은 낮지만 일단 발생시 그 피해는 상상을 초월하는 사고에 대비하는 방법이다. 주요 정보통신 기반 시설들을 포함한 정보시스템 의존도가 높은 조직은 필수적으로 완비해야 할 것이다.
△보호방안2 - 중요 데이터의 암호화: 개인 정보 및 업무활동과 관련된 중요 데이터를 암호화해 데이터의 불법 유출에 대비하며 허가된 사용자만 복호화해 접근할 수 있도록 하는 방법이다. 개인정보의 누출에 대한 우려가 큰 조직의 경우 선택적으로 적용할 수 있는 방법이다. 그러나 정보 유출 이외의 데이터베이스 보안 전체에 대한 정책을 설정하고 데이터베이스의 무결성을 보장하거나 데이터의 절취로부터 보호 등에 대해서는 별도의 대책이 필요하다.
△보호방안3 - 데이터베이스 보안 및 감사: 데이터 절취행위 및 고의 또는 실수에 의한 데이터의 위·변조를 차단, 탐지, 경고, 복구조치,
추적하는 보안 정책을 자동화해 개인정보 및 업무 활동상의 중요 정보 자산을 보호하는 장치·제도·프로세스를 일컫는다.
이 방법은
데이터베이스 전체에 대한 보호 정책을 수립하고 조직 내·외부의 정보보호에 대한 준수 의무를 충족시킬 수 있다. 또한 상황에 따라 보호정책을
운영할 수 있는 종합적인 해결책이라 하겠다.
그렇다면 데이터 보호를 위한 감시대상 활동을 살펴보자.
관계형 데이터베이스 시스템에는 제품에 따라 약간의 차이는 있지만 일반적으로
4가지의 감시대상(<그림2> 참조)이 존재한다.
·감시대상1: 접근권한에 관한 카탈로그 또는 데이터딕션어리.
·감시대상2: 테이블, 뷰, 인덱스, 패키지, 테이블 스페이스 등을 정의한 메타데이터.
·감시대상3: 실제 데이터콘텐츠를 저장하는
테이블을 구성하는 튜플 및 컬럼.
·감시대상4: 사용자의 데이베이스 접근 행동 패턴.
이들 각 감시대상에 대한 감시활동은 다음과 같다.
△감시대상1: 접근권한에 관한 카탈로그 또는 데이터딕션어리에 대한 활동.
·현재의 접근권한에 대한 취약성 분석(예컨대 잘 알려진
사용자 아이디 및 패스워드, 패스워드 갱신 주기 및 규칙위반, 사용자별 역할별 접근권한의 적정성 등 약 50여 가지의 권장 또는 모범
사례).
·조직의 특성에 부합하는 사용자 정의 규칙 정의.
·모범 또는 권장정책 사례의 선택적 활성화.
·접근권한 위반사례에
대한 실시간 경고 및 통지.
△감시대상2: 테이블, 뷰, 인덱스, 패키지, 테이블 스페이스 등을 정의한 메타데이터에 대한 활동.
·메타데이터에 대한 사소한
변경이라도 경고 및 통지하고 이력을 관리해 데이터베이스 파괴 및 망실 시 조기 복구 기반 구축.
△감시대상3: 실제 데이터 콘텐츠를 저장한 테이블을 구성하는 튜플 및 컬럼에 대한 활동.
·컬럼 레벨까지의 데이터의 불법 접근 행위
탐지/경고/이력관리 정책 수립.
·컬럼 레벨까지의 데이터의 불법 변경 행위 탐지/경고/이력관리 정책 수립.
·통계적 기법을 이용해
기존 데이터의 보안 정책 준수 여부 검증을 통한 무결성 회복.
△감시대상4: 사용자의 데이베이스 접근 행동 패턴에 대한 활동.
·비인가 사용자의 접근 시도 탐지/차단/추적.
·로그인 실패
사례 탐지/경고/추적.
·비정상적인 Direct SQL SESSION에 대한 이상 행동 탐지/경고/추적.
·비인가 서버에 의한
접근시도 차단/추적.
·조직의 특성에 부합하는 규칙기반, 통계기반, 이력기반의 침입탐지 및 차단 정책 수립.
이상 감시대상별
주요활동에 대해 열거했다. 이러한 활동을 처리하는 기능들이 어떤 방법에 의해서 처리되는가하는 내용은 다음 호에서 데이터베이스 보안 및
감사시스템의 적용사례를 통해서 소개한다.
<그림2> 데이터보안의 감시대상
정보보호 프로세스 자동화 필요성
감시 대상에 대한 보호활동에 대해서는 DBMS업체 및 제3자에 의해 많은 노력이 경주되고 있는 것은
사실이다. 그러나 유감스럽게도 제공되는 대부분의 기능들이 원재료 수준이어서 각 조직이 그들의 특징에 어울리는 보호 프로그램을 작성해야 하며, 이
또한 자동화된 관리 프로세스로 운영하기 어려운 수작업에 의한 정기적인 실행에 그치고 있다.
보안에 있어서 가장 중요한 캐치플레이즈가
있다면 ‘최선이 차단(Avoidance)이다"라는 것이다. 그러나 인터넷상에서 모든 경우의 수를 상정하는 침입차단 정책을 만든다는 것은
오프라인으로 운영되지 않는 한 유감스럽게도 불가능하다. 다시 말해서 보안문제와 가용성 및 편리성과는 반비례하는 것이다.
로그 분석 등의
수작업에 의존하는 보안 정책을 구사하는 경우에는 다행히 데이터가 파괴되지 않았을 경우 자신들의 DB가 언제 절취 당하였는지도 모를 수밖에 없다.
이런 경우의 면책은 유감스럽게도 없다.
차선책은 ‘조기 탐지와 조기 복구"라 할 수 있다. 조기 복구란 침입에 의해 발생된 피해를
극소화한다는 의미다. 보안 취약성 분석을 통한 일차
'오라클' 카테고리의 다른 글
Table 크기의 추정 방법 (0) | 2006.10.26 |
---|---|
Index 크기의 추정 방법 (0) | 2006.10.18 |
데이타 화일 Rename (0) | 2006.10.18 |
데이타 화일을 삭제한 경우 Recovery (0) | 2006.10.18 |
Control File 재생성 (0) | 2006.10.18 |