데이터베이스 보안: 2024년 기사 분석을 통해 배운 점

발행: (2026년 2월 12일 오전 09:18 GMT+9)
6 분 소요
원문: Dev.to

Source: Dev.to

Controle de Acesso: Por que o GRANT não basta?

DAC (Controle de Acesso Discricionário)

전제는 간단합니다: 내가 usuarios 테이블의 소유자라면 GRANT SELECT 명령을 실행해서 당신에게 데이터를 볼 수 있게 할 수 있습니다. 공정해 보이죠?

MAC (Controle de Acesso Mandatório)

여기서는 시스템이 명령을 내립니다, 사용자가 아니라. 기사에서는 군대에서 만든 Bell‑LaPadula 모델을 인용하는데, 이는 보안 “라벨”(Confidencial, Secreto, Top Secret)을 사용하고 두 가지 강력한 규칙을 적용합니다:

  • No Read Up (Propriedade Simples)Confidencial 수준의 사용자는 Top Secret 파일을 절대 읽을 수 없습니다.
  • No Write Down (Propriedade Estrela)Top Secret 수준의 사용자는 Confidencial 폴더에 파일을 저장할 수 없으며, 이는 낮은 수준으로의 우발적·의도적 누출을 방지합니다.

RBAC (Role‑Based Access Control)

“Vinicius”에게 직접 권한을 주는 대신, “DevOps Junior” 역할에 권한을 할당합니다. Vinicius가 직책을 바꾸면 권한도 역할에 따라 자동으로 바뀌어 관리가 쉬워집니다.

A “Mágica” da Inferência em Bancos Estatísticos

Cenário: 당신은 Jane Smith가 특정 질병을 가지고 있는지 혹은 그녀의 급여가 얼마인지 알고 싶습니다. Jane은 물리학 박사이며 X 동네에 사는 유일한 여성이라는 정보를 알고 있습니다.

  1. 다음 쿼리를 실행합니다:

    SELECT AVG(salario) FROM usuarios
    WHERE genero = 'F' AND titulo = 'Doutora' AND area = 'Física' AND bairro = 'X';
  2. 데이터베이스는 이 쿼리를 통계적 질문으로 인식하고 응답합니다. 해당 그룹의 COUNT가 1이므로 “평균”은 Jane의 정확한 급여를 반환합니다.

해킹 없이도 기밀성이 깨졌습니다. 이 위험을 완화하기 위해 Google과 Apple 같은 대기업은 Differential Privacy를 사용합니다. 이는 결과에 수학적 “노이즈”(예: 100이 102 또는 98로 반환될 수 있음)를 추가해 통계적 유용성을 유지하면서 개인을 보호합니다.

Canais Encobertos: Hackeando sem Tocar nos Dados

Covert Channels(은폐 채널)은 CAPEC (MITRE)에서 보안 정책을 위반하면서 의도되지 않은 수단으로 정보를 전달하는 방법으로 정의됩니다.

Canais de Tempo (Timing Channels)

  • 비밀 비트가 1이면 프로세스가 약 100 ms 동안 무거운 루프를 실행합니다.
  • 비밀 비트가 0이면 프로세스가 짧게(~10 ms) 대기합니다.
  • 권한이 없는 외부 프로세스가 CPU 사용량을 측정합니다. CPU가 바쁘면 “1”을, 비어 있으면 “0”을 기록합니다. 데이터가 유출된 것입니다.

Canais de Armazenamento (Storage Channels)

(공유 저장 자원을 이용해 비트를 전송하는 기술에 대한 요약 설명.)

Onde o Artigo “Escorregou” (Minha Crítica)

  • DES (Data Encryption Standard) – 기사에서 아직 DES에 대해 다루고 있는데, 이는 이미 구식입니다.
  • AES (Advanced Encryption Standard) – 훨씬 더 강력하고 널리 채택된 표준입니다. 최근 학술 작업에서 DES를 논의하는 것은 증기 기관 차를 가르치는 것과 같습니다: 역사적으로는 흥미롭지만 실제 적용에는 위험합니다.

Conclusão

데이터베이스 보안은 무엇보다 아키텍처입니다: Bell‑LaPadula와 추론 방지와 같은 모델은 여전히 중요하고 영원합니다. 그러나 회의적인 자세를 유지하는 것이 필수적입니다. 기술은 빠르게 진화합니다; 1990년대 데이터 흐름 이론을 마스터했다고 해서 2024년 클라우드 데이터베이스가 최신 폐기된 알고리즘을 사용해도 안전하다는 보장은 없습니다.

핵심은 견고한 수학적 기반을 현대 DevSecOps 도구와 결합하는 것입니다. 보안은 구매하는 제품이 아니라 과정이며(그리고 분명히 많은 수학이 필요합니다).

0 조회
Back to Blog

관련 글

더 보기 »

shadcn & AI가 나에게 슈퍼파워를 줘요....

프로젝트의 프론트엔드 작업을 하면서 shadcn/ui를 사용했는데, 정말 좋은 경험이었습니다. 컴포넌트가 깔끔하고 안정적이며 높은 커스터마이징이 가능합니다. Si...

PostgreSQL의 부분 인덱스

Partial indexes는 특정 액세스 패턴을 목표로 하는 정교한 인덱스입니다. 테이블의 모든 행을 인덱싱하는 대신, 조건에 맞는 행만 인덱싱합니다.