Preprečimo “source address spoofing” v naših omrežjih…

“Source address spoofing” je znana težava na Internetu, katero pa lahko dokaj enostavno rešimo – tako na IPv6 kot na IPv4 protokolu. “Source address spoofing” omogoča nekaterim skupinam, da pošiljajo iz različnih omrežij pakete (majhne zahteve) z izvornim IP naslovom “tarče” na milijone Internet strežnikov, ki potem odgovorijo s precej večjo količino podatkov – ki pa seveda potuje na pravi IP naslov “tarče”. Temu se reče DDoS, ali Distributed Denial of Service attack…

Kako se pred tem zaščitimo? Mehanizmov je več, imenujemo jih “DDoS mitigation techniques” in jih najdemo na Internetu, če malo pogrskamo za njimi. Namen tega članka je, da se zavemo kako pomembno je, da blokiramo promet iz naših omrežij ki ne izhaja iz naših IP številk. Tak promet se tipično generira iz več možnih izvorov – morda nam je kdo namestil kakšno sporno programsko opremo, ki je del kakšnega bot-neta, morda virus, morda je kdo vdrl v naše sisteme in jih uporablja za DDoS, morda pa so zlikovci enostavno pri nas zakupili web gostovanje in mi sploh ne vemo, kaj počnejo.

SI-CERT je na svojih straneh opisal napad z “DNS odbojem”, kjer je potvarjanje izvornih IP naslovov nujen pogoj za napad. Pri botnet napadih “source IP spoofing” ni nujen pogoj, je pa uporaben in precej olajša napad.

Kako se tega ubranimo? Mehanizma sta dva – prvi je filtriranje prometa na naših usmerjevalnikih, drugi je RPF (Reverse Path Forwarding check). Z RPF so včasih problemi, zato bi se za potrebe tega zapisa osredotočil na filtriranje.

Poglejmo primer Go6lab. V labu imamo BGP usmerjevalnik, ki je povezan na 3 največje Slo ISP ponudnike in od vseh treh dobimo full-bgp-tabele za IPv6 in IPv4. Za zunanjim usmerjevalnikom, ki dela distribucijo prometa imamo PAN firewall in še en interni usmerjevalnik, ki naprej distribuira promet po mreži.

RIPE-NCC nam je dodelil te IP bloke:

IPv6: 2001:67c:27e4::/48
IPv4: 91.239.96.0/23
AS198644

V našem omrežu so torej lahko samo naprave, ki uporabljajo te IP naslove in promet, ki izhaja iz našega omrežja in ima drugačne izvorne IP naslove je treba blokirati, ker je jasno, da je to “malicious” promet.

Kako to naredimo?

Ker smo zunanje Internet povezave in BGP preračunavanje v Go6Lab preselili na Mikrotik RB1036 (Cloud Core router z 36 core Tilera procesorjem, doniran od Virtua-IT), bom primer filtriranja podal za RouterOS platformo. Za ostale platforme je zadevo enostavno “prevesti”, tukaj bomo pokazali idejo.

IPv6:

/ipv6 firewall filter
add action=drop chain=forward comment=”Block SRC-SPOOF from SiOL” in-interface=ether05-SiOL-uplink src-address=2001:67c:27e4::/48
add action=drop chain=forward comment=”Block SRC-SPOOF from Amis” in-interface=ether06-Amis-Uplink src-address=2001:67c:27e4::/48
add action=drop chain=forward comment=”Block SRC-SPOOF from T-2″ in-interface=ether07-T-2-uplink src-address=2001:67c:27e4::/48
add action=drop chain=forward comment=”Block SRC-SPOOF to SiOL” out-interface=ether05-SiOL-uplink src-address=!2001:67c:27e4::/48
add action=drop chain=forward comment=”Block SRC-SPOOF to Amis” out-interface=ether06-Amis-Uplink src-address=!2001:67c:27e4::/48
add action=drop chain=forward comment=”Block SRC-SPOOF to T-2″ out-interface=ether07-T-2-Uplink src-address=!2001:67c:27e4::/48

Za IPv4 naredimo isto, samo na /ip firewall filter in za naslove vnesemo naš IPv4 naslovni prostor.

Kaj ti filtri naredijo? Prvi trije preprečijo, da v naše omrežje iz Interneta pridejo paketi, ki imajo izvor v našem naslovnem prostoru, saj to pomeni da “spoofa” naše IP naslove nekje drugje in komunicira z drugimi našimi napravami – nekdo načrtuje nekaj slabega.

Naslednji trije filtri preprečijo, da bi slaba koda ali kdo iz našega omrežja namenoma spoofal tuje IP naslove in pošiljal promet z nepravilnimi izvornimi naslovi v Internet.

Tako preprosto je to, ja.

Če bi vsako omrežje na Internetu preprečevalo “source address spoofing”, DDoS napadov praktično ne bi bilo in Internet bi bil precej lepši.

Ali vi v vašem omrežu omogočate “source address spoofing” in s tem pomagate zlikovcem pri njihovih zlobnih namenih? Razmislite.

Za go6, Jan Žorž

Vaš IP naslov (ali ste na IPv6 ?):
3.21.12.88

No comments yet. Be the first.

Leave a reply

website