Tekniset UKK. Man-in-the-middle -hyökkäysten havaitseminen (mies keskellä, MitM-hyökkäykset) Mikä on mies keskellä

Kotiin / Jäätyy

Tässä artikkelissa yritämme ymmärtää man-in-the-middle-hyökkäysten teoriaa ja joitain käytännön kohtia, jotka auttavat estämään tämäntyyppisiä hyökkäyksiä. Tämä auttaa meitä ymmärtämään riskin, jonka tällaiset tunkeutumiset aiheuttavat yksityisyyteemme, koska MitM-hyökkäykset antavat meille mahdollisuuden tunkeutua viestintään ja salakuunnella keskustelujamme.

Ymmärtää kuinka Internet toimii

Man-in-the-middle -hyökkäyksen periaatteen ymmärtämiseksi kannattaa ensin ymmärtää, miten Internet itse toimii. Tärkeimmät vuorovaikutuskohdat: asiakkaat, reitittimet, palvelimet. Yleisin viestintäprotokolla asiakkaan ja palvelimen välillä on HTTP (Hypertext Transfer Protocol) -protokolla. Internetissä surffaaminen selaimella, sähköpostilla, pikaviestinnällä - kaikki tämä tapahtuu HTTP:n kautta.

Kun kirjoitat selaimen osoiteriville, asiakas (sinä) lähettää palvelimelle pyynnön näyttää Web-sivu. Paketti (HTTP GET-pyyntö) välitetään useiden reitittimien kautta palvelimelle. Palvelin vastaa sitten verkkosivulla, joka lähetetään asiakkaalle ja näytetään sen näytöllä. HTTP-viestit on lähetettävä osoitteeseen turvatilassa luottamuksellisuuden ja nimettömyyden varmistamiseksi.

Kuva 1. Asiakas-palvelin vuorovaikutus

Viestintäprotokollan turvaaminen

Suojatulla viestintäprotokollalla on oltava jokainen seuraavista ominaisuuksista:

  1. Yksityisyys- Vain tarkoitettu vastaanottaja voi lukea viestin.
  2. Aitous- vuorovaikutuksessa olevien osapuolten henkilöllisyys on todistettu.
  3. Rehellisyys- vahvistus siitä, että viestiä ei ole muutettu siirron aikana.

Jos jotakin näistä säännöistä ei noudateta, koko protokolla vaarantuu.

Man-in-the-middle -hyökkäys HTTP-protokollan kautta

Hyökkääjä voi helposti toteuttaa mies-keskellä-hyökkäyksen käyttämällä ARP-huijaustekniikkaa. Kuka tahansa sinun Wi-Fi-verkot voi lähettää sinulle väärennetyn ARP-paketin, mikä saa sinut tietämättäsi lähettämään kaiken liikenteesi hyökkääjän kautta reitittimen sijaan.

Tämän jälkeen hyökkääjä hallitsee täysin liikennettä ja voi valvoa molempiin suuntiin lähetettyjä pyyntöjä.

Kuva 2. Mies keskellä -hyökkäysmalli


Tällaisten hyökkäysten estämiseksi HTTP-protokollasta luotiin suojattu versio. Transport Layer Security (TLS) ja sen edeltäjä Secure Socket Layer (SSL) ovat salausprotokollia, jotka tarjoavat suojan tiedonsiirrolle verkon kautta. Siksi suojattua protokollaa kutsutaan HTTPS:ksi. Näet suojatun protokollan toiminnan kirjoittamalla selaimen osoiteriville (huomaa S-kirjain https:ssä).

Mies-in-the-Middle Attack on huonosti toteutettu SSL

Nykyaikainen SSL käyttää hyvää salausalgoritmia, mutta sillä ei ole väliä, jos sitä ei ole toteutettu oikein. Jos hakkeri voi siepata pyynnön, hän voi muokata sitä poistamalla "S":n pyydetystä URL-osoitteesta ohittaen siten SSL:n.

Tällainen sieppaus ja pyynnön muuttaminen voidaan havaita. Jos esimerkiksi pyydät https://login.yahoo.com/ ja vastaus on http://login.yahoo.com/ , tämän pitäisi herättää epäilyksiä. Kirjoitushetkellä tämä hyökkäys todella toimii palvelussa sähköposti Yahoo.

Kuva 3. Pyydä sieppausta ja muokkausta


Tällaisen hyökkäyksen estämiseksi palvelimet voivat ottaa käyttöön HTTP Strict Transport Security (HSTS), mekanismin, joka mahdollistaa pakotetun suojatun yhteyden HTTPS-protokollan kautta. Tässä tapauksessa, jos hyökkääjä muuttaa pyyntöä poistamalla S-kirjaimen URL-osoitteesta, palvelin edelleen ohjaa käyttäjän 302-uudelleenohjauksella sivulle, jolla on suojattu protokolla.

Kuva 4. HSTS:n toimintakaavio


Tämä tapa toteuttaa SSL on alttiina toisen tyyppisille hyökkäyksille - hyökkääjä luo SSL-yhteyden palvelimeen, mutta käyttää erilaisia ​​temppuja pakottaakseen käyttäjän käyttämään HTTP:tä.

Kuva 5. HSTS-hyökkäyskuvio


Tällaisten hyökkäysten estämiseksi nykyaikaiset selaimet kuten Chrome, Firefox ja Tor valvovat sivustoja HSTS:n avulla ja pakottavat yhteyden niihin asiakaspuolelta SSL:n kautta. Tässä tapauksessa man-in-the-middle-hyökkäyksen suorittavan hyökkääjän on luotava SSL-yhteys uhriin.

Kuva 6. Hyökkäysmalli, jossa hyökkääjä muodostaa SSL-yhteyden uhriin


Voidakseen tarjota SLL-yhteyden käyttäjälle, hyökkääjän on osattava toimia palvelimena. Ymmärretään SSL:n tekniset näkökohdat.

SSL:n ymmärtäminen

Hakkerin näkökulmasta minkä tahansa viestintäprotokollan vaarantaminen tarkoittaa, että yllä lueteltujen komponenttien (yksityisyys, aitous ja eheys) joukosta löydetään heikko lenkki.

SSL käyttää epäsymmetristä salausalgoritmia. Symmetrisen salauksen ongelmana on, että samaa avainta käytetään tietojen salaamiseen ja salauksen purkamiseen. Tämä lähestymistapa ei sovellu Internet-protokolliin, koska hyökkääjä voi jäljittää tämän avaimen.

Epäsymmetrinen salaus sisältää 2 avainta kummallekin puolelle: julkinen avain, jota käytetään salaukseen, ja yksityinen avain, jota käytetään tietojen salauksen purkamiseen.

Kuva 7. Julkiset ja yksityiset avaimet toimivat

Kuinka SSL tarjoaa kolme suojattua viestintää varten tarvittavaa ominaisuutta?

  1. Koska tietojen salaamiseen käytetään epäsymmetristä kryptografiaa, SSL tarjoaa yksityisen yhteyden. Tämä salaus ei ole niin helppo murtaa ja jäädä huomaamatta.
  2. Palvelin vahvistaa laillisuuden lähettämällä asiakkaalle varmenteen myöntäjän - luotettavan kolmannen osapuolen - myöntämän SSL-sertifikaatin.

Jos hyökkääjä jollakin tavalla onnistuu saamaan varmenteen, hän voi avata oven välimieshyökkäykselle. Siten se luo 2 yhteyttä - palvelimeen ja uhrin kanssa. Palvelin tässä tapauksessa ajattelee, että hyökkääjä on tavallinen asiakas, eikä uhri voi tunnistaa hyökkääjää, koska hän toimitti varmenteen, joka todistaa olevansa palvelin.

Viestisi saapuvat ja salataan, mutta ne on ketjutettu kyberrikollisen tietokoneen läpi, jossa hän hallitsee täysin.

Kuva 8. Hyökkäysmalli, jos hyökkääjällä on varmenne


Varmennetta ei tarvitse väärentää, jos hyökkääjällä on mahdollisuus murtautua uhrin selaimeen. Tässä tapauksessa hän voi lisätä itse allekirjoitetun varmenteen, johon luotetaan oletuksena. Näin tehdään useimmat mies-in-the-middle-hyökkäykset. Monimutkaisemmissa tapauksissa hakkerin on valittava eri reitti - väärennettävä varmenne.

Varmenteen myöntäjän ongelmat

Palvelimen lähettämän varmenteen on myöntänyt ja allekirjoittanut varmenneviranomainen. Jokaisella selaimella on luettelo luotetuista varmentajista, ja voit lisätä tai poistaa niitä. Ongelmana on, että jos päätät poistaa suuret viranomaiset, et voi vierailla sivustoilla, jotka käyttävät kyseisten viranomaisten allekirjoittamia varmenteita.

Varmenteet ja varmenteen myöntäjät ovat aina olleet HTTPS-yhteyden heikoin lenkki. Vaikka kaikki olisi toteutettu oikein ja jokaisella varmenneviranomaisella on vankka auktoriteetti, on silti vaikea tyytyä siihen, että joudut luottamaan moniin kolmansiin osapuoliin.

Nykyään yli 650 organisaatiota pystyy myöntämään varmenteita. Jos hyökkääjä hakkeroi minkä tahansa niistä, hän saisi haluamansa todistukset.

Jopa silloin, kun varmenneviranomaisia ​​oli vain yksi, VeriSign, oli ongelma - ihmiset, joiden piti estää man-in-the-middle-hyökkäykset, myivät sieppauspalveluita.

Myös monet varmenteet syntyivät varmenneviranomaisten hakkeroinnin vuoksi. Erilaisia ​​tekniikoita ja temppuja on käytetty huijaamaan kohteena oleva käyttäjä luottamaan petollisiin varmenteisiin.

Forensics

Koska hyökkääjä lähettää väärennettyjä ARP-paketteja, hyökkääjän IP-osoitetta ei voida nähdä. Sen sijaan sinun on kiinnitettävä huomiota MAC-osoitteeseen, joka on erityinen verkon jokaiselle laitteelle. Jos tiedät reitittimesi MAC-osoitteen, voit verrata sitä oletusyhdyskäytävän MAC-osoitteeseen selvittääksesi, onko se todella reitittimesi vai hyökkääjä.

Esimerkiksi Windows-käyttöjärjestelmässä voit käyttää ipconfig-komentoa komentorivi(CMD) nähdäksesi oletusyhdyskäytäväsi IP-osoitteesi (viimeinen rivi):

Kuva 9. ipconfig-komennon käyttäminen


Käytä sitten arp –a -komentoa saadaksesi selville tämän yhdyskäytävän MAC-osoitteen:

Kuva 10. Arp –a -komennon käyttö


Mutta on toinenkin tapa huomata hyökkäys - jos tarkkailit verkon toimintaa sen alkaessa ja katsot ARP-paketteja. Voit esimerkiksi käyttää Wiresharkia tähän tarkoitukseen, tämä ohjelma ilmoittaa sinulle, jos oletusyhdyskäytävän MAC-osoite on muuttunut.

Huomautus: Jos hyökkääjä huijaa MAC-osoitteita oikein, hänen jäljittämisestä tulee suuri ongelma.

Johtopäätös

SSL on protokolla, joka pakottaa hyökkääjän tekemään paljon työtä hyökkäyksen suorittamiseksi. Mutta se ei suojaa sinua valtion tukemilta hyökkäyksiltä tai ammattitaitoisilta hakkerointiorganisaatioilta.

Käyttäjän tehtävänä on suojata selainta ja tietokonetta estääkseen väärennetyn varmenteen lisäämisen (erittäin yleinen tekniikka). Myös listaan ​​kannattaa kiinnittää huomiota luotettavia varmenteita ja poista ne, joihin et luota.

Man-in-the-middle -hyökkäys on yleisnimi erilaisille tekniikoille, joilla pyritään saamaan liikennettä välittäjänä. Näiden tekniikoiden laajan valikoiman vuoksi on ongelmallista toteuttaa yksi ainoa työkalu näiden hyökkäysten havaitsemiseen, joka toimisi kaikissa mahdollisissa tilanteissa. Esimerkiksi mies-in-the-middle-hyökkäyksessä paikallisverkkoa vastaan ​​käytetään yleensä ARP-huijausta (poisoning). Ja monet keskimmäisen hyökkäyksen havaitsemistyökalut valvovat Ethernet-osoiteparien muutoksia/tai raportoivat epäilyttävästä ARP-toiminnasta seuraamalla passiivisesti ARP-pyyntöjä/vastauksia. Mutta jos tätä hyökkäystä käytetään haitallisesti määritetyssä välityspalvelimessa, VPN:ssä tai muissa vaihtoehdoissa, jotka eivät käytä ARP-myrkytyksiä, tällaiset työkalut ovat avuttomia.

Tämän osion tarkoituksena on tarkastella joitain tekniikoita välimieshyökkäysten havaitsemiseksi sekä työkaluja, jotka on suunniteltu määrittämään, oletko MitM-hyökkäyksen kohteena. Erilaisten menetelmien ja toteutusskenaarioiden vuoksi 100-prosenttista havaitsemista ei voida taata.

1. Liikenteen muutoksen havaitseminen

Kuten jo mainittiin, mies-in-the-middle-hyökkäykset eivät aina käytä ARP-huijausta. Siksi, vaikka aktiivisuuden havaitseminen ARP-tasolla on suosituin tunnistusmenetelmä, enemmän yleismaailmallisella tavalla on liikenteen muutosten havaitseminen. Mitmcanary-ohjelma voi auttaa meitä tässä.

Ohjelman toimintaperiaate on, että se tekee "ohjaus"-pyyntöjä ja tallentaa vastaanotetut vastaukset. Sen jälkeen se toistaa samat pyynnöt tietyin väliajoin ja vertaa vastaanottamiaan vastauksia. Ohjelma on varsin älykäs, ja väärien positiivisten tulosten välttämiseksi se tunnistaa vastauksissa dynaamiset elementit ja käsittelee ne oikein. Heti kun ohjelma on havainnut jälkiä MitM-hyökkäystyökalujen toiminnasta, se raportoi tästä.

Esimerkkejä siitä, kuinka jotkin työkalut voivat "periä":

  • MITMf muuttaa oletuksena kaikki HTTPS-URL-osoitteet HTML-koodissa HTTP:ksi. Havaittu vertaamalla HTTP-sisältöä.
  • Zarp + MITMProxy, MITMProxyssa on toiminto, jonka avulla voit tyhjentää HTTP-pakkauksen, tätä käytetään siirretyn liikenteen läpinäkyvyyteen, tämä yhdistelmä havaitaan aiemmin olemassa olevan pakkauksen katoamisesta
  • Vastaaja, joka tunnistetaan äkillisistä muutoksista mDNS-vasteiden muunnoksessa: odottamaton vaste; vastaus on sisäinen, mutta ulkoista odotetaan; vastaus on eri kuin odotettu IP
  • MITMCanary vs MITMf:

  • MITMCanary vs Responder:

  • MITMCanary vs Zarp + MITMProxy:

Sudo pip asennus Cython sudo apt-get install python-kivy python-dbus sudo pip asennus plyer uuid urlopen analyysipyyntö simplejson datetime git klooni https://github.com/CylanceSPEAR/mitmcanary.git cd mitmcanary/

Kuten jo mainittiin, mitmcanaryn on aloitettava työskentely ohjauspyyntöjen kanssa. Voit tehdä tämän siirtymällä hakemistoon

CD-palvelu/

Ja suorita tiedosto setup_test_persistence.py:

Python2 setup_test_persistence.py

Tämä kestää jonkin aikaa - odota sen päättymistä. Virheilmoituksia ei pitäisi olla (jos näin on, sinulta puuttuu joitain riippuvuuksia).

Tulos on jotain tämän kaltaista:

Mial@HackWare:~/bin/mitmcanary/service$ python2 setup_test_persistence.py Vanhempi kokoonpanoversio havaittu (0 14 sijaan) Määrityksen päivitys käynnissä. Tyhjennystuki laukaistu. Analysoidaan... Puhdistus valmis!

Tallenna sisäänkirjautuminen /home/mial/.kivy/logs/kivy_16-11-01_0.txt v1.9.1 v2.7.12+ (oletus, 1.9.2016, 20:27:38)

Kun tämä prosessi on valmis, suorita samassa hakemistossa (tämä käynnistää taustaprosessin):

Python2 main.py

Avaa sen jälkeen uusi pääteikkuna ja siirry loppuhakemistoon mitmcanarylla. Hakemistoni on bin/mitmcanary/, joten kirjoitan sisään

Cd bin/mitmcanary/

Kun tämä prosessi on valmis, suorita samassa hakemistossa (tämä käynnistää taustaprosessin):

ja tee siellä:

Ensimmäinen ikkuna näyttää jotain tällaista: Mial@HackWare:~/bin/mitmcanary/service$ python2 main.py Tallenna sisäänkirjautuminen /home/mial/.kivy/logs/kivy_16-11-01_1.txt v1.9.1 v2.7.12+ (oletus, 1.9.2016, 20:27:38) käyttäen

socket-kuunteluun Tuiolle 127.0.0.1:3000 Nukkuu 60 sekuntia Nukkuu 60 sekuntia Nukkuu 60 sekuntia Nukkumaan 60 sekuntia Nukkumaan 60 sekuntia Nukkumaan 60 sekuntia

Ne. Ohjelma tekee ohjauspyyntöjä kerran minuutissa ja etsii merkkejä mies-in-the-middle-hyökkäyksestä.

Toinen ikkuna sisältää myös tulosteen + tumma ikkuna avautuu ohjelman kirjoittajat kutsuvat tätä ikkunaa "graafiseksi käyttöliittymäksi":

Voit odottaa hetken ja surffata Internetissä varmistaaksesi, ettei ohjelma anna vääriä varoituksia. Yritetään klassinen ohjelma

ettercap. Aloitan tavallisen MitM-hyökkäyksen ARP-huijauksella. mitmcanary ei reagoi etsaukseen itse. Mitmcanary-työkalu luo liikenteen itse, eli käyttäjän toimia ei tarvita. Jonkin ajan kuluttua näyttöön tulee yksi varoitus, jota ei vahvisteta myöhemmissä tarkastuksissa. Mutta samanlainen varoitus ilmestyy muutaman minuutin kuluttua. Ilman lisäanalyysiä minun on vaikea sanoa, onko tämä esimerkki- hyvin samanlainen kuin tämä. On täysin mahdollista, että tämä varoitus johtuu viestintähäiriöstä, joka johtuu liikenteen tarpeesta kulkea lisäreittejä tai huonolaatuisen Internet-yhteyteni erityispiirteistä.

Koska tulos ei ole ilmeinen (todennäköisemmin "ei" kuin "kyllä"), kokeillaan Bettercap-ohjelmaa, jossa on useita moduuleja. Minulla ei ole epäilystäkään siitä, kun käytän erilaisia ​​Ettercap- ja/tai laajennuksia lisäohjelmia toiminnallisuuden laajentamiseksi "sytysimme" myös mitmcanarylle.

Kokeen puhtauden vuoksi käynnistän laitteiston uudelleen, käytän mitmcanarya hyökkäävässä koneessa ja Bettercap hyökkäävässä koneessa. Tällöin ei tarvitse tehdä uudelleen ohjauspyyntöjä hyökkäyksen kohteena olevalle koneelle - ne tallennetaan tiedostoon ohjelman mukana olevan hakemiston sisällä. Ne. Riittää, kun käynnistät palvelun ja graafisen käyttöliittymän.

Ja hyökkäävässä koneessa käynnistämme Bettercapin jäsentimien ollessa käytössä:

Sudo bettercap -X

Näkyviin tulee yksittäisiä varoituksia, jotka näyttävät myös enemmän vääriltä positiivisilta.

Mutta suorita tämä komento:

Sudo bettercap -X --välityspalvelin

Hyökkääjä kone soittaa suuri määrä varoitukset mahdollisesta mies keskellä -hyökkäyksestä:

Joten mitä tehokkaampi man-in-the-middle -hyökkäystyökalu on, sitä enemmän se jättää liikenteeseen. Mitmcanaryn käytännön käyttö edellyttää, että seuraavat ehdot täyttyvät:

  • tee ensimmäiset pyynnöt luotetussa verkossa, kun olet varma, ettei liikenteen välittämisessä ole välittäjää;
  • muokkaa resursseja, joille vahvistuspyyntöjä tehdään, koska ammattimainen hyökkääjä voi lisätä oletusresursseja poikkeuksiin, mikä tekee hänestä näkymätön tälle työkalulle.

2. ARP-huijauksen (ARP-välimuistimyrkytys) havaitseminen

Hyvin usein välimieshyökkäys paikallisverkkoon alkaa ARP-myrkytyksellä. Tästä syystä monet MitM-hyökkäysten havaitsemiseen suunnitellut työkalut perustuvat ARP-välimuistin muutosten seurantamekanismiin, joka määrittää vastaavuuden Ethernet- (MAC-osoitteet) ja IP-osoitteiden välillä.

Esimerkkinä tällaisista ohjelmista voidaan muistaa arpwatch, arpalert ja suuri määrä uusia ohjelmia. ArpON-ohjelma ei ainoastaan ​​valvo ARP-välimuistin muutoksia, vaan myös suojaa sitä niiltä.

Suoritetaan esimerkiksi arpwatch debug-tilassa ilman, että luodaan haarukoita taustalle ja lähetettäisiin viestejä postitse. Sen sijaan viestit lähetetään stderr-osoitteeseen (normaali virhetuloste).

Sudo /usr/sbin/arpwatch -d

Käynnistetään Ettercap hyökkäävälle koneelle ja aloitetaan ARP-huijaus. Hyökkätyssä koneessa havaitsemme:

Arpwatch-ohjelma auttaa sinua saamaan nopeasti tiedon uusista laitteista, jotka on liitetty laitteeseesi paikallinen verkko, sekä muutokset ARP-välimuistiin.

Toinen työkalu ARP-huijauksen havaitsemiseen reaaliajassa on Ettercap-liitännäinen arp_cop. Käynnistä Ettercap hyökkäyksen kohteena olevalla koneella seuraavasti:

Sudo ettercap -TQP arp_cop ///

Ja hyökkääjästä aloitamme ARP-myrkytyksen. Varoitukset alkavat heti näkyä hyökättyyn koneeseen:

3. DNS-huijauksen havaitseminen

DNS-huijaus tarkoittaa, että sinun ja määränpääsi välillä on välittäjä, joka voi muokata liikennettäsi. Kuinka voit havaita, että DNS-tietueita on väärennetty? Helpoin tapa tehdä tämä on verrata vastauksia luotettavalta nimipalvelimelta. Mutta pyyntöösi lähetetyn vastauksen merkinnät voidaan myös korvata...

Ne. sinun on tarkistettava joko salatun kanavan kautta (esimerkiksi Torin kautta) tai käytä epätyypillisiä asetuksia (toinen portti, TCP UDP:n sijaan). Suunnilleen tähän on XiaoxiaoPun sans-ohjelma suunniteltu (ainakin minun käsitykseni mukaan). Pystyin käyttämään tätä ohjelmaa DNS-pyyntöjen uudelleenohjaamiseen Torin kautta ja ei-standardiasetusten kautta minun DNS-palvelin. En kuitenkaan saanut häntä näyttämään minulle DNS-vastausten huijausta koskevia viestejä. Ilman tätä ohjelman merkitys menetetään.

Lisää arvoisia vaihtoehtoja En löytänyt sitä.

Periaatteessa, koska DNS-huijaukset valvovat yleensä vain porttia 53 ja vain UDP-protokollaa, jopa manuaalisesti riittää yksinkertaisesti DNS-huijauksen tosiasian tarkistaminen, vaikka tämä vaatii oman DNS-palvelimen, jossa on epätyypillinen kokoonpano. Esimerkiksi hyökkäävälle koneelle loin tiedoston dns.conf seuraavalla sisällöllä:

Paikallinen mi-al.ru

Ne. kun pyydetään DNS-tietuetta mi-al.ru-verkkosivustolle, hyökkääjän koneen IP-osoite lähetetään todellisen IP-osoitteen sijaan.

Käyn hyökkäyskoneen päällä:

Sudo bettercap --dns dns.conf

Ja hyökätylle teen kaksi tarkistusta:

Dig mi-al.ru # ja dig mi-al.ru -p 4560 @185.117.153.79

Tulokset:

Mial@HackWare:~$ dig mi-al.ru ;<<>> DiG 9.10.3-P4-Debian<<>> mi-al.ru ;; yleiset valinnat: +cmd ;; Sain vastauksen: ;; ->> OTSIKKO<<- opcode: QUERY, status: NOERROR, id: 51993 ;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0 ;; WARNING: recursion requested but not available ;; QUESTION SECTION: ;mi-al.ru. IN A ;; ANSWER SECTION: mi-al.ru. 86400 IN A 192.168.1.48 ;; Query time: 2 msec ;; SERVER: 8.8.8.8#53(8.8.8.8) ;; WHEN: Wed Nov 02 09:25:20 MSK 2016 ;; MSG SIZE rcvd: 42 mial@HackWare:~$ dig mi-al.ru -p 4560 @185.117.153.79 ; <<>> DiG 9.10.3-P4-Debian<<>> mi-al.ru -p 4560 @185.117.153.79 ;; yleiset valinnat: +cmd ;; Sain vastauksen: ;; ->> OTSIKKO<<- opcode: QUERY, status: NOERROR, id: 401 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 512 ;; QUESTION SECTION: ;mi-al.ru. IN A ;; ANSWER SECTION: mi-al.ru. 3799 IN A 185.26.122.50 ;; Query time: 304 msec ;; SERVER: 185.117.153.79#4560(185.117.153.79) ;; WHEN: Wed Nov 02 09:25:27 MSK 2016 ;; MSG SIZE rcvd: 53

Voidaan nähdä, että "tavalliseen" DNS-pyyntöön lähetettiin paikallinen IP 192.168.1.48 ja kun DNS-pyyntöä epätyypillisestä portista lähetettiin oikea palvelimen IP.

Jos palvelin on määritetty käyttämään TCP:tä (UDP:n sijaan), komento näyttäisi tältä:

Dig mi-al.ru -p 4560 +tcp @185.117.153.79

Selvästi puuttuu työkalu, joka itse valvoisi DNS-vastauksia liikenteessä, tarkistaisi ne uudelleen vaihtoehtoisen lähteen suhteen ja antaisi hälytyksen huijaustapauksissa.

Voit välttää oman etä-DNS:n perustamisen tekemällä nimipalvelinkyselyjä Torin kautta. Koska kaikki Tor-liikenne on salattua, tällä tavalla saadut DNS-vastaukset ovat välittäjän kykyjen ulkopuolella. Jos Toria ei ole vielä asennettu, asenna se.

Sudo apt-get install tor

Sudo pacman -S tor

Aloita palvelu:

Sudo systemctl start tor

Jos tarvitset sitä, lisää tämä palvelu käynnistykseen:

Sudo systemctl enable tor

Avaa tiedosto /etc/tor/torrc ja lisää siihen seuraavat rivit:

DNSPort 530 AutomapHostsOnResolve 1 AutomapHostsSuffixes .exit,.onion

Kiinnitä huomiota numeroon 530. Tämä on portin numero 530:n sijaan, voit määrittää minkä tahansa muun (käyttämättömän) portin. Pääasia on muistaa se.

Tarkistamme uudelleen:

Kaivaa mi-al.ru # ja kaivaa mi-al.ru -p 530 @localhost

Nyt määritämme palvelimeksi paikallinen isäntä, ja kirjoita portin numero, jonka määritit /etc/tor/torrc-asetuksissa.

Kuten seuraavasta kuvakaappauksesta näet, DNS-huijaushyökkäys suoritetaan koneelle, jossa tarkistus tehtiin:

4. Etsi verkkoliitäntöjä promiscuous-tilassa

Jos paikallisverkossasi on (ja varsinkin jos se ilmestyi yhtäkkiä) laitteistoa siveettömyydessä, tämä on erittäin epäilyttävää, vaikka se ei selvästikään osoita välimieshyökkäystä.

Tässä tilassa verkkokortti mahdollistaa kaikkien pakettien vastaanottamisen riippumatta siitä, kenelle ne on osoitettu.

Normaalitilassa Ethernet-liitäntä käyttää linkkikerroksen pakettisuodatusta ja jos vastaanotetun paketin kohdeotsikossa oleva MAC-osoite ei vastaa nykyisen verkkoliitännän MAC-osoitetta eikä lähetetä, paketti hylätään. "Promiscuous"-tilassa verkkoliitännän suodatus on poistettu käytöstä ja kaikki paketit, mukaan lukien ne, joita ei ole tarkoitettu nykyiselle solmulle, sallitaan järjestelmään.

Useimmat käyttöjärjestelmät vaativat järjestelmänvalvojan oikeudet salliakseen promiscuous-tilan. Ne. Verkkokortin asettaminen promiscuous-tilaan on tahallinen toiminta, joka voi palvella haistelua.

Verkkoliitäntöjen etsimiseen promiscuous-tilassa käytetään Ettercap-nimistä laajennusta search_promisc.

Esimerkki laajennuksen suorittamisesta:

Sudo ettercap -TQP search_promisc ///

Liitännäisen toiminta ei ole täysin luotettavaa, verkkoliitäntätilan määrittämisessä saattaa ilmetä virheitä.

Johtopäätös

Jotkut välimieshyökkäysmenetelmät jättävät paljon jälkiä, ja joitain (kuten passiivinen välityspalvelimen tunnistetietojen haku) on mahdotonta tai lähes mahdotonta havaita.

Tarkoittaa tilannetta, jossa hyökkääjä voi lukea ja muokata haluamallaan tavalla kirjeenvaihtajien välillä vaihdettuja viestejä, eikä kukaan jälkimmäisistä voi arvata läsnäoloaan kanavalla.


Wikimedia Foundation.

2010.

    Katso, mitä "mies keskellä (hyökkäys)" on muissa sanakirjoissa:

    Mies keskellä hyökkäys, MITM-hyökkäys (englanniksi Man in the middle) on kryptografian termi, joka tarkoittaa tilannetta, jossa kryptanalyytikko (hyökkääjä) pystyy lukemaan ja muokkaamaan vaihdettuja viestejä... ... Wikipedia

    - ... Wikipedia

    Kryptaanalyysi (kreikan sanasta κρυπτός piilotettu ja analysointi) on tiedettä menetelmistä, joilla saadaan salatun tiedon alkuperäinen merkitys ilman pääsyä tähän välttämättömään salaiseen tietoon (avaimeen). Useimmissa tapauksissa tämä tarkoittaa... ... Wikipediaa

    Hakkerihyökkäys sanan suppeassa merkityksessä ymmärretään tällä hetkellä ilmauksella "Yrittää turvajärjestelmää", ja se pyrkii pikemminkin seuraavan termin Cracker-hyökkäys merkitykseen. Tämä tapahtui itse sanan "hakkeri" merkityksen vääristymisen vuoksi... Wikipedia

- (muista kreikkalaisista sanoista κρυπτός piilotettu ja analyysi) tiede menetelmistä salatun tiedon purkamiseksi ilman salauksen purkamiseen tarkoitettua avainta. Termin loi amerikkalainen kryptografi William F. Friedman vuonna 1920. Epävirallisesti... ... Wikipedia

Man in the middle attack (MitM-hyökkäys) on kryptografian termi, joka viittaa tilanteeseen, jossa hyökkääjä pystyy lukemaan ja muokkaamaan halutessaan kirjeenvaihtajien välisiä viestejä, eikä kukaan jälkimmäisistä voi arvata henkilöllisyyttään kanavalla .

Menetelmä viestintäkanavan vaarantamiseksi, jossa hyökkääjä, joka on liittynyt vastapuolten väliseen kanavaan, häiritsee aktiivisesti siirtoprotokollaa poistaen, vääristäen tietoa tai määräämällä vääriä tietoja.

Hyökkäysperiaate:

Hyökkäyksen tekemiseksi "C" näyttää vastustavan "A":ta "B:nä" ja vastustavan "B:tä" "A:na". Objekti "A", uskoen virheellisesti lähettävänsä tietoa "B:lle", lähettää sen objektille "C".

Objekti "C", saatuaan tiedon ja suorittanut sen kanssa joitain toimintoja (esimerkiksi kopioinut tai muokkaanut sitä omiin tarkoituksiinsa), lähettää tiedot vastaanottajalle itselleen - "B"; kohde "B" puolestaan ​​uskoo, että tieto on saatu suoraan "A:lta".

Esimerkki MitM-hyökkäyksestä:

Oletetaan, että Alicella on taloudellisia ongelmia ja hän päättää pikaviestiohjelman avulla pyytää Johnilta rahasumman lähettämällä viestin:
Alice: John, hei!
Alice: Ole hyvä ja lähetä minulle salausavain, minulla on pieni pyyntö!
John: Hei! Odota hetki!

Mutta tällä hetkellä herra X, joka analysoi liikennettä haistajalla, huomasi tämän viestin ja sanat "salausavain" herättivät uteliaisuutta. Siksi hän päätti siepata seuraavat viestit ja korvata ne tarvitsemillaan tiedoilla, ja kun hän sai seuraavan viestin:
John: Tässä on avaimeni: 1111_D

Hän vaihtoi Johnin avaimen omaksi ja lähetti viestin Alicelle:
John: Tässä on avaimeni: 6666_M

Alice, tietämätön ja luulee, että se on Johnin avain, käyttämällä yksityistä avainta 6666_M, lähettää salattuja viestejä Johnille:
Alice: John, minulla on ongelmia ja tarvitsen kiireesti rahaa, siirrä 300 dollaria tililleni: Z12345. Kiitos. p.s. Minun avaimeni: 2222_A

Saatuaan viestin herra X purkaa sen salauksen avaimellaan, lukee sen ja iloiten vaihtaa Alicen tilinumeron ja salausavaimen omakseen, salaa viestin avaimella 1111_D ja lähettää Johnille viestin:
Alice: John, minulla on ongelmia ja tarvitsen kiireesti rahaa, siirrä 300 dollaria tililleni: Z67890. Kiitos. p.s. Minun avaimeni: 6666_A

Saatuaan viestin John purkaa sen salauksen avaimella 1111_D, ja siirtää rahaa tilille epäröimättä Z67890...

Ja näin herra X ansaitsi mies-in-middle-hyökkäyksen avulla 300 dollaria, mutta Alice joutuu nyt selittämään, ettei hän saanut rahoja... Entä John? Johnin on todistettava Alicelle lähettäneensä heidät...

Toteutus:

Tämän tyyppistä hyökkäystä käytetään joissakin ohjelmistotuotteissa verkon salakuuntelua varten, esimerkiksi:
NetStumbler- ohjelma, jolla voit kerätä paljon hyödyllistä tietoa langattomasta verkosta ja ratkaista joitakin sen toimintaan liittyviä ongelmia. NetStumblerin avulla voit määrittää verkkosi kantaman ja auttaa sinua kohdistamaan antennisi tarkasti pitkän matkan viestintää varten. Jokaisesta löydetystä tukiasemasta saat selville MAC-osoitteen, signaali-kohinasuhteen, palvelun nimen ja sen suojausasteen. Jos liikennettä ei ole salattu, ohjelman kyky havaita luvattomat yhteydet on hyödyllinen.

dsniff- on sarja ohjelmia verkon auditointiin ja levinneisyystestaukseen, joka tarjoaa passiivisen verkon valvonnan kiinnostavien tietojen (salasanat, sähköpostiosoitteet, tiedostot jne.) etsimiseksi, sieppaamalla verkkoliikennettä, joka ei normaalisti olisi käytettävissä analysointia varten (esim. kytketty verkko), sekä kyky järjestää MITM-hyökkäyksiä SSH- ja HTTPS-istuntojen sieppaamiseksi PKI-virheitä hyödyntäen.

Kain & Abel on ilmainen ohjelma, jonka avulla voit palauttaa kadonneet salasanat Windows-perheen käyttöjärjestelmille. Useita palautustiloja tuetaan: brute force hakkerointi, sanakirjan valinta, tähdillä piilotettujen salasanojen katselu jne. On myös vaihtoehtoja salasanan tunnistamiseen sieppaamalla tietopaketteja ja niiden myöhempää analysointia, tallentamalla verkkokeskusteluja, välimuistin analyysiä ja muita.

Ettercap- on paikallisten Ethernet-verkkojen haistaja, pakettien sieppaaja ja tallennin, joka tukee useiden protokollien aktiivista ja passiivista analysointia ja on myös mahdollista "heittää" omaa dataa olemassa olevaan yhteyteen ja suodattaa "lennossa" yhteyttä häiritsemättä synkronointi. Ohjelman avulla voit siepata SSH1-, HTTPS- ja muita suojattuja protokollia ja antaa mahdollisuuden purkaa salasanoja seuraaville protokollille: TELNET, ftp, POP, RLOGIN, SSH1, icq, SMB, Mysql, HTTP, NNTP, X11, NAPSTER, IRC , RIP, BGP, SOCKS 5, IMAP 4, VNC, LDAP, NFS, SNMP, HALF LIFE, QUAKE 3, MSN, YMSG.

KARMA– joukko apuohjelmia langattomien asiakkaiden turvallisuuden arvioimiseen, on langaton haistelija, joka kuuntelee passiivisesti 802.11 Probe Request -kehyksiä ja mahdollistaa asiakkaiden ja heidän suosimiensa/luotettujen verkkojen havaitsemisen. Väärennetty tukiasema voidaan sitten luoda yhdelle pyydetyistä verkoista, johon se voidaan yhdistää automaattisesti. Korkean tason huijauspalveluita voidaan käyttää henkilötietojen varastamiseen tai isäntäkoneen asiakkaan haavoittuvuuksien hyödyntämiseen.

AirJack- joukko ohjelmia, jotka WiFi-hakkeroinnin asiantuntijoiden mukaan ovat paras työkalu erilaisten 802.11-kehysten luomiseen. AirJack sisältää useita apuohjelmia, jotka on suunniteltu havaitsemaan piilotetut ESSID:t, lähettämään istunnon lopetuskehyksiä väärennetyllä MAC:lla, suorittamaan MitM-hyökkäyksiä ja muokkaamaan sitä.

Vastatoimi:

Tämän tyyppisten hyökkäysten välttämiseksi tilaajien "A" ja "B" tarvitsee vain siirtää julkisten salausavaimien digitaaliset allekirjoitukset toisilleen luotettavaa kanavaa käyttäen. Sitten verrattaessa avaimen allekirjoituksia salausistunnoissa on mahdollista määrittää, millä avaimella tiedot salattiin ja onko avaimet vaihdettu.

MTProto käyttää alkuperäistä menetelmää saavuttaakseen tällä hetkellä haavoittuvan matkaviestinnän luotettavuuden ja suurten tiedostojen (esimerkiksi valokuvat, videot ja asiakirjat, joiden koko on enintään 1 Gt) nopeuden. Tämän asiakirjan tarkoituksena on selventää järjestelmämme yksityiskohtia ja osoiteelementtejä, joita voi olla vaikea ymmärtää ensi silmäyksellä.

Yksityiskohtainen protokolladokumentaatio on saatavilla tällä sivulla. Jos sinulla on kysyttävää, kirjoita osoitteeseen Viserrys.

Huomautus: Jokainen MTProton kautta salattu viesti sisältää aina seuraavat tiedot, jotka tarkistetaan salauksen purkamisen yhteydessä, jotta järjestelmä olisi suojattu tunnettuja ongelmia vastaan:

  • istunnon tunniste - istunnon tunnus;
  • viestin pituus - viestin pituus;

Huomautus 2: Katso käyttöä koskevat lisäkommentit ja muokattu järjestelmiä

Mikset käytä X:tä [vaihtoehtosi]

Vaikka muitakin tapoja saavuttaa samoja kryptografisia tavoitteita on epäilemättä olemassa, uskomme, että nykyinen ratkaisu on sekä luotettava että onnistuu toissijaisessa tavoitteessamme päihittää epävarmat viestinvälittäjät toimitusnopeuden ja vakauden suhteen.

Miksi luotat klassisiin kryptoalgoritmeihin?

Käytämme mieluummin tunnettuja algoritmeja, jotka on luotu aikana, jolloin kaistanleveys ja prosessointiteho olivat harvinainen pari. Juuri näillä algoritmeilla on merkittävä vaikutus tämän päivän mobiililaitteiden sovellusten kehitykseen ja pakottaa niiden kirjoittajat pääsemään eroon tunnetuista puutteista. Tällaisten algoritmien heikkoudet ovat myös hyvin tiedossa, ja hyökkääjät ovat käyttäneet niitä hyväkseen vuosikymmeniä. Käytämme näitä algoritmeja tässä toteutuksessa, koska uskomme, että ne johtavat kaikki tunnetut hyökkäykset epäonnistumiseen. Otamme kuitenkin mielellämme vastaan ​​todisteita päinvastaisesta (tällaisia ​​tapauksia ei ole toistaiseksi esiintynyt) järjestelmämme parantamiseksi.

Olen turvallisuusasiantuntija ja uskon, että protokollasi on epävarma.

Voit osallistua kilpailuumme: Pavel Durov tarjoaa 200 000 dollaria Bitcoinina ensimmäiselle henkilölle, joka hakkeroi MTProton. Voit lukea tiedotteen ja kilpailun usein kysytyt kysymykset. Jos sinulla on muita kommentteja, otamme ne mielellämme vastaan ​​osoitteessa [sähköposti suojattu].

Suojaus tunnettuja hyökkäyksiä vastaan

Tunnetut selkokieliset hyökkäykset

Määritelmän mukaan selväkielinen hyökkäys on eräänlainen kryptanalyyttinen hyökkäys, jossa hyökkääjällä on sekä salattu että pelkkä tekstiversio tekstistä. MTProtossa käytetty AES IGE kestää tällaisia ​​hyökkäyksiä. Lisäksi MTProton selkeä teksti sisältää aina palvelinsuolan ja istuntotunnisteen.

Adaptive Plaintext Attack

Määritelmän mukaan adaptiivinen selväkielihyökkäys on eräänlainen kryptausanalyysin hyökkäys, jossa kryptaanalyytikko voi valita selkeän tekstin ja saada vastaavan salatekstin. MTProto käyttää AES:tä IGE-tilassa, joka on suojattu tällaisilta hyökkäyksiltä. IGE:n tiedetään olevan alttiina lohkoittain mukautuville hyökkäyksille, mutta MTProto korjaa tämän alla kuvatulla tavalla. Jokainen salattava tekstiviesti sisältää seuraavat tiedot, jotka tarkistetaan salauksen purkamisen aikana:

  • palvelinsuola (64-bittinen);
  • viestin järjestysnumero;
  • viestin lähetysaika - aika.

Lisäksi, jos haluat korvata selkeän tekstin, sinun on käytettävä myös oikeaa AES-avainta ja alustusvektoria, jotka riippuvat auth_key -arvosta. Tämä tekee MTProtosta kestävän mukautuville selkokielisille hyökkäyksille.

Vastaavat salakirjoitushyökkäykset

Määritelmän mukaan valittu salatekstihyökkäys on kryptografinen hyökkäys, jossa kryptaanalyytikko kerää tietoa salauksesta valitsemalla salatekstin ja saamalla sen salauksen purkamisen tuntemattomalla avaimella. Tällaisessa hyökkäyksessä hyökkääjä voi syöttää järjestelmään yhden tai useamman tunnetun salatekstin ja saada sellaiset tekstit. Näiden tietojen avulla hyökkääjä voi yrittää palauttaa salauksen purkamiseen käytetyn avaimen. MTProtossa joka kerta kun viestin salaus puretaan, tarkistetaan, että msg_key vastaa salauksen purkamisen datan SHA-1:tä. Selkeä teksti (salauksesta purettu data) sisältää myös aina tiedot viestin pituudesta, järjestysnumerosta ja palvelinsuorasta. Tämä estää valittuun salatekstiin perustuvat hyökkäykset.

Toista hyökkäykset

Toistohyökkäykset eivät ole mahdollisia, koska jokainen tekstiviesti sisältää palvelinsuolan, yksilöllisen viestitunnuksen ja järjestysnumeron.

Mies keskellä (MitM) -hyökkäys

Telegramilla on kaksi viestintätilaa: tavalliset chatit, jotka käyttävät asiakas-palvelinsalausta, ja salaiset keskustelut, jotka käyttävät päästä päähän -salausta ja ovat suojattuja välimieshyökkäyksiltä. Tiedonsiirto asiakkaan ja palvelimen välillä on suojattu tällaisilta hyökkäyksiltä Diffie-Hellman-avaimen luomisen aikana Telegram-asiakkaisiin sisäänrakennetun RSA-julkisen avaimen algoritmin ansiosta. Tämän jälkeen, jos keskustelukumppanien asiakkaat luottavat palvelimen ohjelmistoon, palvelin suojaa heidän väliset salaiset keskustelut välimieshyökkäyksiltä. Varsinkin niille, jotka Ei luottaa palvelimeen, salaisten koodien vertailu on saatavilla sovelluksessa. Näppäimet visualisoidaan kuvina. Vertaamalla visualisoituja avaimia käyttäjät voivat varmistaa, ettei välimieshyökkäystä ole tapahtunut.

Salaus

Käytätkö IGE:tä? Se on hakkeroitu!

Kyllä, käytämme IGE:tä, mutta toteutuksessamme kaikki on sen kanssa kunnossa. Se, että emme käytä IGE:tä järjestelmämme muiden osien kanssa samalla tavalla kuin MAC, tekee IGE:n hakkeroinnista turhia. IGE, aivan kuten yleinen salakirjoituslohkoketjutustila (CBC), on alttiina lohkoittain mukautuville hyökkäyksille. Mutta mukautuvat hyökkäykset ovat uhka vain, kun samaa avainta käytetään useissa viesteissä (tämä ei pidä paikkaansa).

Adaptiiviset hyökkäykset eivät ole edes teoreettisesti mahdollisia MTProtossa, koska viestien salauksen purkamiseksi viestit on ensin kirjoitettava kokonaan, koska viestin avain riippuu sen sisällöstä. Mitä tulee ei-adaptiivisiin CPA-hyökkäyksiin, IGE on suojattu niiltä, ​​kuten CBC.

© 2024 ermake.ru - Tietoja PC-korjauksesta - Tietoportaali