Penetrarea Retelelor (kali Linux)
1. Introducere
In timpul prezent in orice tehnologii și orice domenii fie IT, business, industrie si alte domenii utilizează schimb de date care au valoare sporită, toate aceste informații sunt transmise prin rețea, rețelele la rindul lor nu sunt perfecte și includ o mulțime de vulnerabilități, aceste vulnerabilitați pot fi folosite de un careva răufăcator, toate aceste vulnerabilitați pot fi excluse sau poate fi minimalizat riscul de atac asupra rețelei. In această teza am să prezint careva tipuri de atacuri și ce măsuri ar trebui să efectuam pentru a minimiza probabilitatea unui atac.
Scopul Lucrarii
Scopul studiului care a stat la baza elaborării lucrării de licență este de a stabili cele mai periculoase atacuri. Această abordare este necesară in prezent datorită rețelelor performante care pe lingă facilitățile are și o mulțime de puncte slabe. Studiul a avut ca obiectiv identificarea atacurilor celor mai des utilizate și identificarea măsurilor necesare.
Obiective
Protecția informației
Minimizarea probabilitații și impactului unui atac
Depistarea și analiza vulnerabilităților
Studierea măsurilor necesare pentru a preveni cele mai frecvente atacuri.
Despre Kali Linux
Kali Linux este un proiect open source, care este menținut și finanțat de ofensivă de securitate, un furnizor de informații de clasă mondială formare în domeniul securității și servicii de testare de penetrare. În plus față de Kali Linux , ofensiv Securitate susține, de asemenea,baza de date Exploit și cursul online gratuit , Metasploit Unleashed .
Kali Linux a fost lansat pe 13 martie 2013, a fost recontruit din sistemul BackTrack Linux, care aderă co mplet la standartele de dezvoltare Debian.Kali conține :
Mai mulr de 600 de instrumente de testare de penetrare, au fost excluse un număr mare de instrumente din versiunea BackTrack care nu au de lucru.
Este o veriune gratuită și va fi totdeauna.
Exista modelul de dezvoltare open source care este amplasat pe Git pentru a vedea dezvoltarea sistemului, oricine poate reconstrui pachetele de instrumente după placul său.
Kali aderă la sistemul de fișiere Ierarhia standard , care permite utilizatorilor de Linux pentru a localiza cu ușurință binare , fișiere de suport , biblioteci , etc.
Complet personalizabil
Nucleu personalizat, patch-uri pentru injectare. Ca testere de penetrare, echipa de dezvoltare de multe ori trebuie să facă evaluări fără fir.
Kali Linux este special adaptat la nevoile de profesioniști pentru testarea penetrării ,și , prin urmare, toată documentația presupune cunoștințe anterioare și familiaritate cu sistemul de operare Linux.
Obiectivele securitații informaționale:
Confidențialitatea, uneori numită secretizare, își propune să interzică accesul neautorizat al persoanelor la informația care nu le este destinată. Confidențialitatea reprezintă țelul suprem alsecurității calculatoarelor. Pentru asigurarea confidențialității trebuie știut care sunt informațiilecare trebuie protejate și cine trebuie sau cine nu trebuie să aibă acces la ele. Aceasta presupune săexiste mecanisme de protecție a informațiilor care sunt stocate în calculatoare și care sunttransferate în rețea între calculatoare. În Internet, confidențialitatea capătă noi dimensiuni sub forma unor măsuri de control al confidențialității.Țările dezvoltate, Satele Unite, Canada,Australia, Japonia etc., au reglementat prin lege controlul confidențialității.
Integritatea, uneori numită acuratețe, își propune ca datele stocate în calculator să nu poată fialterate sau să nu poată fi modificate decât de persoane autorizate. Prin alterarea datelor se înțelegeatât modificarea voit malițioasă, cât și distrugerea acestora. Dar datele pot fi alterate, sau chiar pierdute/distruse, nu numai ca urmare a unei acțiuni răuvoitoare, ci și ca urmare a unei erorihardware, erori software, erori umane sau a unei erori a sistemelor de securitate. În acest caz seimpune să existe un plan de recuperare și refacere a datelor(existența unei copii de siguranță)/
Disponibilitatea își propune ca datele stocate în calculatoare să poată să fie accesate de persoanele autorizate. Utilizatorii trebuie să aibă acces doar la datele care le sunt destinate. Se pot distinge aici două categorii de utilizatori, cu drepturi de acces diferite: administratorii de sistem și utilizatorii generali, excepție făcând sistemele de operare care echipează calculatoarele desktop.Orice utilizator general va putea să schimbe configurările de securitate ale calculatorului mergând până acolo încât să le anuleze.
Nerepudierea, termen recent apărut în literatura de specialitate, își propune să c destinatarului unui mesaj electronic faptul că acest mesaj este scris și trimis de persoana care pretinde că l-a trimis. În acest fel se asigură încrederea părților. Expeditorul nu poate să nege. Nerepudierea stă la baza semnăturilor digitale, asigurând autenticitatea acestora, în noua piață a comerțului electronic (E-Commerce).
Managmentul Securității informaționale
De la bun inceput, adică de la organizarea rețelei trebuie să utilizăm standartul internațional ISO 27005 care conține un set de obiective si mecanisme de control, care pot fi puse în aplicare, în conformitate cu orientările prevăzute în ISO 27001. Standardul stabilește liniile directoare și principiile generale pentru initierea, implementarea, menținerea și îmbunătățirea securității informațiilor de management în cadrul unei organizații. Standardul de asemenea are rolul de a oferi un ghid de dezvoltare a securității informațiilor din cadrul organizațiilor, prezintă practici eficiente de management al informațiilor și ajută la construirea încrederii în activități inter-organizatorice.
Fig.1 Domeniile securității informaționale ISO 27002
In fig. 1 sunt reprezentate cele 14 domenii care trebuie administrate cu acuratețe sporită pentru a minimiza riscurile atacurilor.
De exemplu:
Managementul riscurilor e primul pas în administrarea riscului și determină valoarea cantitativă și calitativă a riscului legat de o situație specifică sau o amenințare cunoscută
Clasificarea și controlul activelor (Administrarea Bunurilor) reprezintă un inventar potrivit unei scheme clasificate pentru bunurile informaționale
Politica de securitate este un document care tratează măsurile corective și comportamentul membrilor unei organizații și specifică cum vor fi accesate datele, ce date sunt accesibile și cui.
Controlul Accesului priveste restricțiile aplicate accesului direct la rețea, sisteme, aplicații și date.
Managementul incidentelor tratează cum anticipează și răspunde sistemul la breșele de securitate
Dezvoltarea și întreținerea sistemului definește aplicarea măsurilor de securitate în aplicații.
Despre atac
Ce este un atac
Un atac este orice tip de manevră ofensivă creată de persoane fizice sau organizații intregi care u ca țintă sisteme informatice, infrastructuri, rețele de calculatoare și dipozitive personale prin diverse acte rău intenționate, in majoritatea cazurilor provin de la o sursă anonimă care fie fură, modifică sau distruge o țintă. Acestea pot fi rezboiul cibernetic sau terorismul cibernetic in diferite contexte. Atacurile au devenit din ce in ce mai sofisticate și periculoase ca viermile Stuxnet care a demonstrat recent posibilitățile atacurilor.
Un atac poate fi activ sau pasiv, atacul activ incearca sa modifice resurse de sistem și nu afectează funcționarea lui, atacul pasiv incearcă să invețe sau să utilizeze informații din sistem dar nu afecteaza resursele de sistem. Atacurile pot fi săvârșite de un insder sau din afara organizației. Atacul din interior este ințiat de către o entitate care se află in interiorul perimetrului de securitate, adică o entitate care este autorizată sa acceseze resursele de sistem, dar le foloseștefără aprobarea entității care a eliberat autorizația. Un atac “din afară” este inițiat din afra permitrului, cu un utilizator neautorizat sau illegal al sistemului. In internet, potențialii atacatori din afara variază de la puși pe smecherii la infractori organizați și motivați.
+ – – – – – – – – – – – – + + – – – – + + – – – – – – – – – – -+
| Atacatorul: | | Contra- | | Resursa sistemului: |
| i.e., Acțiunele | | măsuri | | Ținta |
| +–––-+ | | | | +––––––+ |
| | Atacatorul |<==============>||<=========> | |
| | i.e., | Pasiv | | | | | Vulnerabilitate | |
| | A Threat |<=================>||<========> | |
| | Agent | sau atac | | | | +––-|||––-+ |
| +–––-+ active | | | | VVV |
| | | | | Consecințele
| amenințării
+ – – – – – – – – – – – – + + – – – – + + – – – – – – – – – – -+
Figura 2. Descrierea unui Atac
In figura 2 o resursă (atât fizic sau logic), numit un activ, poate avea una sau mai multe vulnerabilități care pot fi exploatate de către un agent de amenințare într-o acțiune de amenințare. Rezultatul poate compromite potențial confidențialitatea, integritatea sau disponibilitatea proprietăților de resurse a organizației și alte persoane implicate(clienti, furnizori). Atacul poate fi activ atunci când încearcă să-și modifice resurse de sistem și nu afectează funcționarea lor: de aceea compromite integritatea sau disponibilitatea. Un "atac pasiv" încearcă să învețe sau să utilizeze informații din sistem dar nu afectează resursele sistemului: așa compromite Confidențialitatea.
O amenințare este un potențial pentru încălcarea securității, care există atunci când există o împrejurare, capacitate, acțiune, sau eveniment care ar putea încălca securitatea și provoca daune. O amenințare este o posibil pericol care ar putea exploata o vulnerabilitate. O amenințare poate să fie "intenționat" (de exemplu, inteligent, un cracker individ sau o organizație criminală) sau "accidentale" (de exemplu, posibilitatea unei disfuncționalități a unui calculator).
O organizație trebuie să facă pași pentru a detecta, clasifica și de a gestiona incidentelor de securitate. Primul pas logic este de a crea un plan de răspuns la incidente și în cele din urmă o echipă de răspuns
În scopul de a detecta atacurile, un număr de măsuri de contracarare pot fi înființate la nivel de organizare, procedurale și tehnice. Echipa de răspuns in caz de urgență, audit de securitate și sistem de detectare a intruziunilor.
Tipurile de atac
Un atac este de obicei comisă de cineva cu intenții rele: atacuri cu pălării negre se încadrează în această categorie, în timp ce alte efectueaza teste de penetrare pe un sistem de informații organizație pentru a afla dacă toate controalele prevăzute sunt la locul lor.
Atacurile pot fi clasificate în funcție de originea lor: adică în cazul în care se efectuează folosind unul sau mai multe calculatoare: în ultimul caz este numit un atac distribuit. Botnet sunt utilizate pentru a conduce la atacurile distribuite.
Alte clasificări sunt în conformitate cu procedurile utilizate sau tipul de vulnerabilități exploatat: atacuri pot fi concentrat pe mecanisme de rețea sau caracteristici gazdă.
Unele atacuri sunt fizic: de exemplu, furtul sau deteriorarea calculatoarelor și a altor echipamente. Altele sunt încercări de a forța schimbări în logica utilizată de calculatoare sau protocoale de rețea, în scopul de a obține (de proiectant inițial) rezultatul, dar util pentru atacator. Software utilizat pentru pentru atacuri logice pe calculatoare se numește malware.
Pentru a efectua un atac de la distanță e nevoie sa realizăm trei etape:
Atacatorul se informează depre:
-administratorul rețelei
-sisteme de operare utilizate
-vulnerabilitățile existente
-topologia rețelei
-politica securității existente
Etapa mai este denumită ca atac de recunoaștere și are ca scop depistarea neautorizată a serviciilor și vulnerabilitățile sistemului țintă. Prin aceasta etapă se depistează porturile deschise, care servicii sunt active, ce versiuni de software se utilizează, pe ce sisteme de operare lucrează unitățile sistemului, in baza acestor informații un atacator este destul de informat pentru a pregăti un atac.
Cea mai mare valoare o are informația despre administratorul rețelei, in baza colectării acestei informație se va determina cind, cum și cit timp va avea nevoie administratorul să detecteze eventualul atac, atacatorul va putea efectua atacaurile in afara acestor perioade, utilizind parametrii care îi va asigura succesul.
Urmatoarea etapă constă in testare care adminte in mod prealabil crearea unei clone țintă și testarea asupra aceste clone, pentru a preveni reacțiile țintei. Efectuind acesta etapă se micșorează probabilitatea depistării atacului.
In etapa a treia se trece la acțiuni reale, adică executarea atacului supra rețelei. In cazul in care utilizăm atacul in intervale cind victima este cea mai vulnerabilă și atacul durează o perioada cit mai scurtă, atunci șansele spre suuces cresc considerabil.
Tehnici de securitate
Pentru crearea unei securități satisfăcătoare față de o rețea sunt utilizate diferite tehnici specific:
Protecția fizică a liniilor de transmisie și dipozitivile
Transportarea datelor printr-un mod securizat și anume prin utilizarea VPN-urilor
Criptarea datelor
Aspectele necesare in baza cărora se crează măsuri sunt:
Eliminarea setărilor implicite și configurarea dispozitivelor din rețea cum ar fi servere, routere și stații de lucru
Utilizarea unui generator de parole, utilizarea autentificării cu ajutorul a doi factori.
Criptarea trebuie executată prin cel mai inalt nivel
Utilizarea listelor de acces care filtrează in baza adreselor Mac și cu adrese statice(DHCP dezactivat)
Dacă se utilizează rețele wireless, trebuie dezactivată opțiunea de transmitere prin broadcast a identificatorului setului de servicii in așa fel incât prin crearea unei cerere de identificare rețelelor să fie ignorată de AP-ul respective.
Toate aceste principii descries trebuie effectuate cu ajutorul unor tehnici eficiente ce control al accesului logic la rețea și la servicii, aceste principia se referă la utilizatorii din interiorul rețelei și din exteriorul rețelei.
FIREWALL
Printr-un firewall ințelegem un zid de protecție care este foarte important pentru securitatea rețelelor. Firewall poate fi un dispozitiv sau o aplicație care monitorizează comunicațiile realizate dintre rețeaua internă cu cea externă, utilizind politici de securitate.
Unele sisteme de operare coțin opțiunea de activare a uni firewall in baza carei se va active reguli și constrîngeri asupra accesului pe diferite interfațe. Un firewall este compus minimum din două interfețe:
Publică (conexiune dintre firewall și rețeau publică)
Privată (interconectarea dintre firewall și rețeau privată)
Exista două tipuri de firewall:
Poartă de aplicații, toate conexiunele se realizează utilizând proxy(program de aplicații). Sesiunea deschisăin rețeau privată este creată de proxy, in urma căreia se crează o conexiune spre nodul de destinație prin care serverul proxy adresează cererile in rețeau externă.
Proxy utilizează resurse mari din procesor pentru că se basează pe particularitățile suitei TCP/IP, in cazul dat for fi admise acele protocoale pentru care sunt configurate aplicațiile proxy specifice, alte tip de protocoale vor fi excluse.
Filtrarea dinamică a pachetelor care mai este și mod de control al accesului in funcție de context.
Se citesc antetele pachetelor care sunt introduse de protocolul IP. Firewall-ul verifică toate pachetele și acordă dreptul de accest in dependență de de adresele sursei și destinație.
Acțiunele firewall-ului pot fi:
Acceptarea pachetelor
Respingerea pachetelor care incalca regulile de securitate.
Blocarea a accesului pachetelor
Firewall-ul utilizat cu router se efecetuează prin filtrarea dinamică a pachetelor controlul pe baza regulii care stabilește că:
orice pachet transmis din rețeaua internă către o destinație externă este transferat de firewall necondiționat, cu excepția cazurilor în care se impun constrângeri;
transferul oricărui pachet din rețeaua publică spre o destinație din rețeaua privată este blocat de firewall, cu excepția cazurilor în care se admite accesul acestora în mod explicit, prin configurarea adecvată a interfețelor publice referitor la accesul din exterior. Interfețele firewall-ului sunt deschise numai pe durata sesiunii inițiate de un utilizator cu drept de acces.
Firewall-ul poate fi configurat în vederea limitării accesului utilizatorilor din rețeaua internă în cea publică. Se poate controla accesul pe diferite porturi de protocol. Este indicată închiderea unor porturi neutilizate de utilizatorii proprii pentru a nu lăsa căi de acces eventualilor atacatori.
Mesajele generate prin ICMP pot fi transferate sau blocate de firewall în funcție de modul de configurare a acestuia. Pentru evenimentele semnificative care apar la nivelul firewall-ului se pot trimite mesaje de înstiințare către nodurile de destinație accesate.
Echipamentele de tip firewall admit diverse protocoale de aplicație: FTP, NETBIOS, GRE, OSPF, RSVP (ReSerVation Protocol), VDOnet's VDOLive, Microsoft's NetShow etc.
Firewall-ul protejează rețeaua privată față de atacurile externe de tip "inundare" cu pachete (flooding), cu pachete PING ilegale sau ICMP generate în număr excesiv, atacuri Smurf cu pachete având adresa IP din spațiul de adrese alocat rețelei private, de cele mai multe ori fiind chiar adresa de broadcast a acesteia, scanare a porturilor.
Firewall-ul permite controlul si monitorizarea accesului (Logging Facility) în rețeaua privată dar numai pentru sesiunile create pe baza protocolului Internet, nu si pentru alte suite de protocoale (Appletalk, DECnet, IPX/SPX).
Politica de securitate aplicată de firewall stabileste regulile pe baza cărora se admite sau se blochează transferul pachetelor între rețeaua privată si cea publică.
Un firewall devine activ numai după ce au fost configurate cel puțin o interfață publică si una privată si s-au stabilit regulile de acces la nivelul acestora. Traficul între două interfețe ale firewall-ului nesupuse politicii de securitate se desfăsoară normal, fără restricții.
Transferul pachetelor de la o interfață nesecurizată către una securizată este automat blocat. Firewall-ul controlează traficul de pachete pe baza adreselor fizice sau IP, a porturilor de aplicație si chiar a zilei sau orei la care se accesează rețeaua.
Politica de securitate se aplică pe baza listelor de acces stocate în routere sau în servere RADIUS (Remote Authentication Dial In User Service). Firewall-ul lucrează ca server de control al accesului (Network Access Server) care foloseste serviciile unui server RADIUS care gestionează baza de date cu informații despre utilizatorii rețelei (nume de utilizatori si parole), modul de configurare a rețelei (adrese IP, măsti de rețele si de subrețele etc), precum si despre sesiunile stabilite anterior, sub forma unui istoric al evenimentelor din rețea.
Firewall-ul este clientul RADIUS care adresează cererea de autentificare către serverele RADIUS, pentru accesarea listelor de acces. Acestea sunt fisiere de tip 'text' (.txt), codate ASCII, care includ liste de adrese IP sau MAC.
Sisteme de detecție a intrușilor
Sistemele de detecție a intrusilor (IDS – Intrusion Detection System) sunt o completare a activității unui firewall în procesul de securitate a unei rețele de comunicații si constau în soluții pasive de analiză, clasificare si raportare a evenimentelor de rețea nedorite.
Cele mai frecvente atacuri lansate din Internet asupra serverelor de rețea sunt de tip „refuz al serviciului” (DoS) corelate cu acțiuni de „inundare” a rețelei (flooding) cu un număr mare de pachete de diferite tipuri (ping. TCP syn s.a.). Dar se impune si limitarea atacurilor pasive de interceptare a pachetelor conținând informații cu caracter secret în scop de furt sau de falsificare a acestora.
Atacurile asupra rețelelor de comunicații pot fi lansate pe diferite căi, de exemplu prin serviciul de e-mail sau prin intermediul aplicațiilor p2p, si pot viza aplicații cu caracter critic precum cele de tranzacții financiar-bancare sau de comerț electronic pentru care pierderile sunt substanțiale si se exprimă în mari sume de bani.
De aceea, investițiile în soluțiile de securitate a comunicațiilor se dovedesc a fi necesare si eficiente ca raport preț-pierderi.
Sistemele IDS detectează atacurile asupra rețelei, alertează personalul de administrare si eventual declansează acțiuni de răspuns, cum ar fi plasarea în carantină a anumitor procese până la clarificarea situaȚiei. Bineînțeles că pot să existe si alarme false dar procedurile aplicate în primă fază nu vor face decât să întârzie anumite transmisii.
Soluțiile IDS monitorizează traficul, identifică evenimentele cu risc de securitate, le clasifică pe mai multe clase de risc si le raportează sistemului de securitate. Spre deosebire de un firewall care are un caracter activ, de permitere sau de blocare a pachetelor pe diferite criterii prevăzute în politica de securitate a reȚelelor, IDS-ul operează pasiv în rețea, analizează traficul, identifică tentativele de atac pe baza semnăturilor aplicațiilor si anomaliile de trafic, alertează serviciul de administrare pentru a recurge în timp util la contramăsuri dar nu blochează atacurile.
Problemele de securitate pot fi rezolvate manual doar în rețele de mici dimensiuni. În rețelele mari, cu zeci si sute de mii de noduri, soluționarea evenimentelor cu risc de securitate trebuie realizată în mod automat, prin soluții software adecvate care procesează în timp real informațiile referitoare la traficul neautorizat de pachete si care ia decizii de acțiune fără intervenția factorului uman de administrare. Apar în acest caz probleme de clasificare a evenimentelor într-un număr relativ redus de clase de risc pentru a putea observa atacurile distribuite asupra rețelei. Acestea pot fi tratate pe baza teoriei sistemelor fuzzy iar în procesele de decizie se pot folosi algoritmi optimi de procesare a informației.
Soluțiile IDS pot fi aplicate fie la nivel de rețea, pentru controlul accesului în rețea (NAC – Network Access Control), fie la nivel de calculator-gazdă (Host IDS).
Analiza securității rețelei
Analiza securității datelor într-o rețea presupune în primul rând identificarea cerințelor de funcționare pentru acea rețea, apoi identificarea tuturor amenințărilor posibile (împotriva cărora este necesară protecția). Această analiză constă în principal în trei sub-etape:
analiza vulnerabilităților – identificarea elementelor potențial slabe ale rețelei
evaluarea amenințărilor – determinarea problemelor care pot apărea
datorită elementelor slabe ale rețelei si modurile în care aceste
probleme interferă cu cerințele de funcționare
analiza riscurilor – posibilele consecințe pe care bresele de securitate le pot crea, gradul de admisibilitate a lor.
Următoarea etapă constă în definirea politicii de securitate, ceea ce înseamnă să se decidă:
care amenințări trebuie eliminate si care se pot tolera
care resurse trebuie protejate si la ce nivel
cu ce mijloace poate fi implementată securitatea
care este prețul (financiar, uman, social etc.) măsurilor de securitate
care poate fi acceptat.
Odată stabilite obiectivele politicii de securitate, următoarea etapă constă în selecția serviciilor de securitate – funcțiile individuale care sporesc securitatea rețelei. Fiecare serviciu poate fi implementat prin metode (mecanisme de securitate) variate pentru implementarea cărora este nevoie de asa-numitele funcții de gestiune a securității. Gestiunea securității într-o rețea constă în controlul si distribuția sigură a informațiilor către toate sistemele deschise ce compun rețeaua, în scopul utilizării serviciilor si mecanismelor de securitate si al raportării evenimentelor de securitate ce pot apărea către administratorii de rețea.
Atacuri
Atacul ARP Poisoning
ARP poisoning este cel mai des atca intilnit intr-o rețea. Fie că avem instalat in rețea un switch care este dispozitivul ce limitează posibilitățile atacatorului care folosește un pachet de sniffer pentru a intercepta informația in rețea. Cu ajutorul atacului ARP poisoning traficul poate fi ascultat chiar dacă este instalat un switch. Această atacă mai este cunoscută sub denumirea de Man-in-the-Middle, cu ajutorul acestui atac stațiile infectate din rețea vo ravea intrări eronate in tabelul ARP.
Ce reprezintă ARP
ARP este un protocol ce are ca scop permiterea fiecărui system din rețea sa-și construiască o tabelă de mapări intre aderesele fizice și adresele IP. Aceste mapări sunt denumite ARP cahce și tabela ARP.
Cind cineva dorește să transmit un pachet in rețea(aflat in aceeași rețea), primul lucru care se va efectua va fi verificarea tabelului ARP, in cazul in care nu este maparea dorită sistemul va utilize protocolul ARP și va transmite o cerere ARP in rețea. In cerere va fi inclusa adesa IP dorită. Toate sistemele vor citi acesată cerere și va verifica daca adresa IP coincide cu adresa sa, dacă conține această adresă atunci sistemul va transmite un răspuns care conține adresa fizică. Sursa care a transmis cererea va adăuga aceste date in tabelul ARP. Sunt două tipuri de inscriere a datelor in tabelul ARP: statice și dinamice, de obicei se folosește inregistrările dinamice, ceea ce inseamnă că informația se păstrează atit timp cit este utilizată insă acea statică va introduce manual legătura dinre adresa fizică și adresa IP.
Decsrierea scurtă a atacului
Acest atac redirecționează pachetele dintre orice stație dintr-o rețea locală și routerul de la iesșire prin stația raufacătorului. Atacul se realizează prin transmiterea pachetelor ARP cu informații falsificate.
Atacatorul (A) IP: 192.168.2.10 MAC: C4-B3-AB-D2-1C-2D
Prima victima (B) IP: 192.168.2.13 MAC: 04-C0-DE-02-11-0E
A doua victima (C) IP: 192.168.2.18 MAC: C4-C3-BE-12-1A-AE
Stația A va trimite două pachete ARP de tip răspuns fals: o dată pentru stația B în care se specifică că adresă MAC a stației C este C4-B3-AB-D2-1C-2D, și o dată pentru stația C, în care se specifică faptul că adresa MAC a stației B este tot C4-B3-AB-D2-1C-2D. Astfel, atunci când stația C dorește să transmită un pachet stației B, îl va transmite stației A. La fel, atunci când stația B dorește să transmită un pachet stației C, îl va transmite tot stației A. Pentru ca procesul să funcționeze, stația A va trebui să trimită pachetele primite stațiilor care sunt adresate. În plus, A trebuie să retrimită pachetele ARP false la intervale regulate. Aceasta pentru că intrările din tabela ARP sunt evacuate după un timp, caz în care stația va trimite un pachet ARP de interogare. Dacă stația interogată răspunde, intrarea din tabela ARP va actualiza șsi traficul nu va ajunge la A
Diagrama USE CASE
Figura 3. USE CASE-ARP Poisoning
In figura 3 sunt cazurile care include atacul ARP Poisoning care este efectuat cu instrumente din sistemul Kali Linux, pentru a intercepta taraficul e nevoie să scanăm rețeau, sa retranslăm porturile , de exemplu daca avem un site care utilizează protocolul HTTPS nu vom putea citi datele pentru că ele vor fi criptate, in așa caz soluția este retranslarea porturilor și anume din portul 8080 in portul 80. Pentru a ieși in rețea in forma unui router e nevoie să schimbăm adresa MAC.
Diagrama secvențială
Figura 4. Diagrama de secvență pentru atacul ARP Poisoning
In Figura 4 este reprezentată pașii executați pentru pentru a intercepta traficul de pachete dintr-o rețea comună. Toate datele trec prin atacator apoi ajung la router, dupa care routerul transmite datele spre atacator și atacatorul le transmite catre ținta, ținta ca un simplu utilizator a rețelei nici nu depistează careva modificări , totul lucrează bine.
Figura 5. Inlocuire din HTTPS in HTTP
In cazul in care se utilizează protocolul HTTPS toate datele sunt criptatae, in așa caz atacatorul nu va putea vizualiza informația, de exmplu cimpurile username și password vor fi criptate, pentru a decripta informația e nevoie de foarte mult timp sau chiar poate fi imposibilă decriptarea, cea mai simplă și utilă soluție este retranslarea protocoalelor care este descrisă in figura 5, utilizand instrumente din sistemul kali Linux putem inlocui protocoalele in HTTP.
SQL Injection
In prezent toate aplicațiile web iși păstrează toate datele in bază de date, cind un client solicită careva date se generează cu ajutorul aplicațiilor sau a scripturilor o cerere la baza de date. In majoritatea cazurilor la generarea cererii se folosește limbajul SQL. Prin SQL injection ințelegem o vulnerabilitate des intilnită, in cazul in care există aceasta vulnerabilitate există riscul ca atacatorul sa fure datele private.
Atacul este bazat pe aplicațiile care se utilizează cu ajutorul sistemul de gestiune a bazelor de date MySQL sau MS SQL server pentru ca aceste sisteme sunt cele mai des intilnite și probabilitatea ca atacul va avea succes este destul de mare.
Identificarea vulnerabilităților
Dacă exista o pagina web care este configurată in așa fel incit in cazul apariției unei erori de tip SQL, browserul va afișa o eroare și posibil că va afișa și o parte din interogare. In cazul dat pentru atacator nu va fi o problema să introducă un cod SQL malițios. Dca dorim sa determinam dacă un parametru este vulnerabil introducem un parametru ca de exmplu GET id=’xxx’ in cazul in care pe pagină se va returna fraze cum ar fi există eroare,SQL syntax sau MySQL atunci vom fi siguri că parametru este vulnerabil. Pot fi și cazuri cind parametrii sunt ascunși, in acest caz la fel pentru atacator nu e o problem să injecteze un cod malițios, de exemplu http://www.test.com/inj.asp?id=xxx';+drop+table+users in urma acestui cod se va șterge tabelul users din baza de date. Din mesajele returnate de catre server putem depista ce tip de bază de date se utilizează.
Metode de atac
De exemplu atacatorul a găsit o vulnerabilitate, pentru a putea utiliza atacatorul trebuie să cunoască cum se creeze și ce tip de cerere ar trebui să creeze, cele mai de utilizate sunt:
SELECT
INSERT
UPDATE
DELETE
Pentru adetermina care anume trebuie de utilizat trebuie de ințeles logica și semantica vulnerabilității,dacă la returnarea mesaujul există un identificator anumit atunci poate fi atacul de tipul SELECT, daca scriptul este predestinat pentru adaaugare atunci ar trebui de utilizat INSERT, in zaul in care scriptul schimba ceva in informație atunci trebuie de utilizat UPDATE, dacă are loc distrugerea informașiei sau anulare atunci am putea incerca utilizarea atacului DELETE.
SQLmap
SQLmap este un instrument pentru teste de penetrare a bazei de date, acest intrument detectează și exploatează defectelor SQL intr-un mod automat. Instrumentul este dotat cu un motor puternic de căutare a vulnerabilităților din toate punctele de vedere.
Acest instrument:
Are suport complet pentru MySQL,ORacle,PostgreSQL,Microsoft SQL Server și alte sistem de gestionare a bazelor de date.
este dotat cu șase tehnici de injectare SQL: pe bază de eroare, in baza interogării UNION și altele.
conține sprijin pentru conectare directă fără a trece printr-o injecție SQL, utilizind credențiale, adresa IP, port și numele bazei de date.
recunoaște automat formatele de hash parole.
enumeră utilizatorii, hash parole, privilegii,tabele și coloane
poate căuta baze de date specifice, tabelele specifice in toate bazele de date.
Figura 6. Diagrama USE CASE pentru posibilitațile instrumetului sqlmap
Diagrama de secvență
Figura 7. Extragerea paroleleor din baza de date
In diagrama de mai sunt evidențiați pașii parcurși pentru a extrage parolele dintr-o bază de date, poate apărea o problemă și anume parolele pot fi criptate, insă pentru decpriptarea lor există alte utilități in dependență de tehnologiile utilizate la criptare.
Metode de apărare
Pentru a exclude vulnerabilitățile injectării interogărilor malițioase trebuie de prelucrat infromația care vine de la utilizatori pentru urmatoarele simboluri:
Ghilimele(,“,”). Prin termediul or se efectuează cel mai des atacurile.
Simbolurile care se utilizează pentru imparțirea instrucțiunilor și anume (;).
Verificarea datelor și la alte simboluri cum ar fi ( _, *, %).
Dacă există date numerice primite de la utilizator ele trebuie aduse la tipul numeric
In cazul in care utilizatorul transmite un șir de caractere inainte de a le introducere in interogare ele trebuie formate ca expresii regulate
Copyright Notice
© Licențiada.org respectă drepturile de proprietate intelectuală și așteaptă ca toți utilizatorii să facă același lucru. Dacă consideri că un conținut de pe site încalcă drepturile tale de autor, te rugăm să trimiți o notificare DMCA.
Acest articol: Penetrarea Retelelor (kali Linux) (ID: 150104)
Dacă considerați că acest conținut vă încalcă drepturile de autor, vă rugăm să depuneți o cerere pe pagina noastră Copyright Takedown.
