전문가칼럼

[전문가 기고] 데이터베이스(DB) 보안을 위해 지켜야 할 10가지

비핀 사마르 오라클 데이터베이스 보안 수석 부사장

글: 비핀 사마르(Vipin Samar) 오라클 데이터베이스 보안 수석 부사장

보안 분야에서 근무해온 지난 25년을 되돌아보면, 과거에 후순위로 처리할 일로 인식되었던 보안 업무는 현재 데이터 기술 획득과 설치 과정에 있어 가장 우선적으로 고려해야 할 요소 중 하나로 간주되고 있다.

대부분의 조직은 가장 귀중한 정보를 정보의 검색과 분석이 용이하도록 특별히 설계된 데이터베이스에 집중적으로 보관한다.

다수의 공격자에게 데이터베이스가 가치 있는 목표물로 여겨지는 만큼, 기업은 데이터베이스를 안전하게 관리하기 위해 만전을 기해야 한다. 아래에 권장하는 열 가지 우선순위를 참고한다면, 기업은 보다 효율적으로 데이터베이스 보안을 유지할 수 있을 것이다.

◆시스템이 이미 알려진 취약점에 노출되어 있도록 내버려 두지 말라=시스템 업체가 관련 패치를 배포할 때마다, 해커는 해당 시스템에 어떤 취약점이 있는지 알 수 있다. 잠재적인 시스템 공격자가 회사가 처리하고 있는 취약점을 더 잘 이해하기 위해 패치를 분해하고 분석할 것은 자명하다.

패치가 배포된 시점부터 자동 해킹 툴에 취약점을 학습시키기까지 걸리는 시간은 기껏해야 며칠 정도다. 몇 주 이상 소요되는 일은 거의 없다. 배포된 패치를 적용하는 데 걸리는 시간은 짧으면 짧을수록 좋고, 이를 조직적 관점에서 기업 보안의 우선순위로 삼아야 한다.

◆보안 설정 리스크를 이해하라=대다수의 데이터베이스 침투 성공 케이스는 데이터베이스를 노출시킨 서비스의 잘못된 보안 설정과 손상된 사용자 계정이라는 두 가지 요소 중 하나 혹은 둘 모두와 연관되어 있다.

오늘날 기업에서 활용되는 복잡한 데이터베이스는 조직의 필요에 따라 조정할 수 있는 수백 또는 수천 개의 변수로 구성되어 있으며, 이들 중 일부에서 보안 설정이 잘못된 경우 데이터베이스는 위험에 노출될 수 있다.

데이터베이스 공급 업체가 제공하는 유틸리티를 활용해 보안 설정 리스크를 파악하고 평가하라. 또한 보안 프로그램의 일부로서, 데이터베이스 설정에 대한 검사를 정기적으로 이행하라. 보안 스캐너를 사용하거나, 인터넷 보안 센터(CIS)의 벤치마크를 획득한 툴을 활용하는 것도 좋은 방법이다. 분기별로 검사를 실행하고 가능한 경우에는 마지막 검사와 현재 검사 결과 사이의 차이를 확인해 시스템 환경에 발생한 변화를 파악하라.

◆데이터베이스 내 민감한 데이터의 종류와 중요성을 파악하라=이를 통해 데이터의 가치뿐만 아니라, 데이터의 손상이 비즈니스에 가져올 리스크를 이해할 수 있고, 그에 상응하는 자원을 배정할 수 있다. 모든 고객의 개인 데이터를 포함한 전체 고객 목록이 저장된 데이터베이스와 15명의 사용자 이름을 저장하는 데이터베이스가 있다면,

전자를 보호하는 데 더 많은 리소스를 투자하는 것이 바람직하다. 민감한 데이터가 있는 위치를 정확히 파악함으로써, 기업은 관련 정보를 활용하여 데이터 보호 및 모니터링 정책 역시 개발할 수 있다.

◆민감한 데이터는 최소한으로만 보관하라=대부분의 자산과 마찬가지로, 데이터는 내재적인 가치를 지니고 있다. 그러나 다른 귀중한 자산과는 다른 점이 있다면, 데이터는 복제될 수 있으며, 이러한 복사본은 원본과 동일한 가치를 지니게 된다. 데이터가 늘어나면 데이터 침해의 위험도 급증한다는 뜻이다.

대부분의 프로덕션 데이터베이스(실제 업무에서 사용 중인 DB)에는 스테이지, 사용자 승인 테스트, 테스트 및 개발 복사본 등 4개 이상의 데이터 복사본이 존재한다. 복사본이 4개가 있으면 리스크 역시 현저히 증가하게 된다. 따라서 가능한 데이터베이스 복사본에서 민감한 데이터를 제외하고, 필요한 경우 진짜 같은 "가짜" 데이터 - 즉, 테스트 및 개발 목적에 충분히 적합하지만 유출 시 기업을 위험에 빠뜨리지 않는 데이터 - 로 교체하는 것이 필요하다.

◆사용자 권한을 주의 깊게 관리하라=사용자에게 부여된 불필요한 권한을 철회하는 것을 기본 원칙으로 하되, 먼저 사용자가 지닌 권한과 실제 사용하는 권한을 파악하고, 사용하지 않는 권한의 철회를 우선적으로 고려해야 한다.

침해된 계정은 데이터베이스 유출의 가장 일반적인 원인 중 하나이므로, 데이터베이스 계정이 위험에 노출될 경우에 대비하여 사용자에게 필요한 최소한의 권한만을 부여했는지 반드시 확인해야 한다. 최소한의 권한을 허가한다는 보안 개념 자체가 특별히 새로운 것은 아니지만, 이를 따르는 것은 회사의 손실을 줄이는 데 있어 필수적이다.

◆데이터베이스 관리자 계정을 효과적으로 통제하라=위험에 노출될 수 있는 데이터베이스 계정 중 가장 큰 가치를 지닌 것은 데이터베이스 관리자의 계정이다. 그러므로 관리 권한을 가진 사용자들을 잘 통제하는 것이 중요하다. 민감한 데이터에 대한 접근을 제한하고, 반드시 필요한 권한만을 허가하며, 다른 사용자들과 마찬가지로 승인된 장소에서만 데이터베이스에 접속할 수 있도록 통제하라. 대부분의 경우, 데이터베이스 관리자가 애플리케이션 데이터에 접근해야 할 이유는 전혀 없다.

◆모든 데이터베이스 로그인 시도를 감시하라=로그인 시도 감시가 보안에 중요하다는 사실은 누구나 알고 있지만, 이는 동시에 제대로 확인되지 않는 일이기도 하다. 로그인 실패를 확인함으로써, 보안 관리자는 잠재적인 공격자가 데이터베이스에 침입을 시도했는지 알 수 있다. 성공한 로그인을 확인함으로써, 그 중 부적절한 로그인이 있었는지 살펴볼 수 있다.

오라클이 경험한 로그인 시도 관련 사례 몇 가지를 소개하자면, 개발자가 애플리케이션 서비스 계정을 잘못 사용하는 경우, 사내 역할이 변동된 직원이 자격 증명 내용이 수정되지 않은 기존 서비스 계정을 통해 로그인하는 경우, 또 논리적으로 맞지 않는 IP주소가 데이터베이스에 연결된 경우, 그리고 공식적으로 승인되지 않은 프로그램을 사용하는 경우 등이 있었다.

◆민감한 데이터에 대한 접근을 모니터링하라=가치 있는 데이터를 훔치려는 시도는 늘 존재한다. 따라서, 가장 민감한 데이터에 대한 접근을 모니터링하고 부적절한 패턴이 있는지 파악하기 위해 정기적으로 감사 기록을 확인해야 한다. 모든 데이터 감사 기록을 읽을 필요는 없지만, 어떤 고객과 최종 사용자, 프로그램 및 IP 주소가 데이터를 확인하거나 업데이트하는지는 알고 있어야 한다.

사용자 혹은 역할 관리를 포함한 중요한 데이터베이스 작업도 모니터링 대상이다. 대부분의 데이터베이스는 검토하는 데이터의 양을 줄이기 위해 감사 대상을 관련 정보에만 국한해 지정한다. 모니터링해야 하는 데이터베이스의 개수에 따라, 감사 기록이나 네트워크 상태를 안전한 저장소에 집중적으로 보관하고 수집된 데이터에 대한 보고를 허용하는 데이터베이스 활동 모니터링(DAM) 솔루션의 도입을 고려해보는 것도 좋다. 대부분의 DAM 솔루션은 기업의 정책에 따른 알림 서비스를 포함한 다양한 유형의 컴플라이언스 보고서를 제공한다.

◆이동 중인 데이터와 저장 데이터 모두를 암호화하라=데이터가 암호화되지 않으면, 데이터를 도용하려는 이들은 데이터베이스와 그 제어장치를 무시하고 기본 스토리지, 데이터베이스 파일 또는 네트워크 연결을 공격해 데이터를 훔칠 수 있다. 일부 고객이 시스템 성능에 영향을 주지 않기 위해 민감한 데이터만 암호화하던 시절이 있었지만, 이제는 하드웨어 명령 세트를 이용한 최적화가 가능한 성능을 갖추고 있기 때문에 모든 애플리케이션 데이터를 암호화하는 편이 훨씬 낫다.

전체를 암호화하면 어떤 것도 놓치지 않을 수 있고, 미처 암호화하지 못한 열에 애플리케이션 사용자가 중요한 데이터를 삽입하는 성가신 경우가 발생할 일이 없다. 대부분의 엔터프라이즈급 데이터베이스는 데이터베이스의 대량 암호화를 제공한다. 타사의 암호화 도구를 사용하는 것은 항상 문제를 발생시키므로 데이터베이스 공급업체의 기본 암호화 서비스를 이용하는 것이 좋다.

◆암호화 키를 안전하게 관리하라=데이터를 암호화하면 대역 외 공격의 리스크는 해결되지만, 암호화 키를 안전하게 저장하고 배포하기 위해서는 키 관리 시스템(KMS, Key Management System)이 필요하다. 데이터베이스는 보통 KMS에 매우 큰 부하를 가하고 여러 가지 운영 시나리오를 가지고 있어 어떤 솔루션이 가장 적합한지 데이터베이스 공급업체와 미리 상의해야 한다. KMS가 모든 상황에서 데이터 부하를 처리할 수 있는지, 키를 잃지 않고 백업, 고가용성, 재난 복구, 클러스터링 및 멀티테넌트 배포를 지원하는지 테스트할 것을 강력하게 권장한다.

앞서 언급한 열 가지 원칙에 따라 데이터베이스를 관리한다면, 기업 내에서 데이터베이스 침해와 관련된 사고는 현저히 줄어들 것이다. 오라클은 기업 IT 시스템의 보안을 최우선으로 생각하며, 민감한 데이터의 탈취를 시도하는 공격자들로부터 데이터베이스를 안전하게 보호하기 위해 고객에게 다면 평가, 선제적 및 사후 관리를 위한 데이터 보안 통제를 포함한 긴밀한 도움을 제공하고 있다.

기업에 있어 가장 중요한 정보를 보관하는 데이터베이스는 역설적이게도 가장 중대한 위험 요소를 지닌 곳이기도 하다. 필요하다면 데이터베이스 공급 업체의 도움을 받아, 기업들이 데이터베이스를 면밀하게 살피고 주요 업무 처리에 필요한 보안 상태를 철저하게 유지하기를 바란다. <끝>

* 본 기고문 내용은 본지의 편집 방향과 무관합니다.

비핀 사마르 오라클 데이터베이스 보안 수석 부사장
기자의 전체기사 보기 기자의 전체기사 보기
디지털데일리가 직접 편집한 뉴스 채널