Attacks on routing: IP hijacks
How ¡Internet ¡number ¡resources ¡are ¡managed ¡ IANA ¡ ARIN ¡ LACNIC ¡ APNIC ¡ RIPE ¡NCC ¡ AfriNIC ¡ ISP ¡#1 ¡ ISP ¡ NIC.br ¡ NIC.MX ¡ LIRs/ISPs ¡ LIRs/ISPs ¡ End ¡users ¡ ISP ¡mx ¡
How ¡Internet ¡number ¡resources ¡are ¡managed ¡ (ii) ¡ • What ¡do ¡we ¡mean ¡by ¡resources ¡ – IPv4 ¡Addresses ¡ – IPv6 ¡Addresses ¡ – Autonomous ¡System ¡Numbers ¡ • Both ¡16 ¡and ¡32 ¡bits ¡ • FoundaOonal ¡document: ¡RFC ¡2050 ¡ – “ IP ¡Registry ¡Alloca1on ¡Guidelines ” ¡ • Each ¡RIR ¡is ¡the ¡ authorita(ve ¡source ¡on ¡the ¡ relaOonship ¡between ¡ users/holders ¡ and ¡resources ¡ – Each ¡RIR ¡operates ¡a ¡registry ¡database ¡
RouOng ¡in ¡the ¡Internet ¡ ASN ¡20 ¡ ¡ announces ¡ 10.1.0.0/16 ¡ The ¡10.1.0.016 ¡prefix ¡ propagates ¡across ¡ASs ¡(via ¡BGP ¡ ASN ¡10 ¡receives ¡ sessions) ¡ the ¡prefix ¡ AZributes: ¡ ¡ 10.1.0.0/16 ¡ 10.1.0.0/16 ¡ AS_PATH ¡ASN1 ¡ASN3 ¡ ASN20 ¡
RouOng ¡in ¡the ¡Internet ¡(ii) ¡ • BGP ¡chooses ¡routes ¡using ¡a ¡ decision ¡algorithm ¡and ¡the ¡ values ¡of ¡the ¡available ¡ a=ributes ¡ • AS_PATH ¡is ¡a ¡list ¡of ¡the ¡ autonomous ¡systems ¡a ¡given ¡ UPDATE ¡has ¡traversed ¡ In ¡this ¡case ¡ASN ¡20 ¡is ¡ – The ¡first ¡entry ¡is ¡the ¡AS ¡ the ¡"origin-‑as" ¡for ¡ originaOng ¡the ¡route ¡("origin-‑ 10.1/16 ¡ as") ¡
Who ¡has ¡the ¡"right" ¡to ¡use ¡resources? ¡ • When ¡an ¡ISP ¡obtains ¡resources ¡from ¡its ¡RIR ¡(IPv6/IPv4/ ASN): ¡ – The ¡ISP ¡has ¡to ¡noOfy ¡its ¡upstream ¡ASNs ¡which ¡prefixes ¡are ¡ going ¡to ¡be ¡announced ¡via ¡BGP ¡ – This ¡is ¡usually ¡done ¡via ¡e-‑mail, ¡web ¡forms ¡or ¡by ¡updaOng ¡an ¡ IRR ¡( Internet ¡Rou1ng ¡Registry) ¡ • Upstreams ¡verify ¡( or ¡at ¡least ¡they ¡should ) ¡the ¡right ¡of ¡ use ¡for ¡the ¡announced ¡resources ¡ – RIR ¡WHOIS ¡Text-‑based ¡and ¡not ¡really ¡suitable ¡for ¡automaOc ¡ usage ¡ – IRR ¡WHOIS ¡Non-‑signed ¡informaOon, ¡liZle ¡addiOonal ¡tools ¡ provided ¡for ¡verificaOon ¡of ¡usage ¡rights ¡except ¡for ¡names, ¡ phone ¡numbers ¡and ¡email ¡POCs ¡ • This ¡verificaOon ¡process ¡is ¡someOmes ¡not ¡as ¡thorough ¡ as ¡it ¡should ¡be ¡
Checking ¡usage ¡rights ¡for ¡a ¡resource ¡ • Network ¡administrators ¡ – Local ¡checks ¡in ¡rouOng ¡infrastructure ¡ • Require ¡previous ¡step ¡(registering ¡the ¡route ¡object ¡with ¡an ¡IRR) ¡ – Router ¡protecOon ¡ – RouOng ¡protocol ¡integrity ¡ • Peer ¡authenOcaOon ¡ • Filtering ¡known-‑invalid ¡routes ¡ – ¡RFC ¡1918 ¡prefix ¡filtering ¡ – ¡Bogon ¡filtering ¡ ¡ • In ¡the ¡end ¡the ¡integrity ¡of ¡the ¡rouOng ¡system ¡depends ¡ on ¡ ad-‑hoc ¡trust ¡rela(onships ¡between ¡peers ¡
Route ¡Hijacking ¡ • When ¡an ¡enOty ¡parOcipaOng ¡in ¡Internet ¡rouOng ¡ announces ¡a ¡prefix ¡without ¡authorizaOon ¡we ¡face ¡a ¡ route ¡hijack ¡ • It ¡can ¡be ¡either ¡malicious ¡or ¡due ¡to ¡operaOonal ¡ mistakes ¡ • Some ¡well-‑known ¡cases: ¡ – Pakistan ¡Telecom ¡vs. ¡You ¡Tube ¡(2008) ¡ – China ¡Telecom ¡(2010) ¡ – Google ¡in ¡Eastern ¡Europe ¡(various ¡ASs, ¡2010) ¡ – Some ¡ocurrences ¡in ¡our ¡region ¡(January/February ¡2011) ¡
Route ¡Hijacking ¡(ii) ¡ AS ¡6057 ¡ announces ¡ 200.40/16 ¡ AS ¡15358 ¡ AS ¡8158 ¡gets ¡ announces ¡ 200.40.0.0/16 ¡ 200.40/24 ¡ AS ¡8158 ¡gets ¡ and ¡ 200.40.0.0/16 ¡ 200.40.235.0/24 ¡ 200.40.0.0/16 ¡AS_PATH ¡ASN1 ¡ASN3 ¡ ASN6057 ¡ 200.40.235.0/24 ¡AS_PATH ¡ASN1 ¡ASN3 ¡ ASN6057 ¡
Route ¡Hijacking ¡(iii) ¡ • RIPE ¡NCC ¡Video ¡ – hZp://www.youtube.com/watch?v=IzLPKuAOe50 ¡
Resource ¡PKI ¡ • Resource ¡Public ¡Key ¡Infraestructure ¡ – Goal: ¡create ¡a ¡system ¡that ¡allows ¡the ¡cerOficaOon ¡of ¡ usage ¡rights ¡for ¡Internet ¡numbering ¡resources ¡ – High-‑level ¡overview ¡ • Use ¡of ¡X.509 ¡v3 ¡cerOficates ¡ ¡ • Apply ¡RFC ¡3779 ¡extensions ¡to ¡these ¡cerOficates. ¡These ¡extensions ¡ allow ¡Internet ¡resources ¡(IPv4/IPv6/ASNs) ¡fields ¡within ¡ cerOficates ¡ ¡ ¡ • A ¡way ¡to ¡automaOcally ¡validate ¡the ¡ origin-‑as ¡of ¡a ¡BGP ¡UPDATE ¡ – StandardizaOon ¡AcOviOes ¡ • IETF ¡SIDR ¡working ¡group ¡ – ImplementaOon ¡AcOviOes ¡ • RIRs ¡
Resource ¡PKI ¡(ii) ¡ • Automated ¡ origin ¡valida(on ¡for ¡route ¡ announcements ¡ • The ¡enOty ¡with ¡usage ¡rights ¡for ¡a ¡resource ¡ signs ¡ the ¡ origin-‑as ¡field ¡of ¡a ¡PKI ¡object ¡ • The ¡following ¡procedures ¡are ¡applied ¡to ¡validate ¡ RPKI ¡cerOficates ¡and ¡rouOng ¡informaOon ¡objects: ¡ – The ¡cryptographic ¡validity ¡of ¡the ¡RPKI ¡cerOficate ¡chain ¡ (just ¡like ¡any ¡other ¡PKI) ¡ – The ¡CIDR ¡inclusion ¡properOes ¡of ¡IP ¡addresses ¡ • In ¡this ¡way ¡it ¡becomes ¡more ¡difficult ¡for ¡a ¡third ¡ party ¡to ¡inject ¡invalid ¡data ¡into ¡the ¡rouOng ¡system ¡
Resource ¡PKI ¡(iii) ¡ RPKI ¡ Management ¡ System ¡ Cache ¡ Repository ¡
Resource ¡PKI ¡(iv) ¡ • All ¡RPKI ¡signed ¡objects ¡are ¡listed ¡in ¡public ¡ repositories ¡ • Aoer ¡verificaOon, ¡these ¡objects ¡can ¡be ¡used ¡to ¡ configure ¡filtering ¡in ¡routers ¡ • ValidaOon ¡Process ¡ – Signed ¡objects ¡have ¡references ¡to ¡the ¡cerOficate ¡used ¡to ¡ sign ¡them ¡ – Each ¡cerOficate ¡has ¡a ¡pointer ¡to ¡an ¡upper ¡level ¡cerOficate ¡ – The ¡resources ¡listed ¡in ¡a ¡cerOficate ¡MUST ¡be ¡valid ¡subsets ¡ of ¡the ¡resources ¡listed ¡in ¡its ¡parent's ¡cerOficate ¡ – In ¡this ¡way ¡a ¡trust ¡chain ¡can ¡be ¡traced ¡to ¡a ¡"trust ¡anchor" ¡ both ¡cryptographically ¡as ¡well ¡as ¡in ¡CIDR ¡terms ¡
X.509 ¡v3 ¡cerOficates ¡with ¡RFC ¡3779 ¡ extensions ¡ • X.509 ¡Digital ¡CerOficates ¡ Version ¡ – Subject, ¡validity ¡period, ¡public ¡key ¡and ¡ Serial ¡Number ¡ other ¡fields ¡ Signature ¡Algorithm ¡ • With ¡extensions: ¡ Issuer ¡ – RFC ¡3779 ¡defines ¡extensions ¡that ¡allow ¡the ¡ Subject ¡ representaOon ¡of ¡Internet ¡resources ¡as ¡ Subject ¡Public ¡Key ¡ cerOficate ¡fields ¡ Extensions ¡ • List ¡of ¡IPv4, ¡IPv6 ¡and ¡ASNs ¡assigned ¡to ¡ Subject ¡InformaOon ¡ ¡Authority ¡(SIA) ¡ an ¡organizaOon ¡ Authority ¡InformaOon ¡ ¡ Access ¡(AIA) ¡ • Implemented ¡in ¡OpenSSL ¡1.0c ¡onwards ¡ Addr: ¡10.10.10.0 ¡ Asid: ¡65535 ¡ – It ¡has ¡to ¡be ¡specifically ¡enabled ¡when ¡ running ¡"./configure" ¡
CerOficates ¡with ¡RFC ¡3779 ¡extensions ¡ • "IP ¡DelegaOon" ¡SecOon ¡ Version ¡ – Special ¡value: ¡"INHERITED" ¡ ¡ Serial ¡Number ¡ • "AS ¡DelegaOon" ¡SecOon ¡ Signature ¡Algorithm ¡ – Special ¡value: ¡"INHERITED" ¡ Issuer ¡ Subject ¡ • ValidaOon ¡Process ¡ Subject ¡Public ¡Key ¡ – It ¡involves ¡the ¡validaOon ¡of ¡the ¡resources ¡ ¡ Extensions ¡ Subject ¡InformaOon ¡ ¡Authority ¡(SIA) ¡ Authority ¡InformaOon ¡ ¡ Access ¡(AIA) ¡ Addr: ¡10.10.10.0 ¡ Asid: ¡65535 ¡
RPKI ¡Structure ¡ RTA ¡is ¡the ¡self-‑ signed ¡cerOficate ¡ LACNIC ¡RTA ¡ in ¡the ¡hierarchy ¡ LACNIC ¡resources ¡ Signature ¡ chain ¡ LACNIC ¡ ProducOon ¡ <<INHERITED>> ¡ ISP ¡#2 ¡ ISP ¡#1 ¡ ISP ¡#2 ¡Resources ¡ ISP ¡#1 ¡Resources ¡ End ¡User ¡CA ¡ ROA ¡ ROA ¡ #1 ¡ End ¡EnOty ¡cert. ¡ End ¡EnOty ¡cert. ¡ (EU ¡#1 ¡Resources) ¡ ROA ¡ ROA ¡ End ¡EnOty ¡cert. ¡ End ¡EnOty ¡cert. ¡
Recommend
More recommend