RPKI and BGP Route Origin Validation
RPKI 및 BGP 경로 원본 검증
리소스 공개 키 인프라가 경로 하이재킹을 방지하는 방법 — ROA 신뢰 체인, 검증 상태, RTR 프로토콜 및 현재 배포 위치를 포괄합니다.
1. BGP에 기본 원본 유효성 검사가 없는 이유
BGP는 모든 참가자가 신뢰할 수 있는 협동 인터넷을 위해 설계되었습니다. 라우터는 업데이트 메시지를 수락하고 원래 AS가 실제로 해당 IP 접두사를 알릴 권한이 있는지 암호화 확인 없이 이를 전파합니다. 이는 잘못된 구성이나 악의로 인해 모든 AS가 다른 사람의 접두사를 알릴 수 있으며 해당 발표가 몇 분 안에 전 세계적으로 전파될 수 있음을 의미합니다.
RPKI 채택을 가속화한 주목할만한 사건:
- 2008 - 파키스탄 통신:PTCL은 실수로 YouTube의 주소 공간(208.65.153.0/24)에 대한 보다 구체적인 접두사를 발표하여 업스트림 공급자가 경로를 철회하기 전에 약 2시간 동안 전 세계적으로 YouTube를 블랙홀링했습니다.
- 2010 - 차이나 텔레콤:China Telecom은 미군, 정부 및 상업 네트워크에 속하는 ~50,000개의 접두사를 ~18분 동안 생성했습니다. 우연인지 고의인지는 확인되지 않았습니다.
- 2018년 — Amazon Route 53 DNS 하이재킹:공격자는 BGP를 사용하여 205.251.196.0/24(Amazon DNS)를 하이재킹하여 암호화폐 지갑 트래픽을 리디렉션하여 자금을 훔쳤습니다. 공격에서는 eNet(AS10297)의 BGP UPDATE를 사용했습니다.
- 2019년 — China Telecom을 통해 유럽 트래픽이 다시 라우팅되었습니다.유럽의 모바일 트래픽(Vodafone, 스위스의 Swisscom 포함)은 BGP 경로 유출로 인해 약 2시간 동안 China Telecom을 통해 다시 라우팅되었습니다.
2. RPKI 신뢰 계층 구조
RPKI(RFC 6480)는 IP 주소 공간이 위임되는 방식을 미러링하는 X.509 인증서 계층 구조를 구축합니다.
- IANA루트 트러스트 앵커를 보유합니다. 이는 각각 주소 공간을 포함하는 5개의 RIR(ARIN, RIPE NCC, APNIC, LACNIC, AFRINIC)에 리소스 인증서를 발급합니다.
- RIR회원이 보유하고 있는 주소 공간에 대해 회원(ISP, 기업)에게 인증서를 발급합니다.
- 회원EE(End Entity) 인증서 발급 및 서명경로 출발지 승인(ROA) — 특정 ASN이 특정 접두사를 생성하도록 승인하는 서명된 증명입니다.
검증자는 5개의 RIR 저장소(및 위임된 저장소 포함)에서 이 서명된 개체 계층 구조를 다운로드하고, 인증서 체인을 검증하고, 검증된 VRP(ROA 페이로드) 테이블을 구축합니다. 그런 다음 라우터는 다음을 통해 로컬 RPKI 캐시를 쿼리합니다.RTR 프로토콜 (RFC 8210) 이 테이블을 가져오고 수신되는 BGP 업데이트에 대한 원본 유효성 검사를 수행합니다.
3. ROA(경로 원산지 승인)
ROA(RFC 6482)는 세 개의 필드를 포함하는 서명된 객체입니다.
- ASN: 접두어를 생성하도록 승인된 자율 시스템입니다.
- 접두사: 인증되는 IP 접두사(IPv4 또는 IPv6)입니다.
- 최대 길이: ASN이 공지할 수 있는 최대 접두사 길이입니다. 지정하지 않으면 정확한 접두사만 승인됩니다. 예를 들어 /20 접두사에 대해 24로 설정된 경우 ASN은 /20과 /24 사이에서 더 구체적인 내용을 알릴 수도 있습니다.
단일 ROA는 동일한 ASN에 대해 여러 접두사를 승인할 수 있지만, 하나의 ROA는 단일 접두사에 대해 여러 ASN을 승인할 수 없습니다. 보조 ASN(예: 대중교통 제공업체 또는 CDN)이 접두사를 생성하도록 허용하려면 해당 ASN에 대해 별도의 ROA를 생성하세요.
4. 검증 상태
라우터는 BGP 업데이트를 수신하면 원본 유효성 검사(RFC 6811)를 로컬 VRP 테이블에 대해:
| 상태 | 상태 | 전형적인 지역 특혜 처리 |
|---|---|---|
| 유효한 | 하나 이상의 ROA가 접두사(접두사 ⊆ ROA 접두사 AND 접두사 길이 ≤ maxLength)를 포함하고 ROA의 ASN이 BGP 업데이트의 원본 ASN과 일치합니다. | +20 또는 선호 (공통) |
| 유효하지 않은 | 하나 이상의 ROA가 접두사를 포함하지만 해당 ROA에는 일치하는 ASN 및 maxLength ≥ 발표된 접두사 길이가 없습니다. | local-pref 0 또는 삭제 설정(연산자 선택, RFC 6811에서는 허용하되 표시하는 것을 권장함) |
| 찾을 수 없음 | 발표된 접두어를 포함하는 ROA가 없습니다. | 변경되지 않음(RPKI가 존재하기 전과 같이 처리됨) |
주요 통찰력:유효하지 않은것보다 문제가 있다는 더 강력한 증거입니다.찾을 수 없음. NotFound는 단순히 접두사 소유자가 아직 ROA를 생성하지 않았음을 의미합니다. 유효하지 않음은 이 ASN이 다음과 같다는 ROA가 존재함을 의미합니다.~ 아니다승인됨 - 구성이 잘못되었거나 하이재킹되었다는 강력한 신호입니다.
5. RTR 프로토콜
라우터는 X.509 인증서 체인 자체를 검증하지 않습니다. 이는 계산 비용이 많이 들고 전체 RPKI 캐시를 유지해야 합니다. 대신, 전용RPKI 검증인(Routinator, OctoRPKI, Fort, rpki-client)는 전체 RPKI 저장소를 다운로드 및 검증하고 결과 VRP(검증된 ROA 페이로드)만 RTR 프로토콜을 통해 라우터로 내보냅니다(RFC 8210).
RTR은 증분 동기화 메커니즘을 통해 TCP(IANA 할당 포트 323, Routinator와 같은 검증자는 루트 권한 요구를 피하기 위해 기본적으로 포트 3323)를 사용합니다. 검증자는 일련 번호를 보내고 라우터는 마지막 동기화 이후의 델타만 요청합니다. 이는 대규모 VRP 테이블(현재 전 세계적으로 ~400,000+ IPv4 항목)의 경우에도 대역폭을 낮게 유지합니다.
6. 배포 및 통계
2026년 초 현재 RPKI 배포는 상당한 규모에 도달했습니다.
- 전 세계적으로 라우팅되는 IPv4 접두사의 50% 이상이 ROA를 포함하는 하나 이상의 접두사를 가지고 있습니다(2019년 최대 10%에서 증가).
- 대부분의 Tier-1 및 Tier-2 ISP는 이제 경로 원본 유효성 검사를 수행하고 잘못된 경로를 삭제하거나 우선 순위를 낮춥니다.
- MANRS(라우팅 보안을 위한 상호 합의 표준)는 멤버십 전제 조건으로 RPKI ROA 생성을 요구하고 AS별 적합성 대시보드를 게시합니다.
실시간 통계:NIST RPKI 모니터, ROV++, APNIC RPKI 통계.
7. ROV를 넘어: ASPA 및 BGPsec
RPKI 경로 원본 검증은 다음 사항만 확인합니다.원산지 ASN접두사를 발표할 권한이 있습니다. AS_PATH의 유효성을 검사하지 않습니다. 공격자는 끝에 합법적인 원본 AS를 사용하여 거짓 AS_PATH를 구성할 수 있습니다. 두 가지 IETF 표준이 이를 해결합니다.
- BGPsec (RFC 8205): 경로의 각 AS는 암호화 방식으로 업데이트에 서명하여 깨지지 않는 관리 체인을 생성합니다. 모든 전송 AS가 BGPsec을 지원해야 합니다. 이는 중요한 배포 장벽입니다. 2026년 현재 거의 배포되지 않음.
- ASPA(자율 시스템 공급자 인증,초안-ietf-sidrops-aspa-프로필): AS는 승인된 업스트림 공급자를 나열하는 개체에 서명합니다. 검증자는 유효하지 않은 계곡 없는 경로(예: 고객이 마치 공급자인 것처럼 경로를 알리는 경우)를 감지할 수 있습니다. BGPsec보다 배포가 간단하고 2025~2026년 현재 주목을 받고 있습니다.
참고자료
- RFC 6480— 보안 인터넷 라우팅을 지원하는 인프라(RPKI 개요)
- RFC 6482— ROA(Route Origin Authorizations)에 대한 프로필
- RFC 6811— BGP 접두사 출처 검증
- RFC 8210— RPKI 대 라우터 프로토콜, 버전 1(RTR)
- RFC 8416— RPKI를 통해 단순화된 로컬 인터넷 번호 리소스 관리(SLURM — 로컬 재정의)
- RFC 9286— RPKI(리소스 공개 키 인프라)에 대한 매니페스트
- RFC 8205— BGPsec 프로토콜 사양
- 만스— 라우팅 보안을 위해 상호 합의된 규범
- Cloudflare RPKI 포털— 실시간 ROA 조회