세상 모든 보안 이야기

보안 백과사전

좌우로 움직여보세요

DB보안

DB 접근제어

포스팅 뷰1557

DB 접근제어의 정의

DB 접근제어 솔루션은 사전에 정의된 규칙(Rule)에 따라 사용자 또는 애플리케이션의 DB 접근을 허용하거나 차단하고, 관련 로그를 남겨 추후 추적이 가능하도록 하는 DB 보안 솔루션의 하나이다. 이러한 핵심 기능 이외에도 개인정보보호 법규의 요구에 따라 지정된 데이터의 마스킹, 쿼리에 대한 통제 등이 추가됐다.


DB 접근제어의 작동 방식

  • 게이트웨이(Gateway) 방식
    • DB에 대한 모든 접속을 게이트웨이를 거치도록 하여 접근 권한이 없는 사용자가나 설정된 룰에 적합하지 않은 쿼리를 차단한다. DB 접근제어 솔루션을 DB 방화벽이라고도 부른다.
    • DB로 오가는 모든 트래픽이 게이트웨이를 거치므로 일반 사용자가 접속할 때 적합하나, DB 접근이 많은 애플리케이션에 적용하기에는 무리가 생길 수 있다. 보통 인라인으로 게이트웨이가 설정하므로 게이트웨이에 고장이 발생하면 문제가 발생할 수 있다.


  • 스니핑(Sniffing) 방식
    • 스니핑 방식은 DB 접근제어가 네트워크 스위치 또는 탭(Tap)을 통해 DB로 오가는 트래픽을 미러링(Mirroring)해서 검사와 로깅을 한다. SQL 명령이나 그 결과 데이터가 사전에 설정된 규칙을 위반하면 그것을 별도로 남겨서 관리자가 감사, 추적할 수 있도록 한다.
    • 세션을 끊는 명령을 보냄으로써 규칙을 위반한 데이터를 차단할 수도 있으나, 이미 일부 또는 전체 데이터가 유출될 수도 있다.
    • 고객용 애플리케이션에서 DB를 자주 접속하여 대량의 데이터를 이용할 때 주로 사용한다.


  • 하이브리드 방식
    • DB 트래픽이 적고, DB 사용자에 대한 정교한 통제가 필요한 경우에 게이트웨이 방식을, 대량의 DB 트래픽이 있는 애플리케이션에 대해서는 스니핑 방식을 이용하는 방식이다.


  • 에이전트 방식
    • 게이트웨이 방식이나 스니핑 방식은 SSH 등을 이용해 DB 서버에 직접 접속하여 DBMS를 접근하는 것을 차단하지 못한다. 이를 제어하기 위해 DB 서버에 에이전트를 설치하여 DBMS에 대한 접속을 제어하는 방식이다.


DB 접근제어 시 유의사항

  • 계정 및 권한 관리, 제어 룰 작성의 편의성, 문제가 되는 룰의 탐지, 문제가 되는 로그의 탐지 등 관리 편의성을 검토해야 한다.
  • 불편함과 성능 저하의 문제로 DB 관리자, 개발자의 우회 경로 찾기가 종종 발생하는 솔루션이다. DB 접근에 우회할 수 있는 경로는 없는지 검토해야 한다.
  • 게이트웨이 방식과 같이 인라인으로 구성하는 장비는 장비 고장 시 차단할 것인지 통과시킬 것인지, 이중화할 것인지 등을 판단해야 한다. 보안 장비는 기본 설정은 고장 시 차단이 원칙이므로, 이중화 등으로 그런 상황이 발생하지 않도록 해야 한다.
  • DB 관리자를 비롯한 IT 운영자, IT 개발자가 주요 통제 대상이 되는 보안 솔루션은 정보보안팀이 제어 룰 설정과 로그 분석에 직접 관여해야 한다.