Serverless가 PCI 범위를 축소하는 방법

발행: (2025년 12월 7일 오후 07:25 GMT+9)
8 min read
원문: Dev.to

Source: Dev.to

TL;DR

Serverless 컴퓨트(AWS Lambda, AWS Fargate)는 인프라 계층을 제거함으로써 PCI‑DSS 범위를 크게 축소합니다. 이 계층들은 일반적으로 패치, 모니터링, 감사 증거가 필요합니다. 이제 컴플라이언스는 주로 구성 문제(IAM, 암호화, 데이터 흐름)로 전환되고, 운영 문제(OS 하드닝, FIM 에이전트, 서버 패치 주기)에서는 멀어집니다. 결과적으로 변형 가능한 시스템이 줄어들고, 만족시켜야 할 제어가 감소하며, 불변성이 강화되고, 감사 서술이 단순해집니다. Serverless가 모든 책임을 없애는 것은 아니지만, 책임을 정적이고 테스트 가능하며 자동화 가능한 구성으로 변환합니다.

PCI‑DSS Scope Overview

PCI‑DSS는 카드소지자 데이터를 저장, 처리, 전송하거나 영향을 줄 수 있는 시스템에 적용됩니다.
자체 호스팅 스택(EC2, VM, Kubernetes, 온프레미스)은 OS, 파일시스템, 패치, 사용자 접근, 네트워크 스택 등 모든 계층을 PCI 범위에 노출시킵니다. 각 계층은 하드닝, 모니터링, 로깅, 그리고 감사인에게 증명되어야 합니다.

Can Serverless Reduce PCI Burden?

Yes. 인프라 계층을 제거함으로써 PCI 제어가 붙는 대상이 애플리케이션 및 데이터 경계로 축소됩니다. 이 아키텍처적 전환은 감사 전략이 아니라 범위 축소를 이끌어냅니다.

Example: PCI Requirement 11.5 (File Integrity Monitoring)

Self‑hosted environments require:

  • FIM 에이전트
  • 호스트 수준 로깅
  • 변조 방지 구성
  • 패치 관리
  • 연중 내내 에이전트 동작에 대한 증거

Serverless(Lambda, Fargate)에서는 이러한 요구사항 중 다수가 사라집니다:

  • Lambda: 변형 가능한 파일시스템이 없음(/var/task는 읽기 전용), SSH 접근 불가, 실행 환경이 자주 교체됩니다.
  • Fargate: 읽기 전용 루트 파일시스템(readonlyRootFilesystem: true)으로 실행 가능; 컨테이너 이미지가 유일한 변형 가능한 아티팩트이며, 호스트 수준 접근이 없습니다.

기본 표면이 변형될 수 없기 때문에 PCI 제어는 운영적으로가 아니라 구조적으로 충족됩니다.

Characteristics of a Serverless PCI‑Scoped Architecture

  • 컴퓨트 리소스에 대한 인바운드 접근 없음
  • 자동 TLS 및 요청 검증
  • 서버 패치 또는 OS 제어 없음
  • 중앙 집중식 감사 로깅
  • 암호화된 영구 스토어
  • 결정론적 IAM 기반 접근 제어

Sample Lambda Function (Python)

import hashlib
import os

def handler(event, context):
    pan = event["pan"]               # Provided from PCI‑scoped upstream

    if not pan.isdigit():
        raise ValueError("Invalid PAN")

    # Salted token generation (never log sensitive data)
    # Note: In production, fetch secrets from AWS Secrets Manager
    salt = os.environ["TOKEN_SALT"]
    token = hashlib.sha256(f"{salt}:{pan}".encode()).hexdigest()[:16]

    return {"token": token}

Deploying the Function

aws lambda create-function \
  --function-name tokenize \
  --role arn:aws:iam:::role/tokenizer \
  --runtime python3.12 \
  --handler handler.handler \
  --zip-file fileb://function.zip

Mutable Surface Comparison

Self‑hosted

ComponentInfrastructure Mutable?OS / Patching Scope?
EC2 hostYesYes
OSYesYes
Reverse proxyYesYes
Runtime / depsYesYes
ApplicationYesYes
Database serverYesYes
Block storageYesYes
Total mutable surfaces7

Serverless

ComponentInfrastructure Mutable?OS / Patching Scope?
API GatewayNoNo
Lambda runtimeNoNo
Lambda codeYesYes
DynamoDBNoNo
Total mutable surfaces1

변형 가능한 표면이 감소함에 따라 감사 복잡성, 운영 위험, 보완 제어, 보안 변동성이 직접적으로 감소합니다.

Constraints of Serverless

  • 제한된 OS 수준 인트로스펙션
  • 콜드 스타트(Lambda) 및 프로비저닝 지연(Fargate)
  • IAM이 주요 경계가 되며, 잘못된 구성은 더 큰 영향을 미침
  • 다중 서비스 아키텍처는 데이터 흐름 문서 요구사항을 증가시킴
  • 사고 대응은 전적으로 로그와 메트릭에 의존

Mitigations

  • AWS X‑Ray + 구조화 로깅(예: Lambda Powertools) 활용
  • AWS Config + Security Hub PCI 규칙을 활성화하여 지속적 검사
  • Fargate에서 읽기 전용 파일시스템 활성화
  • ECR 이미지 스캔 및 의존성 스캔(Amazon Inspector) 사용
  • IAM Access Analyzer 로 IAM 경계 검증

Why Serverless Improves Compliance

전통적인 인프라는 운영적 드리프트(패치 주기, 구성 오류, 에이전트 실패, 임시 변경)로 가득합니다. 이러한 동적 특성은 큰 컴플라이언스 부담을 초래합니다. Serverless는 인프라를 중앙 관리형, 불변, 선언형 구성 서비스로 전환함으로써 대부분의 드리프트를 제거합니다. 인프라가 소프트웨어처럼 동작하면 컴플라이언스는 반복 가능하고, 검토 가능하며, 테스트 가능해집니다.

Serverless 아키텍처는 기존에 운영 및 감사 복잡성을 크게 차지하던 인프라 계층을 제거함으로써 PCI‑DSS 컴플라이언스의 본질을 바꿉니다. 팀은 IAM 설계, 암호화, 데이터 흐름, 최소한의 애플리케이션 로직에 집중하게 됩니다. 이 전환은 변형 가능한 표면을 한 자릿수 수준으로 감소시키고, 보안 불변성을 강화하며, 감사 서술을 단순화합니다.

가장 중요한 구조적 변화는 비용 절감이나 개발자 편의성이 아니라, 컴플라이언스를 지속적인 운영 부담에서 주로 정적 구성 문제로 전환한 점입니다. Serverless를 사용하면 AWS가 강화되고 검증된 기반을 제공하고, 팀은 제어를 재구현하기보다 상속받게 됩니다. 이는 PCI 컴플라이언스를 더 빠르게 달성하고, 유지 관리가 쉬우며, 실제로 더 견고하게 만들습니다.

Resources

  • AWS PCI Compliance Overview
  • AWS Services in Scope for PCI DSS
  • AWS Artifact – retrieve AWS’s PCI DSS Attestation of Compliance
  • AWS Lambda Security Overview
  • AWS Fargate Security Overview
  • AWS Well‑Architected Serverless Lens
  • PCI DSS v4.0 Standard
  • PCI SSC Cloud Guidance
  • Case Studies
    • Discover: PCI‑Compliant Payments on AWS
    • FICO: Regulated Workloads on AWS Lambda
    • Change Technologies: Achieving PCI DSS Level 1 Using Serverless
Back to Blog

관련 글

더 보기 »