Skip to main content

ECB 컷앤페이스트 공격 메모

AES-ECB는 블록 단위로 독립 암호화되기 때문에, 동일 평문 블록은 동일 암호문 블록으로 매핑됩니다. 이 특성을 이용해 CTF에서 권한 상승 토큰을 만들 수 있습니다.

핵심 아이디어

  • 입력을 조절해 role=user 블록과 role=admin 블록을 정확히 블록 경계에 맞춤
  • 암호문 블록을 잘라 붙여 admin 블록을 포함한 새로운 토큰 구성

빠른 절차

  1. 블록 사이즈 탐지(보통 16바이트)
  2. 패딩 위치 맞춰 admin이 블록 시작에 오도록 페이로드 구성
  3. admin 블록을 추출해 정상 토큰의 role 블록과 교체

방어 포인트

  • ECB 사용 금지 → CBC/GCM 권장
  • 인증된 암호(AEAD)로 무결성 검증
  • 토큰은 서명(JWT) + 서버 측 권한 검증

ECB는 “편해서 쓰는 순간” 바로 공격 표면이 됩니다. 블록 경계가 보이면 이미 끝입니다.