사이버 포렌식 - AWS 규범적 지침

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

사이버 포렌식

간단한 설문조사를 통해 AWS 보안 참조 아키텍처(AWS SRA)의 미래에 영향을 미칩니다.

AWS SRA의 맥락에서는 미국 국립표준기술연구소(NIST)에서 제공하는 포렌식에 대해 다음과 같은 정의를 사용합니다. “정보의 무결성을 보존하고 데이터에 대한 엄격한 관리 연속성을 유지하면서 데이터의 식별, 수집, 검사 및 분석에 과학을 적용하는 것”(소스: NIST Special Publication 800-86 – 포렌식 기술을 인시던트 대응에 통합하기 위한 가이드).

보안 인시던트 대응 컨텍스트에서 포렌식

이 섹션의 인시던트 대응(IR) 지침은 포렌식의 맥락과 다양한 서비스 및 솔루션이 IR 프로세스를 개선할 수 있는 방법에 대해서만 제공됩니다.

AWS 보안 인시던트 대응 안내서에는 Word 고객 인시던트 대응 팀(Word Word)의 경험을 기반으로 AWS Cloud의 보안 인시던트에 대응하는 모범 사례가 나열되어 있습니다. AWS AWS CIRT AWS CIRT의 추가 지침은 AWS CIRT 워크숍 AWS CIRT의 단원을 참조하세요.

National Institute of Standards and Technology Cybersecurity Framework(NIST CSF)는 IR 수명 주기의 네 단계, 즉 준비, 탐지 및 분석, 격리, 근절 및 복구, 사고 후 활동을 정의합니다. 이러한 단계는 순차적으로 구현할 수 있습니다. 하지만 사이클의 다음 단계로 넘어간 후 일부 단계를 반복해야 하기 때문에 이 순서는 주기적인 경우가 많습니다. 예를 들어 격리 및 근절 후에는 주변 환경에서 공격자를 성공적으로 제거했는지 확인하기 위해 다시 분석해야 합니다.

이 반복되는 분석, 억제, 근절 및 분석으로 돌아가기 주기를 통해 새로운 침해 지표(IoCs)가 탐지될 때마다 더 많은 정보를 수집할 수 있습니다. Those IoCs 는 다양한 관점에서 유용합니다. 환경을 위협하기 위해 공격자가 취한 조치에 대한 이야기를 제공합니다. 또한 적절한 인시던트 사후 검토를 수행하면 방어 및 탐지를 개선하여 향후 인시던트를 예방하거나 공격자의 작업을 더 빠르게 탐지하여 인시던트의 영향을 줄일 수 있습니다.

이 IR 프로세스가 포렌식의 주요 목적은 아니지만 많은 도구, 기법 및 모범 사례가 IR과 공유됩니다(특히 분석 단계). 예를 들어 인시던트를 탐지한 후 포렌식 수집 프로세스가 증거를 수집합니다. 다음으로 증거 검사 및 분석은 extract IoCs에 도움이 될 수 있습니다. 결국, 포렌식 보고는 IR 이후 활동에 도움이 될 수 있습니다.

포렌식 프로세스를 최대한 자동화하여 대응 속도를 높이고 IR 이해관계자의 부담을 줄이는 것이 좋습니다. 또한 포렌식 수집 프로세스가 완료되고 증거가 오염되지 않도록 안전하게 보관된 후에 더 많은 자동 분석을 추가할 수 있습니다. 자세한 내용은 AWS 규범적 지침 웹 사이트의 사고 대응 및 포렌식 자동화 패턴을 참조하세요.

설계 고려 사항

보안 IR 대비 태세를 개선하려면:

  • 조사 또는 인시던트 대응 중에 필요할 수 있는 로그를 활성화하고 안전하게 저장하세요.

  • 알려진 시나리오에 대한 쿼리를 미리 빌드하고 로그를 검색하는 자동화된 방법을 제공합니다. Amazon Detective를 사용하는 것을 고려하세요.

  • 시뮬레이션을 실행하여 IR 도구를 준비하세요.

  • 백업 및 복구 프로세스를 정기적으로 테스트하여 성공적인지 확인하세요.

  • Amazon GuardDuty 조사 결과를 기반으로 AWS와 관련된 일반적인 잠재적 이벤트부터 시작하여 시나리오 기반 플레이북을 사용합니다. 자체 플레이북을 구축하는 방법에 대한 자세한 내용은 AWS Security Incident Response Guide플레이북 리소스 섹션을 참조하세요.

포렌식 계정

면책 조항

AWS Forensics 계정에 대한 다음 설명은 조직이 법률 고문의 지침과 함께 자체 포렌식 기능을 개발하기 위한 출발점으로만 조직에서 사용해야 합니다.

당사는 이 지침이 범죄 탐지 또는 조사에 적합한지, 이 지침을 적용하여 캡처한 데이터 또는 포렌식 증거를 법원에서 사용할 수 있는지에 대해 어떠한 주장도 하지 않습니다. 여기에 설명된 모범 사례가 사용 사례에 적합한지 독립적으로 평가해야 합니다.

다음 다이어그램은 전용 Forensics 계정에서 구성할 수 있는 AWS 보안 서비스를 보여줍니다. 컨텍스트의 경우 다이어그램은 Forensics 계정에서 탐지 또는 알림을 제공하는 데 사용되는 Word 서비스를 나타내는 Security Tooling 계정을 보여줍니다. AWS

AWS의 포렌식 계정

포렌식 계정은 보안 OU 내에 있는 별도의 전용 보안 도구 계정입니다. 포렌식 계정의 목적은 조직의 포렌식 팀이 포렌식 프로세스의 모든 단계(수집, 조사, 분석, 보고)를 구현할 수 있도록 사전 구성되고 반복 가능한 표준 클린룸을 제공하는 것입니다. 또한 이 계정에는 범위 내 리소스에 대한 격리 및 격리 프로세스도 포함됩니다.

전체 포렌식 프로세스를 별도의 계정에 포함하면 수집 및 저장된 포렌식 데이터에 추가 액세스 제어를 적용할 수 있습니다. 다음과 같은 이유로 포렌식 계정과 보안 도구 계정을 분리하는 것이 좋습니다.

  • 포렌식 및 보안 리소스는 다른 팀에 속해 있거나 권한이 다를 수 있습니다.

  • Security Tooling 계정에는 S33 버킷에 대한 Amazon S3 퍼블릭 액세스 차단 활성화와 같은 AWS 제어 플레인의 보안 이벤트에 응답하는 데 초점을 맞춘 자동화가 있을 수 있는 반면, Forensics 계정에는 운영 체제(OS) 또는 AWS 인스턴스 내의 애플리케이션별 데이터와 같이 고객이 책임져야 할 EC2 데이터 플레인 아티팩트도 포함되어 있습니다.

  • 조직 또는 규제 요구 사항에 따라 추가 액세스 제한 또는 법적 보류를 구현해야 할 수도 있습니다.

  • 포렌식 분석 프로세스에는 AWS 서비스 약관에 따라 보안 환경의 맬웨어와 같은 악성 코드 분석이 필요할 수 있습니다.

포렌식 계정은 대규모 증거 수집을 가속화하는 동시에 포렌식 수집 프로세스에서 사람의 상호 작용을 최소화하기 위한 자동화를 포함해야 합니다. 추적 및 보고 메커니즘을 단순화하기 위해 대응 및 격리 리소스를 자동화하는 기능도 이 계정에 포함할 예정입니다.

이 섹션에 설명된 포렌식 기능은 조직이 기능을 적극적으로 사용하지 않더라도 사용 가능한 모든 AWS 리전에 배포해야 합니다. 특정 AWS 리전을 사용할 계획이 없는 경우 서비스 제어 정책(SCP)을 적용하여 프로비저닝 AWS 리소스를 제한해야 합니다. 또한 동일한 지역 내에서 포렌식 아티팩트를 조사하고 보관하면 데이터 레지던시 및 소유권에 대한 변화하는 규제 환경에서 발생하는 문제를 피할 수 있습니다.

이 지침은 앞서 설명한 대로 Log Archive 계정을 사용하여 Forensics 계정에서 APIs 실행하는 AWS를 포함하여 Word APIs를 통해 환경에서 수행된 작업을 기록합니다. 이러한 로그가 있으면 아티팩트를 잘못 처리하거나 변조한다는 혐의를 피할 수 있습니다. 활성화하는 세부 정보 수준(AWS CloudTrail 설명서의 관리 이벤트 로깅데이터 이벤트 로깅 참조)에 따라 로그에는 아티팩트를 수집하는 데 사용된 계정, 아티팩트가 수집된 시간 및 데이터 수집에 수행된 단계에 대한 정보가 포함될 수 있습니다. Amazon S3에 아티팩트를 저장하면 고급 액세스 제어 및 객체에 액세스한 사람에 대한 로그 정보를 사용할 수도 있습니다. 자세한 작업 로그를 통해 필요한 경우 다른 사용자가 나중에 프로세스를 반복할 수 있습니다(범위 내 리소스를 계속 사용할 수 있다고 가정).

설계 고려 사항
  • 자동화는 중요한 증거의 수집 속도를 높이고 규모를 조정하는 데 도움이 되므로 동시에 인시던트가 많이 발생하는 경우 유용합니다. 그러나 이러한 이점을 신중하게 고려해야 합니다. 예를 들어 오탐 인시던트의 경우 완전 자동화된 포렌식 응답은 범위 내 AWS 워크로드에서 지원하는 비즈니스 프로세스에 부정적인 영향을 미칠 수 있습니다. 자세한 내용은 다음 섹션의 AWS GuardDutyWord, AWS Security Hub 및 AWS Step Functions에 대한 설계 고려 사항을 참조하세요.

  • 조직의 포렌식 및 보안 리소스가 같은 팀에 있고 팀원 중 누구라도 모든 기능을 수행할 수 있는 경우에도 별도의 보안 도구 및 포렌식 계정을 사용하는 것이 좋습니다. 함수를 별도의 계정으로 분할하면 최소 권한을 지원하고, 진행 중인 보안 이벤트 분석으로 인한 오염을 방지하고, 수집된 아티팩트의 무결성을 강화하는 데 도움이 됩니다.

  • 직무 분리, 최소 권한 및 제한적인 가드레일을 더 강조하려면 별도의 포렌식 OU를 만들어 이 계정을 호스팅할 수 있습니다.

  • 조직에서 변경할 수 없는 인프라 리소스를 사용하는 경우 리소스를 자동으로 삭제하고(예: 스케일 다운 이벤트 도중) 보안 인시던트를 탐지하기 전에 포렌식적으로 가치가 있는 정보를 손실할 수 있습니다. 이를 방지하려면 각 리소스에 대해 포렌식 수집 프로세스를 실행하는 것이 좋습니다. 수집되는 데이터의 양을 줄이려면 환경, 워크로드의 비즈니스 중요도, 처리되는 데이터 유형 등과 같은 요소를 고려할 수 있습니다.

  • Amazon WorkSpaces 를 사용하여 깨끗한 워크스테이션을 스핀업하는 것을 고려해 보세요. 이렇게 하면 조사 중에 이해 관계자의 작업을 분리하는 데 도움이 될 수 있습니다.

Amazon GuardDuty

Amazon GuardDuty는 악의적인 활동 및 무단 동작을 지속적으로 모니터링하여 AWS 계정과 워크로드를 보호하는 탐지 서비스입니다. 일반적인 SRA AWS 지침은 Security Tooling 계정 섹션의 Amazon GuardDuty를 참조하세요.

GuardDuty 조사 결과를 사용하여 잠재적으로 손상된 EC2 인스턴스의 디스크 및 메모리 이미지를 캡처하는 포렌식 워크플로를 시작할 수 있습니다. 이렇게 하면 사람의 상호 작용이 줄어들고 포렌식 데이터 수집 속도가 크게 향상될 수 있습니다. GuardDuty 를 Amazon EventBridge 와 통합하여 new GuardDuty 조사 결과에 대한 응답을 자동화할 수 있습니다.

GuardDuty 결과 유형 목록이 증가하고 있습니다. 포렌식 워크플로를 시작해야 하는 조사 결과 유형(예: Amazon EC2, Amazon EKS, 맬웨어 방지 등)을 고려해야 합니다.

격리 및 포렌식 데이터 수집 프로세스와 GuardDuty 조사 결과의 통합을 완전히 자동화하여 디스크 및 메모리 아티팩트 조사를 캡처하고 EC2 인스턴스를 격리할 수 있습니다. 예를 들어 보안 그룹에서 모든 수신 및 발신 규칙을 제거한 경우 네트워크 ACL를 적용하여 기존 연결을 중단하고 IAM 정책을 연결하여 모든 요청을 거부할 수 있습니다.

설계 고려 사항
  • AWS 서비스에 따라 고객의 공동 책임은 달라질 수 있습니다. 예를 들어 Word EC2 인스턴스에서 휘발성 데이터를 캡처하는 것은 인스턴스 자체에서만 가능하며 포렌식 증거로 사용할 수 있는 중요한 데이터를 포함할 수 있습니다. 반대로 Amazon S3에 대한 조사 결과에 응답하고 조사하려면 주로 CloudTrail 데이터 또는 Amazon S3 액세스 로그가 필요합니다. 고객의 공동 책임, 일반적인 프로세스 흐름, 보안이 필요한 캡처된 아티팩트에 따라 보안 도구 및 포렌식 계정 모두에서 대응 자동화를 구성해야 합니다.

  • EC2 인스턴스를 격리하기 전에 전반적인 비즈니스 영향과 중요도를 측정하세요. 자동화를 사용하여 EC2 인스턴스를 포함하기 전에 적절한 이해관계자와 상의하는 프로세스를 설정하는 것이 좋습니다.

AWS Security Hub

AWS Security Hub는 AWS의 보안 태세를 포괄적으로 볼 수 있도록 하고 보안 업계 표준 및 모범 사례를 기준으로 환경을 확인하는 데 도움이 됩니다. Security Hub는 AWS 통합 서비스, 지원되는 타사 제품 및 기타 사용할 수 있는 사용자 지정 보안 제품에서 보안 데이터를 수집합니다. 이 서비스는 보안 추세를 지속적으로 모니터링 및 분석하고 우선 순위가 가장 높은 보안 문제를 식별하는 데 도움을 줍니다. 일반적인 SRA AWS 지침은 Security Tooling 계정 섹션의 AWS Security Hub를 참조하세요.

Security Hub는 보안 태세를 모니터링하는 것 외에도 Amazon EventBridge 와의 통합을 지원하여 특정 조사 결과의 수정을 자동화합니다. 예를 들어 Word Lambda 함수 또는 AWS AWS Step Functions 워크플로를 실행하도록 프로그래밍하여 포렌식 프로세스를 구현할 수 있는 사용자 지정 작업을 정의할 수 있습니다.

Security Hub 사용자 지정 조치는 승인된 보안 분석가 또는 리소스가 억제 및 포렌식 자동화를 구현할 수 있는 표준화된 메커니즘을 제공합니다. 이를 통해 포렌식 증거의 억제 및 캡처 시 사람의 상호 작용이 줄어듭니다. 자동화된 프로세스에 수동 체크포인트를 추가하여 포렌식 수집이 실제로 필요한지 확인할 수 있습니다.

설계 고려 사항
  • Security Hub는 AWS Partner 솔루션을 비롯한 다양한 서비스와 통합할 수 있습니다. 조직에서 완전히 미세 조정되지 않아 가끔씩 오탐지 경보가 발생하는 탐지 보안 제어를 사용하는 경우, 포렌식 수집 프로세스를 완전히 자동화하면 해당 프로세스가 불필요하게 실행될 수 있습니다.

Amazon EventBridge

Amazon EventBridge는 애플리케이션을 다양한 소스의 데이터와 쉽게 연결할 수 있는 서버리스 이벤트 버스 서비스입니다. 보안 자동화에 자주 사용합니다. 일반적인 SRA AWS 지침은 Security Tooling 계정 섹션의 Amazon EventBridge를 참조하세요.

예를 들어 EventBridge 를 사용하여 GuardDuty와 같은 보안 모니터링 도구의 탐지를 기반으로 디스크 및 메모리 이미지를 캡처할 수 있습니다. 또는 보다 수동적인 방법으로 사용할 수 있습니다. EventBridge는 CloudTrail에서 태그 변경 이벤트를 감지할 수 있으며, 이는 Step Functions에서 포렌식 워크플로를 시작할 수 있습니다.

AWS Step Functions

AWS Step Functions는 Word Lambda 함수 및 기타 AWS 서비스와 통합하여 비즈니스 크리티컬 애플리케이션을 구축할 수 있는 서버리스 오케스트레이션 AWS 서비스입니다. Step Functions 그래픽 콘솔에서는 애플리케이션의 워크플로를 일련의 이벤트 기반 단계로 볼 수 있습니다. Step Functions는 상태 시스템과 작업에 기반합니다. Step Functions에서는 워크플로를 상태 시스템이라고 하며, 이는 일련의 이벤트 기반 단계입니다. 워크플로의 각 단계를 상태라고 합니다. 작업 상태는 Lambda와 같은 다른 AWS 서비스가 수행하는 작업 단위를 나타냅니다. 작업 상태는 모든 AWS 서비스 또는 API를 호출할 수 있습니다. Step Functions에 내장된 컨트롤을 사용하여 워크플로의 각 단계 상태를 검사하여 각 단계가 올바른 순서로 예상대로 실행되는지 확인할 수 있습니다. 사용 사례에 따라 Step Functions가 Lambda와 같은 AWS 서비스를 호출하여 작업을 수행하도록 할 수 있습니다. 또한 사람의 상호 작용이 필요한 애플리케이션을 위해 오래 실행되는 자동화된 워크플로를 만들 수 있습니다.

Step Functions는 AWS 로그를 통해 확인할 수 있는 반복 가능하고 자동화된 사전 정의된 단계 세트를 지원하므로 포렌식 프로세스와 함께 사용하기에 적합합니다. 이를 통해 사람의 개입을 배제하고 포렌식 프로세스에서 실수를 방지할 수 있습니다.

설계 고려 사항
  • Step Functions 워크플로를 수동 또는 자동으로 시작하여 GuardDuty 또는 Security Hub가 침해를 나타낼 때 보안 데이터를 캡처하고 분석할 수 있습니다. 사람의 상호 작용을 최소화하거나 없앤 자동화를 통해 많은 리소스에 영향을 미치는 중대한 보안 이벤트가 발생할 경우 팀을 신속하게 확장할 수 있습니다.

  • 완전 자동화된 워크플로를 제한하기 위해 일부 수동 개입을 위한 단계를 자동화 흐름에 포함할 수 있습니다. 예를 들어, 승인된 보안 분석가나 팀 구성원이 생성된 보안 결과를 검토하여 포렌식 증거 수집을 시작할지, 영향을 받는 리소스를 격리하고 격리할지, 아니면 둘 다할지 결정하도록 요구할 수 있습니다.

  • 보안 도구(예: GuardDuty 또는 Security Hub)에서 생성된 활성 조사 결과 없이 포렌식 조사를 시작하려면 추가 통합을 구현하여 포렌식 Step Functions 워크플로를 호출해야 합니다. 이는 특정 EventBridge 이벤트(예: 태그 변경 이벤트)를 찾는 CloudTrail 규칙을 생성하거나 보안 분석가 또는 팀원이 콘솔에서 직접 포렌식 Step Functions 워크플로를 시작하도록 허용하여 수행할 수 있습니다. 또한 Step Functions를 사용하여 조직의 티켓팅 시스템과 통합하여 실행 가능한 티켓을 만들 수 있습니다.

AWS Lambda

AWS Lambda를 사용하면 서버를 프로비저닝하거나 관리하지 않고도 코드를 실행할 수 있습니다. 사용한 컴퓨팅 시간에 대해서만 비용을 지불하면 됩니다. 코드가 실행되지 않을 때는 비용이 부과되지 않습니다. Lambda는 고가용성 컴퓨팅 인프라에서 코드를 실행하고 서버와 운영 체제 유지 관리, 용량 프로비저닝 및 자동 조정, 코드 및 보안 패치 배포, 로깅 등 모든 컴퓨팅 리소스를 관리합니다. Lambda가 지원하는 언어 런타임 중 하나로 코드를 제공한 다음 Lambda 함수로 코드를 구성합니다. Lambda 서비스는 필요할 때만 함수를 실행하고 자동으로 확장됩니다.

포렌식 조사의 맥락에서 Lambda 함수를 사용하면 Lambda 코드에 정의된 반복 가능하고 자동화된 사전 정의된 단계를 통해 지속적인 결과를 얻을 수 있습니다. Lambda 함수가 실행되면 적절한 프로세스가 구현되었는지 확인하는 데 도움이 되는 로그가 생성됩니다.

설계 고려 사항
  • Lambda 함수의 제한 시간은 15분이지만, 관련 증거를 수집하기 위한 포괄적인 포렌식 프로세스는 더 오래 걸릴 수 있습니다. 따라서 Step Functions 워크플로에 통합된 Lambda 함수를 사용하여 포렌식 프로세스를 조율하는 것이 좋습니다. 워크플로를 통해 올바른 순서로 Lambda 함수를 생성할 수 있으며, 각 Lambda 함수는 개별 수집 단계를 구현합니다.

  • 포렌식 Lambda 함수를 Step Functions 워크플로로 구성하면 포렌식 수집 프로시저의 일부를 병렬로 실행하여 수집 속도를 높일 수 있습니다. 예를 들어, 여러 볼륨이 범위 내에 있을 때 디스크 이미지 생성에 대한 정보를 더 빠르게 수집할 수 있습니다.

AWS KMS

AWS Key Management Service(AWS KMS)를 사용하면 암호화 키를 생성 및 관리하고 다양한 AWS 서비스와 애플리케이션에서 암호화 키의 사용을 제어할 수 있습니다. 일반적인 SRA AWS Word 지침은 Security Tooling 계정 섹션의 AWS KMS를 참조하세요.

포렌식 프로세스의 일환으로 비즈니스에 미치는 영향을 최소화하기 위해 격리된 환경에서 데이터 수집 및 조사를 수행해야 합니다. 이 프로세스에서는 데이터 보안 및 무결성이 침해될 수 없으며 잠재적으로 침해될 수 있는 계정과 포렌삭 계정 간에 스냅샷 및 디스크 볼륨과 같은 암호화된 리소스를 공유할 수 있는 프로세스를 마련해야 합니다. 이를 위해 조직은 연결된 AWS KMS 리소스 정책이 암호화된 데이터를 읽고 Forensics 계정의 AWS KMS 키로 데이터를 다시 암호화하여 데이터를 보호하는 것을 지원하는지 확인해야 합니다.

설계 고려 사항
  • 조직의 KMS 키 정책은 포렌식에 대한 권한 있는 IAM 보안 주체가 키를 사용하여 소스 계정의 데이터를 복호화하고 포렌식 계정에서 다시 암호화할 수 있도록 허용해야 합니다. 인프라스트럭처를 코드로 사용(IaC)하여 AWS KMS에서 조직의 모든 키를 중앙에서 관리하여 권한이 있는 IAM 보안 주체만 적절하고 최소 권한 액세스 권한을 갖도록 합니다. 이러한 권한은 포렌식 조사 중에 수집할 수 있는 KMS의 리소스를 암호화하는 데 사용할 수 있는 모든 AWS 키에 존재해야 합니다. 보안 이벤트 후 KMS 키 정책을 업데이트하면 사용 중인 KMS 키에 대한 후속 리소스 정책 업데이트가 비즈니스에 영향을 미칠 수 있습니다. 또한 권한 문제는 보안 이벤트에 대한 전체 평균 응답 시간(MTTR)을 늘릴 수 있습니다.