# 라우팅 공격 (Routing Attack)

라우팅 공격(Routing Attack)은 블록체인과 같은 웹 기반 시스템의 가동 시간 또는 참여에 영향을 주기 위해 인터넷 서비스 제공업체(ISP) 수준에서 시도되는 공격입니다. 공격자는 인터넷에서 데이터가 이동하는 경로를 조작해 노드 사이의 트래픽을 가로채거나 끊거나 늦춥니다.

## 라우팅 공격의 메커니즘

인터넷은 수많은 자율 시스템(AS, 대개 ISP나 대형 네트워크)이 BGP(Border Gateway Protocol)로 “어떤 IP 주소 대역에 어떤 경로로 갈 수 있는지”를 서로 알리면서 작동합니다. BGP는 기본적으로 다른 AS가 알린 경로를 신뢰하므로, 악의적이거나 침해된 AS가 남의 주소 대역을 자기 것이라고 알리면(BGP 하이재킹) 그 대역으로 가는 트래픽이 공격자 쪽으로 흘러갑니다. 이렇게 경로를 손에 넣은 공격자는 다음을 할 수 있습니다.

- **가로채기:** 트래픽을 자기 쪽으로 돌려 내용을 보거나 가짜 서버로 연결합니다.
- **차단:** 특정 노드나 서비스로 가는 트래픽을 버려 접속을 막습니다.
- **지연:** 트래픽을 통과시키되 일부 메시지만 늦게 전달합니다.

## 블록체인에 미치는 영향

블록체인은 분산 구조 덕분에 복원력이 있지만, 노드와 채굴 해시 파워가 소수의 AS와 호스팅 업체에 몰려 있으면 라우팅 공격에서 자유롭지 않습니다. 연구(Apostolaki 외, 2017 「Hijacking Bitcoin」)는 비트코인에 대한 두 가지 공격을 제시했습니다.

- **분할(partition) 공격:** BGP 하이재킹으로 네트워크 일부 노드를 나머지와 끊어 놓습니다. 고립된 쪽은 다른 체인을 이어 가게 되고, 다시 연결되면 고립된 쪽에서 만든 블록과 트랜잭션은 무효가 되어 채굴 보상이 사라지거나 이중 지불의 여지가 생깁니다.
- **지연(delay) 공격:** 공격자가 노드로 가는 경로 위에 있으면 새 블록 전달을 최대 20분가량 늦출 수 있습니다. 그동안 피해 노드는 최신 체인을 모르는 상태가 되고, 채굴자라면 쓸모없는 블록에 연산을 낭비하게 됩니다.

## 실제 사례

- **채굴 풀 하이재킹(2014):** 캐나다의 한 ISP 경로가 BGP로 하이재킹되어 채굴자들의 연결이 공격자의 가짜 채굴 풀로 돌려졌고, 몇 달에 걸쳐 약 8만 3천 달러 상당의 암호화폐 채굴 수익이 빼돌려졌다고 보고되었습니다.
- **Route 53 하이재킹(2018):** 공격자들이 BGP로 Amazon Route 53 DNS 서비스의 주소 대역을 가로채, 암호화폐 지갑 사이트 MyEtherWallet 이용자를 가짜 사이트로 유도하고 자금을 탈취했습니다.
- **이클립스 공격과의 관계:** 이클립스 공격은 P2P 계층에서 노드의 들어오고 나가는 연결을 모두 장악해 노드를 고립시키는 공격입니다. 이더리움에서도 악성 노드가 고립된 노드가 보는 네트워크 상태를 조작할 수 있음이 시연되었습니다. 라우팅 공격은 같은 고립을 네트워크 경로 수준에서 만들어 낼 수 있습니다.

## 대비 방법

- **연결 다변화:** 노드를 여러 AS와 지역에 분산하고, 서로 다른 ISP를 거치는 피어와 연결합니다. 비트코인 코어는 피어를 고를 때 같은 네트워크 대역에 몰리지 않도록 하며, asmap 설정을 쓰면 같은 AS에 몰리지 않도록 할 수 있습니다.
- **암호화된 P2P 연결:** 비트코인의 BIP324(v2 전송)처럼 노드 간 연결을 암호화하면 경로 위의 공격자가 내용을 보거나 몰래 바꾸기 어려워집니다. 다만 트래픽 차단이나 지연 자체를 막지는 못합니다.
- **릴레이 네트워크와 다중 경로:** 블록을 빠르게 전파하는 전용 릴레이 네트워크나 위성·Tor 같은 별도 경로를 함께 쓰면 한 경로가 막혀도 블록을 받을 수 있습니다.
- **경로 검증과 모니터링:** RPKI 기반 경로 출처 검증을 적용하고, 피어 연결과 블록 수신 지연에 이상이 있는지 감시합니다.

---
출처: https://achivx.kr/glossary/routing-attack-%EB%9D%BC%EC%9A%B0%ED%8C%85-%EA%B3%B5%EA%B2%A9/ · ACHIVX 용어 사전 · 수정일 2026-10-20
