업계가 HTTP/2 Rapid Reset 교훈을 아직 소화하는 사이, 다음 프로토콜급 전쟁은 이미 시작되었다. QUIC 기반 HTTP/3(RFC 9000, 2021년 표준화)은 이제 주류다——Cloudflare, Google, Meta에서 QUIC은 트래픽의 절반을 넘는다. 그러나 QUIC은 TCP를 UDP로 바꾸고, 성능 향상과 맞바꿔 완전히 새로운 DDoS 공격 표면을 다시 열었다. 방어 측 관점에서 QUIC이 왜 L7 방어를 어렵게 하는지 보자.
1. 왜 QUIC은 규칙을 바꾸는가
QUIC의 핵심 설계가 그 보안 특성을 결정한다.
- UDP 기반: 방화벽/NAT/IDS의 TCP 전제를 우회하고 UDP의 커넥션리스성(반사 항 참조)을 상속한다.
- 기본 암호화: 핸드셰이크(Initial) 패킷은 암호화된다. 미들박스는 TCP처럼 플래그를 들여다볼 수 없어 평문 특징 필터링이 붕괴한다.
- 사용자 공간 구현: QUIC은 종종 사용자 공간(nginx/quiche, envoy)에서 돌며, 각 패킷이 비싼 암호 비용을 지불한다——커널 TCP 스택이 아니다.
2. 암호 비용 비대칭: QUIC판 Rapid Reset?
Rapid Reset의 본질은 '공격자는 적게, 서버는 막대하게'라는 계산 비대칭이었다. QUIC 핸드셰이크에도 비슷한 지렛대가 있다.
QUIC의
Initial패킷마다 서버는 키 유도·복호·상태 할당을 강제당한다. 공격자가 많은 스푸핑/빈 핸드셰이크를 뿌리면, 의미 있는 연결이 확립되기 전에 서버 CPU를 고갈시킨다.
그래서 RFC 9000은 서버에 Retry 패킷으로 Token 휴대를 의무화했다——'먼저 진짜 증명'으로 스푸핑 출처 핸드셰이크 플러드를 막는다. 하지만 그 Token 기구 자체가 새로운 엣지 비용을 가져오며, 방어 측은 올바르게 구현해야 한다.
3. QUIC 증폭: 작은 요청·큰 응답
NCC Group과 Cloudflare(2022–2023) 연구에 따르면 QUIC 서버의 첫 응답(Retry 또는 Handshake)은 클라이언트 Initial보다 클 수 있어 약 3~5배 증폭률을 낸다. Memcached의 5.1만 배에는 미치지 못하지만 출처 스푸핑과 결합하면 서버와 반사기를 압박한다. RFC 9000은 증폭 억제에 Retry Token을 요구하나, 불완전 구현 서버는 여전히 위험이다.
4. 0-RTT 리플레이: 과소평가된 무기
QUIC의 0-RTT는 핸드셰이크 완료 전 데이터를 보낼 수 있다(지연 감소). 하지만 0-RTT 데이터는 리플레이 가능——공격자가 0-RTT 패킷을 포획해 반복 재생하며 연결을 확립하지 않고 오리진/앱에 증폭+리플레이 DDoS를 가한다. 방어 측은 0-RTT를 멱등/일회성으로 만들고 안전한 메서드(GET)로 제한해야 한다.
5. 연결 마이그레이션과 CID 남용
QUIC의 연결 마이그레이션(Connection ID로 네트워크 간 재개)과 스테이트리스 리셋은 편익이자 공격 표면이다.
- CID 예측/경합: 예측 가능한 CID 생성으로 공격자가 리셋 패킷을 위조해 수많은 연결을 끊을 수 있다.
- 마이그레이션 남용: 마이그레이션을 반복 유발해 서버에 상태 재구축을 강제, 리소스를 태운다.
- 버전 협상 플러드: 알 수 없는 버전 패킷을 다수 보내 서버 측 버전 협상 처리를 강제한다.
6. 방어 측의 QUIC 생존 체크리스트
- QUIC 대응 엣지 방어: TCP 특징에 의존하지 말고 UDP/QUIC 계층에서 레이트 제한——연결당 상한, 핸드셰이크 빈도 상한, 엄격한 Retry Token 검증.
- 암호 비용 비대칭 봉쇄: 유효한 Token 없는 Initial을 조기 폐기. 핸드셰이크 암호는 엣지에서, 오리진이 아니라.
- 0-RTT 제약: 멱등 메서드만 허용, 리플레이 방어(nonce/일회성 token) 활성화.
- 프로토콜 지표 모니터링: '미완 핸드셰이크/확립 연결', Retry 빈도, 0-RTT 비율 추적——이들이 초기 QUIC 공격 신호.
- Rapid Reset과 같은 교훈: 프레임 단위 이상을 초 단위로 탐지·완화하는 아키텍처가 QUIC 시대의 진짜 벽.
결론
QUIC/HTTP3은 '더 안전'이 아니다——보안 경계를 네트워크 코어에서 프로토콜 엣지로 옮길 뿐이다. 평문 가시성을 잃으면서 암호 비용을 증폭한다——패킷급 필터링에 대한 구조적 도전. Rapid Reset 교훈 1: 공격자는 모든 새 프로토콜의 비용 비대칭을 쫓는다. QUIC 시대, 방어 측은 프로토콜 엣지에서 프레임 단위 탐지와 자동 완화를 갖춰야 한다. 그렇지 않으면 다음 '3억 9,800만 RPS'는 UDP 위를 달릴지도 모른다.