Mies välissä -hyökkäys
Mies välissä -hyökkäys (, lyhenne "MItM"), joka tunnetaan myös nimillä epärehellinen välittäjä tai välistävetohyökkäys, on tietoturvahyökkäys, jossa kahden viestijän väliseen viestintäreittiin tunkeutuu viestijöiden huomaamatta kolmas osapuoli, joka esittää kummallekin viestivälle osapuolelle olevansa toinen viestijä. Kolmas osapuoli saattaa aiheuttaa vahinkoa esim. muuttamalla tai poistamalla viestejä, urkkimalla salausavaimia tai korvaamalla pyydetyn julkisen avaimen omalla julkisella avaimellaan.
Hyökkäys voidaan tehdä tavallista tietokonetta vastaan esim. tavanomaisilla verkkolaitteilla tai matkapuhelinta vastaan esim. IMSI-siepparilla, joista kumpaankin tapaukseen on kuitenkin suojautumiskeinoja.
Normaalisti esim. verkkopankkiin kirjautumisessa käyttäjän kone A ottaa yhteyttä pankin palvelimeen B internetin kautta. Välistävetohyökkäyksessä käyttäjän kone ottaakin yhteyttä kolmannen osapuolen vakoilevaan koneeseen C, joka esittää olevansa pankin palvelin B. C myös esittää pankille olevansa pankin käyttäjä A. A:n kirjautuessa pankkiin, saa C pankkitunnukset haltuunsa ja kirjautuu niillä palvelimelle B. A:n yrittäessä vaikkapa siirtää 100 euroa tuttunsa pankkitilille, välittää C tilisiirron tiedot palvelimelle B, mutta muuttaakin tietoja siten, että niissä pyydetään tyhjentämään kaikki A:n tilin omaisuus C:n omalle tilille. Pankki B kysyy tiettyä numeroa vastaavaa tunnuslukua, jonka C välittää A:lle. A kertoo tunnusluvun, jolloin C välittää tiedon B:lle jolloin A:n tililtä on onnistuneesti varastettu kaikki rahat.
Käytännössä kuitenkin lähes kaikki pankit käyttävät alla esiteltyjä varmenteita, jotka jossain määrin estävät edellä kuvattua tapahtumasta A:n huomaamatta.
Esim. salattua HTTPS yhteyttä käytettäessä välistävetohyökkäystä vastaan puolustaudutaan internetissä käyttämällä kryptografisia varmenteita (eli sertifikaatteja tai todenteita), joita käyttämällä viestivät osapuolet voivat todistaa henkilöllisyytensä välistävetäjän pystymättä matkimaan kumpaakaan. Varmenteita voisi verrata vaikkapa DNA- tai sormenjälkitunnistukseen, mutta todellisuudessa varmenteet perustuvat matematiikkaan pohjautuvaan julkisen avaimen salaukseen ja niistä on rakennettu luottamukseen pohjautuva hierarkkinen varmenne infrastruktuuri, jonka huipulla ovat laajalti luotetut ja itsemyönnetyt ns. juurivarmenteet. Rakennetta hallinnoidaan mm. varmenneviranomaisten (eng. "certificate authority") ja OCSP-palveluiden avulla. Muita ehdotettuja ja käytössä olevia parannuksia ovat mm. HPKP, DNSSEC, DANE ja lohkoketjuun pohjautuvat varmenteet.
Viestintämenetelmät eivät ole kuitenkaan välttämättä ole täydellisiä: esim. aiemmin usein internetissä käytetyn SSL 3.0-protokollan kaikki versiot on todettu alttiiksi välistävetohyökkäyksille lokakuussa 2014 löytyneen POODLE haavoittuvuuden takia, jonka vuoksi SSL on nykyään laajalti korvattu TLS:llä. TLS:sänkin joistakin toteutuksista löytyi pian tämän jälkeen joulukuussa 2014 vastaavanlaisia ongelmia.
Matkapuhelinverkoissa käytetyissä vanhoissa 2G:hen kuuluvissa toteuksissa kuten GSM:ssä on ollut välistävetohyökkäyksen sallivia ongelmia, joita on pyritty uudempien teknologioiden varmennejärjestelmien avulla parantamaan. Uusista 3G teknologioihin kuuluvista toteutuksissa ja LTE:n toteutuksista on kuitenkin löytynyt epäkohtia, jotka voivat mahdollistaa välistävetohyökkäyksen.
Varmenneviranomaiset ovat heikko kohta varmenne infrastruktuurissa. 2001 VeriSign varmenneviranomainen myönsi varmenteen, jossa luki "Microsoft Corporation" VeriSignia huijanneelle yksittäiselle henkilölle. Varmenteella olisi voinut suorittaa esim. välistävetohyökkäyksen. 2011 onnistuttiin hakkeroimaan Comodo- ja DigiNotar-viranomaiset myöntämään varmenteita hakkereille, joita todennäköisesti käytettiin välistävetohyökkäyksessä Iranissa.
Varmenteiden ja muiden niihin liittyvien nykyään käytettyjen menetelmien avulla esim. verkkopankin käyttäjä on aika hyvässä turvassa ainakin välistävetäjiltä jos muunlaisia tietoturvauhkia ei oteta huomioon. Pankkien ja muiden verkkopalveluiden palvelimet puolestaan harvoin pyytävät käyttäjää esittämään varmenteita ja sen sijaan varmentavat käyttäjiä erilaisten tunnusten kuten salasanojen avulla.
Varmenteiden lisäksi voidaan ehkä käyttää järjestelmää, joka tarkkailee kunkin käyttäjän ja palvelimen välisissä pyynnöissä kulunutta aikaa. Poikkeuksellisesti pidentynyt aika tarkoittaisi mahdollisesti välistävetohyökkäystä, sillä pyyntö tulee tässä tapauksessa epäsuoraan kolmannen osapuolen koneen kautta. Järjestelmä havaitsisi tämän ja varoittaisi käyttäjää. Kvanttisalauksen avulla voisi myös olla mahdollista havaita välistävetäjä.