SOA-C03 12/16 — 데이터 보호와 보안 발견사항 처리
정보보안기사 응시 후 학습을 위해 미리 작성한 본문이다. 작성·보존은 대화 전달이나 학습 완료를 뜻하지 않는다.
1. 데이터 분류에서 보호 요구를 도출한다
같은 암호화 기능도 데이터의 공개 범위·손실 영향·보존 요구에 따라 다르게 운영한다. 먼저 데이터가 어디서 생겨 어디로 이동하고 누가 사용하는지 파악한다.
| 분류할 축 | 보호 설계로 연결할 질문 |
|---|---|
| 공개 가능성 | 공개·내부·제한 자료 중 어느 범위인가 |
| 민감도 | 유출되면 누구에게 어떤 영향이 있는가 |
| 무결성 | 잘못 바뀌었을 때 업무 영향과 복구 수단은 무엇인가 |
| 가용성 | 필요한 접근 시간과 복구 목표는 무엇인가 |
| 보존·폐기 | 원본·복사본·로그·backup을 언제까지 유지하는가 |
분류는 이름표에서 끝나지 않고 IAM·bucket policy·key 관리·TLS·로그 마스킹·backup·삭제 절차에 연결한다. 원본을 잘 보호해도 debug log나 export 파일에 같은 데이터가 노출될 수 있다. 데이터 분류
2. 저장 암호화는 key의 관리와 사용 권한을 포함한다
KMS에서 customer managed key는 고객이 정책과 수명주기를 관리한다. AWS managed key는 서비스가 account 안에서 관리하고, AWS owned key는 AWS 서비스 소유 경계에서 관리한다. 서비스별 지원 유형·공유·감사·운영 요구에 맞춰 선택한다. KMS key 유형
Envelope encryption에서는 데이터를 data key로 암호화하고 그 data key를 상위 key로 보호하는 구조를 생각한다. 암호문 보존과 key 접근은 함께 복구 가능해야 한다. Key가 비활성화되거나 삭제되면 데이터가 있어도 사용할 수 없게 될 수 있다.
Key administrator와 데이터 decrypt 주체는 구분한다. Key policy는 KMS 접근의 중심이며 IAM policy·grant·service integration 조건도 대조한다. IAM에 kms:Decrypt가 있다는 사실만으로 모든 key가 허용하는 것은 아니다. Key policy
진단 순서는 key ARN·Region → key 상태 → caller identity → key policy·IAM·grant → encryption context·service 조건 → CloudTrail 오류다. 원본 service의 object 읽기 허용과 그 object를 복호화할 권한을 따로 본다.
3. Rotation과 데이터 재암호화의 관계
KMS key material rotation은 key의 암호 재료를 바꾸며 기존 재료는 과거 암호문 복호화에 사용된다. 기존에 저장한 모든 object가 새 재료로 다시 암호화되는 작업과 같지 않다. Alias를 다른 key로 바꾸는 것 역시 기존 암호문을 자동 변환하지 않는다. KMS rotation
따라서 “새 key로 앞으로 저장”과 “과거 데이터를 새 key로 다시 저장”을 별도 작업으로 설계한다. 후자를 수행할 때는 service별 copy·re-encryption 방법과 데이터·접근·복원 검증이 필요하다.
4. 전송 암호화는 연결의 양 끝을 확인한다
ACM은 TLS 인증서의 발급·관리와 지원 서비스 통합을 제공한다. 인증서가 Issued 상태여도 실제 listener에 올바르게 연결되지 않으면 접속은 실패한다. ACM
| 확인 항목 | 실패 형태 |
|---|---|
| 요청 hostname과 인증서 이름 | name mismatch |
| 신뢰 chain·유효기간 | trust·expiry error |
| TLS policy·client 지원 | handshake failure |
| Listener와 certificate 연결 | 다른 인증서가 제시됨 |
| Region·서비스 통합 조건 | 필요한 인증서를 선택하지 못함 |
| Origin 구간의 TLS | viewer 연결은 정상인데 origin 접속 실패 |
CloudFront에 연결할 ACM viewer 인증서는 US East (N. Virginia) 조건을 확인한다. Regional 서비스에 사용할 인증서와 구분한다. ACM 지원 서비스
TLS가 load balancer에서 종료되면 이후 backend 구간이 다시 TLS인지 따로 확인한다. 인증서 자동 갱신도 자격 조건·검증 방식·서비스 연결에 따르며, imported certificate를 동일하게 자동 갱신한다고 가정하지 않는다. Managed renewal
DNS로 검증한 ACM 인증서의 갱신에서는 인증서의 사용·갱신 자격을 확인하고, ACM이 요구한 CNAME 레코드가 공개 DNS에서 해석되는지 확인한다. Route 53의 트래픽 라우팅용 alias와 인증서 소유권 검증용 CNAME을 혼동하지 않는다. 갱신 실패 알림 뒤 새 인증서만 발급하면 원래 DNS 원인이 남을 수 있다. DNS 검증 인증서 갱신
5. Secret rotation은 저장소와 소비자가 함께 바뀌어야 한다
Secrets Manager는 비밀값을 저장·조회하고 지원 방식으로 rotation을 관리한다. Rotation은 secret의 값만 바꾸는 일이 아니라 실제 DB·외부 시스템의 자격 증명과 소비자가 사용할 값을 맞추는 과정이다. Secrets rotation
운영 예: DB password가 바뀐 뒤 애플리케이션이 오래 cache한 값으로 계속 연결하면 인증 실패가 발생한다. 조회 권한·KMS·network·새 credential 검증·consumer refresh를 연결한다. Secret 값은 진단 로그나 error message에 출력하지 않고 version·stage·조회 성공 여부로 추적한다.
Secret 저장소가 있다는 사실만으로 실행 역할의 접근 범위가 적절한 것은 아니다. 애플리케이션에 필요한 secret만 허용하고, 평문 파일·이미지·repository에 복사되는 경로를 줄인다.
6. 보안 서비스의 관찰 대상을 구분한다
| 서비스 | 중심 관찰 | 후속 행동 |
|---|---|---|
| GuardDuty | 활동·로그·지원 보호 기능에서 의심스러운 행위 | 실제 activity·identity·resource 조사 |
| Inspector | 지원 workload의 취약점·노출 | package·image·실행 환경의 수정과 재검사 |
| Config | resource 구성과 rule 적합성 | 설정 원인·변경·재평가 |
| Security Hub / CSPM | 여러 finding·control·노출 맥락 통합 | 우선순위·담당자·처리 이력 |
| Security Agent | 설계·코드·보안 평가에서 발견사항 생성 | 근거 검토·코드/설계 수정·재평가 |
GuardDuty, Inspector, Security Hub CSPM
Security Hub CSPM의 control finding과 여러 원천의 finding 통합, Security Hub의 exposure 맥락을 구분한다. Finding의 원천·resource·first/last observed·severity·workflow 상태를 읽어 무엇이 관찰됐는지 확인한다. Findings, Exposure findings
학습 계획의 Security Agent 범위는 설계·코드·평가 결과를 읽고 수정하는 관계로 유지한다. 계정의 모든 runtime 위협을 자동 차단하는 도구로 설명하지 않는다. Security Agent
7. Finding의 심각도와 조치의 영향은 별도로 판단한다
발견사항
→ 해당 자원·시각·원천 증거 확인
→ 노출·악용 가능성·업무 영향 판단
→ 조치와 복구 경로 선택
→ 변경 실행
→ 재검사·서비스 검증
→ 처리 상태 갱신Severity가 높아도 즉시 모든 instance를 삭제하는 것이 적절한 조치는 아니다. 증거 보존·업무 영향·자격 증명 교체·접근 제한·package 수정 중 원인에 맞는 행동을 고른다. Finding을 suppressed 또는 resolved로 표시하는 행위는 실제 자원 변경과 다르다.
8. 완성된 운영 적용 — 암호화된 파일 다운로드 실패
- 오류가 TLS handshake, S3 access, KMS decrypt 중 어느 단계인지 나눈다.
- TLS면 hostname·certificate·listener·origin 연결을 확인한다.
- S3면 실제 role·object ARN·bucket/endpoint policy를 확인한다.
- KMS면 key ARN·상태·정책·context를 확인한다.
- 필요한 최소 변경을 적용한 뒤 허용된 사용자 다운로드를 검증한다.
- 허용하지 않은 주체의 접근이 계속 차단되는지 확인한다.
- 관련 finding·로그에 변경 근거와 실제 검증 결과를 연결한다.
시험에서는 분류·저장/전송 암호화·secret·보안 finding의 역할과 대응을 연결한다. 실제 운영에서는 key와 secret의 수명주기, consumer 갱신, 변경 후 정상 기능을 함께 검증한다. 범위: Domain 4 Task 4.2.
계획과 연결
-
ID:
12-data-protection-and-security-findings -
의존:
11-identity-multi-account-and-continuous-compliance -
결정 축: 데이터 분류에서 저장·전송 암호화, 비밀값 보관, 탐지 결과와 remediation까지 보호 흐름을 연결한다.
-
범위: data classification, KMS, ACM, Secrets Manager, Security Hub, GuardDuty, AWS Config, Inspector, AWS Security Agent.
-
시험 매핑: Domain 4, Task 4.2.