데이터베이스 보안은 데이터베이스 기밀성, 무결성 및 가용성을 설정하고 유지하도록 설계된 다양한 툴, 통제 기능 및 수단을 의미합니다. 이 글에서는 주로 기밀성에 집중하여 설명하는데, 기밀성은 대부분의 데이터 위반에서 손상되는 요소이기 때문입니다.
데이터베이스 보안은 다음을 처리하고 보호해야 합니다.
데이터베이스 보안은 정보 보안 기술 및 사례의 모든 측면이 포함된 복잡하고 어려운 작업입니다. 이는 또한 데이터베이스 가용성과도 자연스럽게 충돌을 일으킵니다. 데이터베이스의 접근성과 사용 가능성이 높을수록 보안 위협에 더 취약하며 데이터베이스가 위협에 취약할수록 액세스 및 사용은 더 어려워집니다. 이러한 역설은 때때로 앤더슨의 규칙이라고도 불립니다. (IBM 외부 링크)
정의에 따르면, 데이터 위반은 데이터베이스에서 데이터의 기밀성 유지에 실패한 것을 의미합니다. 데이터 위반이 기업에 미치는 악영향의 정도는 다음과 같은 다수의 결과 또는 요인에 따라 다릅니다.
다수의 소프트웨어 구성 오류, 취약성 또는 부주의/오용의 패턴은 위반을 유발할 수 있습니다. 다음은 데이터베이스 보안 공격의 가장 일반적인 유형 및 그 원인입니다.
내부자 위협은 데이터베이스에 대한 액세스 권한을 지닌 세 개의 출처 중 하나로부터 유발되는 보안 위협입니다.
내부자 위협은 데이터베이스 보안 위반의 가장 일반적인 원인 중 하나이며, 종종 너무 많은 직원들이 권한 있는 사용자 액세스 신임 정보를 보유하도록 허용한 결과로 발생합니다.
사고, 취약한 암호, 암호 공유 및 기타 현명하지 않거나 무지한 사용자 행동은 보고된 모든 데이터 위반의 거의 절반(49%)의 원인이 되고 있습니다.
해커들은 데이터베이스 관리 소프트웨어를 포함한 모든 종류의 소프트웨어에서 취약점을 찾아 이를 공략함으로써 이득을 취합니다. 모든 주요 상용 데이터베이스 소프트웨어 공급업체 및 오픈 소스 데이터베이스 관리 플랫폼은 이러한 취약점을 해결하기 위해 정기적인 보안 패치를 발행하지만, 시기적절한 방식으로 이러한 패치를 적용하지 못하면 보안에 더 많이 취약해질 수 있습니다.
데이터베이스 특정 위협입니다. 여기에는 웹 애플리케이션 또는 HTTP 헤더가 처리하는 데이터베이스 쿼리에 임의의 SQL 또는 비-SQL 공격 문자열을 삽입하는 행위가 포함됩니다. 보안 웹 애플리케이션 코딩 사례를 따르지 않고 일반 취약성 테스트를 수행하는 기업들은 이러한 공격에 매우 취약합니다.
버퍼 오버플로우는 프로세스가 허용된 보유량 이상으로 고정 길이 메모리 블록에 추가로 데이터를 쓰려고 시도할 때 발생합니다. 공격자는 공격 실행의 기반으로 인접 메모리 주소에 저장된 초과 데이터를 사용할 수 있습니다.
멀웨어는 취약점을 악용하거나 기타 방식으로 데이터베이스에 손상을 유발하기 위해 특별히 고안된 소프트웨어입니다. 멀웨어는 데이터베이스의 네트워크에 연결되는 엔드포인트 디바이스를 통해 들어올 수 있습니다.
데이터베이스 자체를 보호하는 데 사용되는 것과 동일한 엄격한 제어를 통해 백업 데이터를 보호하지 못하는 기업들은 백업에 대한 공격에 취약할 수 있습니다.
이러한 위협은 다음을 통해 더욱 악화됩니다.
서비스 거부(DoS) 공격에서 공격자는 서버가 실제 사용자의 정당한 요청을 더 이상 수행할 수 없을 만큼의 수많은 요청을 보내 대상 서버(이 경우에는 데이터베이스 서버)에서 처리량 폭주를 유발하여, 대다수의 경우 서버가 불안정한 상태가 되거나 작동이 중단됩니다.
분산 서비스 거부 공격(DDoS)에서, 처리량 폭주는 다수의 서버에서 발생하기 때문에 공격을 방어하기가 더욱 어려워집니다. 자세한 내용은 "DDoS 공격이란"(3:51) 동영상을 참조하세요.
데이터베이스가 거의 항상 네트워크에서 액세스되므로, 네트워크 인프라의 내부 혹은 일부의 구성요소에 대한 보안 위협은 데이터베이스에 대한 위협이기도 합니다. 또한 사용자의 디바이스나 워크스테이션을 공략하는 모든 공격은 데이터베이스를 위협할 수 있습니다. 따라서 데이터베이스 보안은 데이터베이스 범위를 벗어나 확장되어야 합니다.
사용자의 환경에서 데이터베이스 보안을 평가하여 팀의 최상위 우선순위를 결정할 때는 다음의 각 영역을 고려하세요.
전체 네트워크 환경에서 계층형 보안 제어를 구현하는 것 외에도, 데이터베이스 보안에서는 데이터베이스 자체에 액세스하기 위한 올바른 제어와 정책을 설정하도록 요구합니다. 예를 들면 다음과 같습니다.
데이터베이스 보안 정책은 중요 지적 재산권의 보호 및 사이버 보안 정책 그리고 클라우드 보안 정책 등의 전체 비즈니스 목표와 통합되어야 하며 이를 지원해야 합니다. 기업 내에서 보안 제어의 유지 및 감사 책임을 지정했는지와 보안 제어, 보안 인식 훈련 및 교육 프로그램, 그리고 침투 테스트 및 취약성 평가 전략은 모두 공식 보안 정책의 지원을 통해 마련되어야 합니다.
오늘날, 다양한 벤더들이 데이터 보호 툴과 플랫폼을 제공합니다. 풀스케일 솔루션에는 다음의 모든 기능이 포함되어야 합니다.