본문으로 건너뛰기

Log-File-Integrity

1 CloudTrail 로그 파일 무결성 검증 개요

  • AWS CloudTrail은 AWS 계정의 거버넌스, 규정 준수, 운영 감사, 위험 감사를 지원하는 서비스입니다.
  • CloudTrail은 AWS 인프라 전반에 걸친 계정 활동을 기록하고, 지속적으로 모니터링하며, 보관합니다.
  • 이러한 활동 로그의 무결성을 보장하는 것은 매우 중요합니다.
  • 이 글에서는 CloudTrail 로그 파일 무결성 검증에 대해 자세히 알아보겠습니다.

2 로그 파일 무결성 검증이란?

  • CloudTrail 로그 파일 무결성 검증은 로그 파일이 전달된 후 수정, 삭제 또는 변경되지 않았는지 확인하는 프로세스입니다.
  • 이 기능은 업계 표준 알고리즘을 사용하여 구현되었습니다:
    • 해싱을 위한 SHA-256
    • 디지털 서명을 위한 SHA-256 with RSA
  • 이러한 강력한 알고리즘 덕분에 CloudTrail 로그 파일을 감지되지 않게 수정, 삭제 또는 위조하는 것은 사실상 불가능합니다.
  • AWS CLI를 사용하여 CloudTrail이 전달한 위치에서 파일을 검증할 수 있습니다.

3 로그 파일 무결성 검증의 중요성

  • 로그 파일 무결성 검증은 보안 및 포렌식 조사에서 핵심적인 역할을 합니다.
  • 이 기능을 통해 다음과 같은 이점을 얻을 수 있습니다:
    • 로그 파일의 원본성 보장: 로그 파일이 생성된 이후 변경되지 않았음을 확인할 수 있습니다.
    • 사용자 활동 추적: 특정 사용자가 어떤 API 활동을 수행했는지 정확히 파악할 수 있습니다.
    • 로그 파일 변조 탐지: 로그 파일이 삭제되거나 변경되었는지 즉시 알 수 있습니다.
    • 로그 누락 확인: 특정 기간 동안 로그 파일이 생성되지 않았거나 전달되지 않았는지 확인할 수 있습니다.
  • 이러한 기능들은 보안 사고 조사, 규정 준수 감사, 그리고 전반적인 시스템 모니터링에 매우 유용합니다.

4 로그 파일 무결성 검증 작동 방식

  • CloudTrail은 로그 파일 무결성 검증이 활성화되면 다음과 같은 프로세스를 따릅니다:
    1. 전달하는 모든 로그 파일에 대해 해시를 생성합니다.
    2. 매시간마다 지난 1시간 동안의 로그 파일을 참조하고 각 로그 파일의 해시를 포함하는 파일을 생성하고 전달합니다.
    3. 이 파일을 다이제스트 파일이라고 합니다.
    4. CloudTrail은 공개 키와 개인 키 쌍의 개인 키를 사용하여 각 다이제스트 파일에 서명합니다.
    5. 전달 후에는 공개 키를 사용하여 다이제스트 파일을 검증할 수 있습니다.
    6. CloudTrail은 각 AWS 리전에 대해 서로 다른 키 쌍을 사용합니다.
  • 다이제스트 파일 관련 추가 정보:
    • CloudTrail 로그 파일과 동일한 Amazon S3 버킷에 전달됩니다.
    • 로그 파일과는 별도의 폴더에 저장됩니다.
    • 이전 다이제스트 파일이 있는 경우, 현재 다이제스트 파일에는 이전 다이제스트 파일의 디지털 서명도 포함됩니다.
    • 현재 다이제스트 파일의 서명은 다이제스트 파일 Amazon S3 객체의 메타데이터 속성에 있습니다.

5 로그 및 다이제스트 파일 저장

  • CloudTrail 로그 파일과 다이제스트 파일은 Amazon S3 또는 S3 Glacier에 안전하고 내구성 있게 저장할 수 있습니다.
  • 이러한 저장 방식은 비용 효율적이며 무기한 저장이 가능합니다.
  • Amazon S3에 저장된 다이제스트 파일의 보안을 강화하기 위해 Amazon S3 MFA Delete를 사용할 수 있습니다.

6 로그 파일 무결성 검증 활성화 및 파일 검증

  • 로그 파일 무결성 검증을 활성화하는 방법:
    • AWS Management Console 사용
    • AWS CLI 사용
    • CloudTrail API 사용
  • 로그 파일 무결성 검증을 활성화하면 CloudTrail이 Amazon S3 버킷에 다이제스트 로그 파일을 전달할 수 있지만, 자동으로 파일의 무결성을 검증하지는 않습니다.
  • 파일 검증 방법:
    • AWS CLI 사용
    • 사용자 정의 솔루션 생성
  • AWS CLI를 사용한 검증:
    • CloudTrail이 파일을 전달한 위치에서 파일을 검증합니다.
    • 다른 위치로 이동한 로그를 검증하려면 사용자 정의 검증 도구를 만들어야 합니다.

7 결론

  • CloudTrail 로그 파일 무결성 검증은 AWS 환경의 보안과 감사에 매우 중요한 기능입니다.
  • 이 기능을 통해 로그 파일의 변경 여부를 확실히 알 수 있으며, 이는 보안 사고 조사 시 큰 도움이 됩니다.
  • 로그 파일 무결성 검증을 활성화하고 정기적으로 검증을 수행하는 것이 좋습니다.
  • AWS CLI를 사용하거나 사용자 정의 솔루션을 개발하여 로그 파일을 검증할 수 있습니다.
  • 이러한 과정을 통해 AWS 환경의 보안을 강화하고, 규정 준수 요구 사항을 충족할 수 있습니다.