Security Practice Archive

보안 점검과 설정을
기록합니다.

시스템, 클라우드 등 다양한 환경에서 확인한 점검 기준과 설정 과정, 검증 결과를 정리합니다.

categories 글 모아보기
Browse topics

주제별로 빠르게 이동

카테고리를 선택해 관련 글을 모아볼 수 있습니다.

약 1분

[인프라진단] #CA-17 로그 보관 기간 설정

반응형

1. 항목 설명

 

수집된 클라우드 로그가 조직의 보안·감사 정책에 따른 기간 동안 보관되도록 설정되어 있는지 점검하는 항목입니다.

 

판단 기준은 조직 정책에 맞는 로그 보관 기간이 설정된 경우 양호, 설정되지 않은 경우 취약입니다.

 

2026 가이드 근거

 

출처: 과학기술정보통신부·한국인터넷진흥원, 「2026 주요정보통신기반시설 기술적 취약점 분석·평가 방법 상세가이드」, CA-17, p.870. 본 게시글은 위 가이드의 판단 기준을 참고하여 작성했으며, 진단 결과와 증적은 개인 실습 환경에서 직접 수집했습니다.

 

2. 점검 목적

 

사고 발견이 늦어지더라도 필요한 기간의 행위 기록을 확보하고 법적·계약상 보존 의무와 내부 조사 요구를 충족하는 것이 목적입니다.

 

3. 실습 환경

 

  • 클라우드: 개인 AWS 실습 계정
  • 작업 도구: AWS Management Console, AWS CloudShell, AWS CLI
  • 점검 대상: 인스턴스·RDS 실습용 CloudWatch 로그 그룹과 S3 로그 저장소
  • 실습 보존 기준: 90일
  • 최초 상태: 명시적 보존 기간 및 S3 수명 주기 정책 없음
  • 조치 상태: CloudWatch Logs 90일, S3 현재·이전 버전 90일 정책
  • 비용 주의: 보존 기간, 로그량, 저장 클래스와 조회량에 따라 비용이 달라짐

 

실습·비용·안전 고지

 

KISA 기준은 모든 환경에 동일한 숫자를 제시하는 것이 아니라 조직 정책에 따른 보존을 요구합니다. 여기서 90일은 개인 실습 정책이며 실제 업무 환경의 법령·계약·사고 대응 기간을 대체하지 않습니다.

 

4. 취약 상태 구성

 

CloudWatch 로그 그룹의 보존 값과 S3 로그 버킷의 수명 주기 구성을 조회해 명시적인 보존·만료 정책이 없는 상태를 확인합니다.

 

aws logs describe-log-groups \
  --log-group-name-prefix /ca-lab/

aws s3api get-bucket-lifecycle-configuration \
  --bucket <LOG_BUCKET>

 

CloudWatch Logs의 보존 값이 없으면 로그가 만료 없이 누적되고, 반대로 임의 삭제만 수행하면 조사에 필요한 기간을 보장할 수 없습니다.

 

5. 최초진단 결과

 

  • 최초진단 판정: 취약
  • 실제 확인 결과: 실습 로그 그룹과 명시적 보존 설정 없음
  • 실제 확인 결과: S3 로그 저장소 수명 주기 구성 없음
  • 영향: 조직 기준에 따른 최소 보존과 비용 제어를 검증할 수 없음
  • 실제 최초진단 증적 파일: ca11_ca19_initial_diagnosis.txt

 

 

6. 조치 방법

 

실습 기준 90일을 CloudWatch 로그 그룹과 S3 로그 저장소에 일관되게 적용합니다.

 

aws logs put-retention-policy \
  --log-group-name /ca-lab/instances/windows \
  --retention-in-days 90

aws logs put-retention-policy \
  --log-group-name /ca-lab/rds/audit \
  --retention-in-days 90

aws s3api put-bucket-lifecycle-configuration \
  --bucket <LOG_BUCKET> \
  --lifecycle-configuration file://ca17-retention.json

 

수명 주기 정책에는 현재 객체 만료 90일과 버전 관리 버킷의 이전 버전 만료 90일을 포함했습니다.

 

클라우드 콘솔 경로: CloudWatch → 로그 관리 → 로그 그룹 세부 정보S3 → 로그 버킷 → 관리 → 수명 주기 규칙

 

 

UI 증적 수집(2026-08-25): 실제 CloudWatch 콘솔에서 인스턴스용 로그 그룹과 RDS 감사 로그 그룹 모두 보존 3개월로 표시되는 상태를 확인했습니다.

 

7. 이행진단 결과

 

  • 이행진단 판정: 양호
  • 실습 정책: 90일 보존
  • CloudWatch Logs: 인스턴스·RDS 감사 로그 그룹 모두 90일
  • S3 로그 저장소: 현재 객체 만료 90일, 이전 버전 만료 90일
  • 정책 식별: CA17ExpireLabLogsAfter90Days
  • 범위 제한: 개인 실습 기준이며 실제 조직 보존 기준은 별도 산정 필요
  • 실제 이행진단 증적 파일: ca11_ca19_after_diagnosis.txt

 

 

8. 실무 주의사항

 

보존 기간을 줄이면 기존 로그도 만료 대상이 될 수 있고, 늘리면 저장 비용이 증가합니다. 법적 보존, 조사 기간, 백업, 소송 보존과 삭제 중지 요구를 먼저 확인해야 합니다.

 

컨설턴트 조언

 

  • 정보보호, 개인정보, 금융·계약 요구사항과 평균 사고 발견 기간을 근거로 로그 종류별 최소·최대 보존 기간을 정합니다.
  • 운영·보안·감사 로그를 모두 같은 기간으로 묶지 말고 중요도, 조사 가치와 비용에 따라 계층화합니다.
  • 장기 보존은 저비용 저장 클래스로 전환하되 복원 시간과 조회 절차를 실제로 시험합니다.
  • 수명 주기 정책 변경 권한과 로그 삭제 권한을 분리하고 변경·삭제 자체를 감사 로그와 경보로 남깁니다.
  • 보존 설정 화면뿐 아니라 오래된 샘플 로그의 조회 가능성, 만료 동작, 시간대와 증적 수집 시점을 함께 확인합니다.

 

9. 마무리

 

로그 보존의 핵심은 임의의 숫자가 아니라 조직이 정한 근거 있는 기간을 각 저장소에 일관되게 구현하는 것입니다. 이번 실습은 90일 기준을 CloudWatch와 S3에 적용해 확인했습니다.

반응형