Computer >> 컴퓨터 >  >> 프로그래밍 >> 프로그래밍

정보 보안에서 데이터베이스 보안이란 무엇인가? 핵심 개념 완벽 정리

데이터베이스 보안의 정의

데이터베이스 보안(Database Security)이란 데이터베이스 또는 데이터베이스 관리 소프트웨어를 무단 사용, 악성 사이버 위협 및 공격으로부터 보호하고 안전하게 유지하기 위한 일련의 조치를 의미합니다. 데이터베이스 보안은 정보 보안(Information Security)의 한 계층에 속하며, 주로 물리적 정보 보호, 저장된 데이터의 암호화, 그리고 데이터 잔존(Data Remanence) 문제를 다룹니다.

데이터베이스 보안 절차는 데이터베이스 내부의 데이터만을 보호하는 것이 아니라, 데이터베이스 관리 시스템(DBMS)과 이에 접근하는 응용 프로그램까지 침입, 정보 오남용, 데이터 훼손으로부터 지키는 것을 목표로 합니다.

즉, 데이터베이스 보안은 데이터베이스 환경 내에서 보안을 제공하는 다양한 절차, 도구, 방법론을 포괄하는 포괄적인 용어입니다. 일반적으로 데이터베이스 관리자와 정보 보안 전문가들이 데이터베이스 보안을 계획, 구현, 유지 관리합니다.

웹 환경과 데이터베이스 보안의 중요성

월드 와이드 웹(WWW)은 저렴하고 즉각적이며 접근이 쉬운 데이터 배포 수단을 제공합니다. 덕분에 데이터 유통은 매우 간편해졌지만, 동시에 적절한 접근 권한을 가진 사용자만 데이터에 접근할 수 있도록 보장하는 것이 필수적으로 되었습니다.

특히 일부 조직이 데이터베이스 기반의 동적 웹 페이지를 활용하면서 기업 정보 보안의 중요성은 더욱 커졌습니다. 과거에는 엄격한 데이터베이스 접근 제어나 전용 클라이언트 소프트웨어가 필요했지만, 이제는 단순한 웹 브라우저만으로도 제대로 보호되지 않은 데이터베이스의 데이터를 열람할 수 있습니다.

결국 기업의 컴퓨팅 환경이 클라이언트 중심에서 인터넷 중심으로 전환될수록 보안 침해 가능성도 함께 높아집니다. 따라서 정보 보안은 끊임없이 위협에 노출되는 영역이라 할 수 있습니다.

데이터베이스 관리자(DBA)의 보안 역할

보안 전문가들은 방화벽이나 기타 인프라를 구축하여 내부 정보를 보호하기 위해 네트워크 관리에 의존해야 합니다. 인트라넷/인터넷 환경에서의 정보 접근 특성상, 데이터베이스 관리자(DBA) 역시 상당 부분의 보안 업무를 직접 수행해야 합니다.

DBA는 자신의 관리 영역에 속하는 기본적인 보안 사항들을 면밀히 검토하고, 데이터베이스에 최적화된 보안 솔루션을 마련해야 하는 책임이 있습니다.

보안 취약점 공개를 둘러싼 논쟁

일부 보안 취약점은 공격자들이 패치가 이루어질 때까지 기다리는 동안 외부에 노출되지 않기도 합니다. 또한 제조사 입장에서는 부정적인 여론 확산을 원하지 않기 때문에 취약점 공개를 꺼리는 경향이 있습니다.

보안 취약점을 공개적으로 논의하는 것이 추가 공격을 부추기는지, 아니면 오히려 예방에 도움이 되는지에 대해서는 아직도 명확하지 않은 지속적인 논쟁이 이어지고 있습니다.

가장 안전한 데이터베이스의 모습

이론적으로 가장 안전한 데이터베이스는 철저히 잠긴 은행 금고나 핵 폭발 방지 벙커 안에 있으며, 인터넷 또는 웹 연결이 전혀 없는 독립형(standalone) 컴퓨터 위에서 운영되고, 연중무휴(24×7×365) 경비가 배치된 환경일 것입니다.

현실적인 데이터베이스 보안 전략

그러나 현실의 데이터베이스 서버는 지속적으로 서비스를 제공해야 하며, 이 과정에서 보안 문제가 발생할 수밖에 없습니다. 따라서 발생 가능한 위협에 대해 현실적인 태도를 유지하는 것이 중요합니다.

데이터베이스는 언젠가 장애나 침해가 발생할 수 있다고 가정해야 하며, 불법 사용자가 비교적 쉽게 침투할 수 있는 데이터베이스에는 진정으로 민감한 정보를 저장하지 않는 것이 바람직합니다.