-
BGP 메시지 처리 버그로 인해 2025년 5월 20일 대규모 라우팅 불안정성 및 일부 네트워크의 인터넷 연결 단절 현상 발생
- 문제의 원인은 잘못된 BGP Prefix-SID Attribute였으며, 주요 BGP 구현체(특히 JunOS와 Arista EOS)에서 예외적 반응 유발
-
Hutchison 및 Starcloud를 포함한 일부 트랜짓 캐리어가 원인 메시지를 중계하며 피해 확산
- 사건으로 인해 약 100개 이상의 네트워크에서 대량의 BGP 세션 리셋 및 불안정성 발생
- 벤더별 BGP 오류 내성 처리의 허점과 개선 필요성이 이번 사태를 통해 강조됨
May 27 2025
BGP 처리 버그로 인한 전세계 인터넷 라우팅 불안정성
2025년 5월 20일 화요일 오전 7시(UTC)에 BGP 메시지가 전파되면서, 인터넷 트래픽을 처리하는 데 자주 사용되는 두 가지 주요 BGP 구현체에서 예기치 못한 동작 현상 발생
이로 인해 다수의 ‘인터넷 연결 BGP 세션’이 자동으로 종료되는 현상으로 최소한의 라우팅 불안정성에서 최악의 경우 일부 네트워크의 연결 단절까지 일시적으로 발생함
문제의 BGP 메시지
- bgp.tools에서 수집된 세션을 분석한 결과, 이 현상을 일으킨 BGP Update 메시지는 평범해 보이나, 내부 데이터가 0x00으로 채워진 손상된 BGP Prefix-SID Attribute를 포함함
- 대부분의 BGP 구현체(IOS-XR, Nokia SR-OS)는 RFC7606(BGP 오류 내성)에 따라 올바르게 필터링하지만, JunOS와 Arista EOS 간 상호작용에서 문제 발생
- JunOS는 손상된 메시지를 유지해 전달하고, Arista EOS는 해당 메시지를 수신하면 BGP 세션을 재설정함
- Juniper 하드웨어(JunOS)가 많이 쓰이는 환경에서, Arista EOS와 연결된 경우 최장 10분가량 인터넷 접속 단절 현상 발생 가능성 있음
문제의 메시지 발신자
-
해당 기간 bgp.tools 아카이브를 분석해보면 여러 AS 오리진이 관련되어 있음
-
이는 Prefix를 생성한 네트워크가 아닌, 이동 경로 중간의 트랜짓 캐리어가 잘못된 Attribute를 추가했음을 시사함
-
문제 발생에 연관된 주요 AS는 다음과 같음
- AS9304 (Hutchison Global Communications Limited)
- AS135338 (Starcloud Information Limited)
- AS151326 (DCConnect Communication Pte. Ltd.)
- AS138077 (PT Abhinawa Sumberdaya Asia)
-
bgp.tools 데이터로 볼 때 Attribute를 실제 추가한 쪽은 Starcloud(AS135338) 혹은 Hutchison(AS9304) 일 가능성 높음
-
해당 Attribute가 전파된 대표적 Prefix들은 156.230.0.0/16, 138.113.116.0/24 등임
-
Hutchison/AS9304가 다수의 인터넷 익스체인지(IX)에 연결되어 있으면서, bird가 사용하는 라우트 서버에도 메시지가 전파됨
-
Bird는 BGP SID를 지원하지 않아 필터링 없이 수많은 IX로 메시지를 전송, 망 규모의 혼란이 학대됨
BGP Prefix-SID란?
-
BGP Prefix-SID Attribute는 일반적으로 내부 BGP 세션에서만 사용되어야 하며, 하나의 네트워크 내에서 목적지로 이동하는 경로를 정의하는 데 쓰임(RFC8669)
- 해당 Attribute가 글로벌 라우팅 테이블로 누출된 원인은, 외부 BGP 세션이 내부 세션처럼 구성된 경우일 수 있음
피해 대상
- 정확한 피해자 식별은 어렵지만, 초기 BGP 메시지 이후 엄청난 변동(churn)을 보인 약 100여 개 네트워크에서 문제 확인
- 평소 bgp.tools의 라우트 콜렉터는 초당 2~3만 메시지를 수집하지만, 사건 시점엔 10초 평균 15만건 이상 기록
- 이 수치는 광범위한 인터넷 경로에 심각한 장애가 발생했다는 신호임
벤더의 책임과 시사점
- 근본 원인이 확실하지 않지만, 인터넷 규모로 오류 메시지가 확산된 점에서 기존의 BGP 오류 처리 문제가 현실적 위험임을 입증함
- 타 벤더는 문제 Attribute를 필터링했으나, Juniper는 이를 우회적으로 허용해 Arista 장비에 전달, BGP 오류 내성 코드의 미비로 세션 리셋 유발
- JunOS의 공식 문서에서도 “메시지 전체를 점검하지는 않는다”는 사실을 명시함
- 이러한 설계로, JunOS는 원격 세션 리셋 위험은 방지하나, 다른 피어 혹은 고객에게 문제 메시지 전달 가능성 존재
결론
-
이번 사건은 장애가 단기간이었지만, 규모 확장 시 더 심각해질 가능성이 있음을 시사함
-
서비스가 점점 IP 중심으로 이동함에 따라, 인터넷 장애의 영향은 단순 소비자 메일 접속 불가를 넘어, TV 방송 실패, 긴급 서비스 콜 불통 등으로 확산될 위험 존재
-
이로 인해 현실적으로 실제 인명 피해까지 발생할 가능성 있다는 점에서, 벤더별 확실한 BGP 오류 내성 구현 필요성 강조됨
-
bgp.tools 데이터 분석에 협력할 네트워크 운영자의 참여 가능성이 안내됨 (링크 제공)