35C3 alkumusiikki
Herald Angel: Aloitamme seuraavan keskustelun Seuraava puhuja vieressäni on Martin Vigo
Hän on tuoteturvallisuuden johtaja ja tutkija sekä hänen vastuullaan on mobiili-
turvallisuus, identiteetit ja todentaminen. Hän auttaa suunnittelemaan ja suojaamaan
järjestelmiä sekä sovelluksia. Hän on myös työskennellyt teemojen, kuten salasana hallinta
sovelluksen murtaminen sekä hyväksikäyttää Applen FaceTime -sovellusta vakoiluun.
Toivottakaa hänet tervetulleeksi aplodeilla. *Aplodit*
Martin Vigo: Kiitoksia kaikki, jotka ovat paikalla. Olen erittäin innoissani, että
saan olla täällä. Tämä on oikeastaan toinen kerta täällä konferenssissa.
Ensimmäisenä vuonna istuin siellä ja nyt olen täällä.
Minut esiteltiin jo, mutta tässä minä olen yhdeksän vuotiaana vanhan
Amstrad CPC 6128 -tietokoneen kanssa. Onko kellään ollut samaa? Näen vain yhden käden.
Luulen, että näitä myytiin Euroopassa, mutta pelasin tällä La Abadía del crímen,
joka on paras koskaan tehty videopeli. Jos tykkäätte vanhoista peleistä suosittelen
kokeilemaan. Niin kuin kaikki hyvät tutkijat meidän täytyy aloittaa katsomalla historiaan.
Me voimme oppia paljon muilta tutkijoilta vanhoista tutkimuksista.
Tässä tapauksessa matkustamme 80-luvulle, jolloin hakkerointi oli uutta, että
ymmärrämme kuinka aikakauden nörtit hakkeroivat puhelinvastaajat.
Tiivistän kaiken mitä olen oppinut viiteen kappaleeseen,
jotka olen kopioinut Phrack -sivustolta. Sivusto on hyvä lähde.
Vastaajan hakkerointiin:
"Sinä voit kokeilla kaikkia kahden numeron kombinaatioita, niin kauan kuin löydät oikean",
"Kehittyneempi ja nopeampi tapa olisi käyttää hyödyksi tietoa, ettei vastaajat
yleensä tarkista kahta numeroa kerrallaan ja sitten hylkää niitä, vaan etsii
numeroiden oikeata järjestystä". Mistä on tässä kyse?
Vanhempaan vastaajaan kuin syöttää numerot 1 2 3 4 kahden numeron PIN-koodiksi,
ei vastaaja yritä yhdistelmiä 1 2 ja 3 4 vaan myös yhdistelmä 2 3 on kokeiltu.
Tämä on erittäin mielenkiintoista. Hakkeroitaessa AT&T vastaajia
90- ja 80-luvun vastaajia saamme muodostettu yhdistelmän, joka kattaa
kaikki kahden numeron yhdistelmät. Jos syötät kaikki nämä numerot vastajaan
käytännössä murrat bruteforcella koodin syöttämättä kaikkia eri kombinaatioita.
Opin myös Aspen vastaajan oppaasta, että
80-luvulla ei ollut oletus PIN-koodeja. Yllätys, yllätys! Opin myös, että meillä
ihimisillä on tietyt kaavat, kun valitsemme PIN-koodia. Meillä on myös klassikot:
1111, 9999, 1234. Toinen asia jonka opin hakkeroidessani vastaajaa 90-luvulla,
"Vastaajissa oli 'vaihda viesti' toiminto, jolla pystyi vaihtamaan vastaajan viestiä
siten, että automaattinen vastaaja hyväksyy puhelujen kustannuksien
laskuttamisen. [vastaanottaja maksaa] Tämä on vankien käyttämä konsti, jolla
voi soittaa ilmaiseksi. Heidän tulee ainoastaan nauhoittaa vastaajaan viesti: "kyllä,
kyllä, kyllä". Kun automaattinen järjestelmä kysyy vastaajalta "Haluatko hyväksyä maksut
puhelusta, joka tulee vankilasta. Automaattinen järjestelmä hyväksyy ja
vangit voivat soittaa ilmaisia puheluita. Tiivistettynä ja yhteen vetona
Olen oppinut 80-luvun hakkereilta sen,
että vastaajien tietoturva näytti... vastaajissa oli oletus PIN-koodit,
oli yleisiä PIN-koodeja, PIN-koodin saattoi arvata, bruteforce oli tehokasta,
koska pystyttiin syöttämään useita yhdistelmiä samaan aikaan sekä vastaajan tervehdysviesti
hyökkäys vektori. Pelataan peliä. Tehdään tarkistuslista ja tarkkaillaan nykyisten
vastaajien tietoturvaa. Tarkkailin Amerik- kalaisia operaattoreita, koska asun
Amerikoissa, mutta koska minut kutsuttiin puhumaan Saksaan otin yhteyttä kaveriini
joka lähetti minulle SIM kortteja ja pystyin tarkkailemaan Saksalaisia operattoreita myös
Tarkastuslista: Kaikilla Amerikkalaisilla operaattoreilla on oletus PIN-koodit, mutta
ne eivät ole kovin salaisia, koska yleensä koodit ovat puhelinnumeron viimeiset numerot
Saksalaiset operaattorien kohdalla tilanne on paljon parempi.
Esimerkiksi Vodaphone käyttää PIN-koodina neljää viimeistä numeroa asiakasnumerosta,
joita ulkopuolinen ei tiedä. Tarkoitan, että asiakas tietää, mutta ei muut.
Operaattorit CallYa käyttää PIN-koodina neljää viimeistä numeroa PUK-koodista.
Telekom käyttää neljää viimeistä numeroa kortista, joka on siis kortti
joka tulee SIM-kortin mukana. O2 operattori on pettymys oletus PIN-
koodilla, joka on 8705. Se on myös ainoa PIN-koodi, jota et voi asettaa itse.
Kun tarkastellaan vastaajan tietoturvaa yleisten PIN-koodiyhdistelmien näkökulmasta.
Viitaten Data Geneticsin tekemään fantastiseen tutkimukseen, kyse on ihmisten
käyttäytymisestä valitessaan PIN-koodeja luottokortteihinsa. Tutkimuksessa tehtiin
paljon johtopäätökiä. Yhteenvetona johtopäätös tutkimuksessa oli, että
jos esimerkiksi kokeilee yleisimmät 20 PIN- koodia on 22 prosentin mahdollisuus arvata
oikein. Tämä tarkoittaa sitä, että joka neljäs uhri jonka vastaajan PIN-koodia
yritän bruteforceta osuu oikeaan.
Tutkimuksessa on myös muita johtopäätökisä jotka ovat erittäin mielenkiintoisia,
kuten useimmat PIN-koodit alkavat 19. Kuka arvaa mistä tämä johtuu? Synytmävuosi, eikö?
On erittäin yleistä asettaa syntymävuosi PIN-koodiksi. Useimmat meistä ovat syntyneet
1900-luvulla... asettaa se PIN-koodiksi. Bruteforcetettavat PIN-koodit. Saksassa ja
Amerikoissa vastaajat hyväksyvät neljä numeroisia PIN-koodeja, näemme myöhemmin,
että koodi ei ole riittävän pitkä. Kaikki operaattorit sallivat arvaamisyritysten
ketjuttamisen. Yritän kokeilla eri PIN- koodeja, eikä minun tarvitse edes
odottaa virheviestiä.
Hyväksikäytän mahdollisuutta kokeilla kolmea PIN-koodia kerralla. Yleensä
operaattori katkaisee linjan tietoturvallisuuden takia kolmen virheellisen yrityksen jälkeen,
mutta käytämme hyödyksi sitä. Totesin, että kaikki mitä olen oppinut 80-luvusta on yhä
tänä päivänä ongelma. Päätin kirjoittaa ohjelman, jolla voi bruteforcea vastaajan
PIN-koodin nopeasti, halvalla, helposti, tehokkaasti ja huomaamattomasti. Joten
nopeasti: käydin Twiliota... kenelle Twilio on tuttu? Joillekkin teille? Eli Twilio on
käytännössä online-palvelu, joka sallii vuorovaikutuksen puhelimen soittoihin
ohjelmallisesti. Voit soittaa puheluita, vuorovaikuttaa puheluihin ja niin edelleen
Käytän Twiliota soittamaan satoja puheluita samaan aikaan bruteforcettaa kohteen
vastaajan PIN-koodin. Twilio on halpa! Kaikkien neljän numeron kombinaatioiden
kokeileminen maksaa 40 dollaria. Jos haluan saada selville sinun neljä numeroisen
PIN-koodin, joudun maksamaan 40 dollaria. Data Geneticsin tutkimukseen viitaten
50 % todennäköisyydellä arvaaminen maksaa 5 dollaria. Saan jokatoisen uhrin PIN
-koodin selville. Toisessa lähestymistavassa en yritä murtaa vain sinun PIN-koodia
vaan haluan murtaa kaikkien täällä olevien PIN-koodit.
Viitaten Data Geneticsin tutkimukseen, tässä tapauksessa, viitaten faktaan että
on myös olemassa oletus PIN-koodit... En kysy teiltä kuinka monella on O2 liittymä
koska he tietävät, että heidän vastaajassa on oletus PIN-koodi. On mielenkiintoisempaa
kokeilla tuhatta puhelinnumeroa O2 asiakkaiden oletus PIN-koodilla,
vain 13 dollarin kuluilla. On helppoa kokeilla täysin automatisoidulla työkalulla,
joka tekee kaiken puolestasi. Sinun tar- vitsee vain antaa numerot, operaattori ja
muutama muu parametri, se on tehokasta! Se optimoi arvaamisen, käytän hyväkseni
Data Geneticsin tutkimusta arvatessani PIN-koodeja, jotka ovat yleisimpiä ja
tottakai se kokeilee eri PIN-koodeja ja kaikkea sellaista. Tärkeimpänä tässä on
tunnistaa, ajattele. Jotta voisin kommunikoida sinun vastaajan kanssa. Minun
tulee soittaa sinulle, etkä voi vastata, jos vastaat, puhelu ei mene vastaajaan.
Yritin etsiä keinoja päästä suoraan vastaajaan, koska tarvitsin sitä
tehdäkseni useita soittoja ja kokeillakseni eri PIN-koodeja.
Kuinka voin kommunikoida suoraan vastaajan kanssa? Kokeilen tukkia puhelimen
liian monella soitolla, koska noin kolmella puhelulla linja tukkeutuu ja
puhelu ohjautuu suoraan vastaajaan. Tämä ei ollut kovin luotettava keino.
Tässä voisi käyttää OSINT-tekniikoita. Moni ihminen twiittaa, että ovat lähdössä
matkalle ja nousemassa lentokoneeseen. Puhelin on lentotilassa tai olet etäällä
tai elokuvateatterissa tai puhelin on yöllä älä häiritse tilassa. Kaikki nämä
tilanteet, joissa puhelut ohjautuvat suoraan vastaajaan. Voisit käyttää HLR-
tietokantaa löytääksesi onko mobiili- yhteydet katkaistu tai SIM-kortit hylätty,
mutta silti ne ovat sidottuja tiliin. Sinä voit käyttää online-palveluita
niin kuin realphonevalidation.com jota itseasiassa kontaktoin ja he
tarjosivat palvelua, jolla saan tietää onko puhelin yhteydessä verkkoon tällä
hetkellä, palvelu on siis olemassa ja voit käyttää sitä tietoa. Sinä voit
käyttää myös luokan 0 SMS-viestiä, joka antaa palautteen. Se on käytännössä SMS-
viestin tyyppi, joka... viestillä on korkempi prioriteetti ja se näkyy vastaanottajan
näytöllä ja sinä saat palautteen katsotaanko viesti vai ei. Tämä on kiva
keino saada selville onko puhelin kytkettynä verkkoon. Mutta todellisuudessa
halusin luotettavan ratkaisun toteuttaa ja huomasin, että USA:ssa on käytössä
suora numero vastaajaan. Eli en soita sinulle, vaan johonkin näistä palvelusita,
jotka te olette listanneet jokaiselle operaattorille ja syötän sinne numeron,
joka tässä tapauksessa on uhrin puhelinnumero jonka kanssa haluan viestiä.
Pääsen suoraan käsiksi kirjautumiseen. On kiinnostavaa, että Saksassa tämä
tarjotaan palveluna ja USA:ssa se on enemmän salainen, joka minun piti hakea
googlesta, mutta tässä... Periaatteessa, jos soitan sinun puhelinnumeroon
ja Vodafonen tapauksessa lisään aluekoodin ja muun numeron väliin numeron 55
tai Telekom niin 13, tai O2 niin 33 pääsen suoraan vastaajaan, puhelimesi ei soi.
Eli voin käyttää tätä keinoa. Kuka Saksalainen tiesi tästä?
Ok, monet teistä tiesi. Niin minä oletinki Täällä se ei tunnu olevan asia, josta
ette hirveästi murehdi. Huijarit käyttävät tätä paljon USA:ssa, jättääkseen suoraan
viestejä vastaajaan.
Voicemailcracker käyttää hyödykseen suora numeroita, jotka mahdollistavat
sinun olevan tunnistamaton. Minun ei tarvitse soittaa sinulle, ei tarvitse
odottaa että lennät, voin vain tehdä sen. Esimerkkinä USA:ssa on hyvä, että kun
soitan monta puhelua, niin linja tukkeutuu vaikka olisit irti verkosta. Mutta kun
käytän näitä suora numeroita, eivät linjat tukkeudu, koska ne ovat tarkoitettu
kaikkien käytettäväksi. Eli kun soitan satoja ja satoja puheluita, eikä linja
tukkeudu. Mutta sinä tiedät, että operaattorit tai jotkun heistä ovat
lisänneet arvauksiin rajoituksen. Eli et voi arvata bruteforcella liian montaa kertaa.
Tutkin esimerkiksi Saksalaista operaattoria Vodafoena ja huomasin
että vastaaja resetoi kuuden numeron PIN- koodin ja lähettää sen sinulle teksiviestinä
Eli voin lähettää sinulle massiivisen määrän tekstiviestejä, mutta kuka välittää
se ei ole iso ongelma. Tämä on oikeastaan aika tehokas keino vastaajaa... bruteforce arvauksia vastaan.
Telekom estää soittajan numeron pääsyn vastaajaan tai edes jättämään viestiä.
Yritin kuusi kertaa ja se on joka kerta väärin, puhelu vastaa:
"Hei, et voi tehdä mitään" ja katkaisee puhelun. O2 ohjaa puhelut suoraan asiakas-
palveluun ja joku alkoi puhumaan Saksaa, eikä minun saksani ole niin hyvä.
Bruteforce. Halusin yrittää ohittaa tämän katsotaan Telecomia ja mainitsin,
että se estää soittajan numeron mutta kävi ilmi, että Twiliossa voit ostaa soittajan
numeron, siis, voit ostaa puhelinnumeroita aivan?
Ne ovat erittäin halpoja. Minun on erittäin helppoa satunnaistaa soittajan
numero erittäin halvalla ja näin ohittaa Telecomin arvauksen esto suoja.
Voicemailcracker myös tukee tätä. Tukee satunnaisia soittajan numeroita.
Ensimmiäsen demon aika. Niin kuin näette vasemmalla on uhrin puhelin
ja oikealla on ohjelma. Tässä tapauksessa käytän bruteforce parametriä.
Bruteforce parametri sallii minun arvata vastaajan PIN-koodi.
Sovellus tekee satoja puheluita ja yrittää arvata PIN-koodia, niin kuin selitin.
Tässä on joitan parametrejä niin kuin uhrin puhelinnumero, operaattori...
operaattori on tärkeä, koska käytetään eri hyötykuormaa jokaiselle operaattorille
koska operaattorien järjestelmät ovat erilaiset, kuinka vuorovaikutus toimii ja
tässä tilanteessa käytämme suora numeroa koska se on tehokkaampi.
Eikä siellä ole tunnistusta. Tässä esimerkissä valitsin asetuksen TOP PIN
Ohjelma kokeilee top 20 neljä numeroista PIN-koodia jotka mainittiin tutkimuksessa.
Niin kuin näette, ohjelma kokeilee kolme PIN-koodia kerrallaan, yhden PIN-koodin
sijasta. Eli meidän tarvitsee tehdä vain kolmas soitoista, eikö? Ja kuinka pystyn
tunnistamaan onko arvattu PIN oikein? Ideoita?
*Yleisön vastauksista ei saa selvää* Puhelu katkeaa tai suljetaan.
Niin minä kuulin ja se on täsmälleen niin. Kun ajattelette tarkemmin tätä, niin voin
vertailla puheluiden pituuksia ja koska kokeilen aina kolme PIN-koodia ja
puhelun katketessa on pituus aina sama. T-Mobilella noin 18 sekuntia. Muutin
logiikkaa siten, että jokaisen kolmen PIN-koodin yrittämisen välillä odotetaan
ylimääräiset 10 sekuntia. Se on kaikki mitä tarvitsee tehdä. Ei tarvita tulkita
mitä vastaaja kertoo meille ja päätellä siitä onko koodi oikein vai ei.
Voin suoraa käyttää puhelun pituutta. Eli jos puhelun pituus on 10 kertaa
pidempi silloin tiedän, että sain oikean PIN-koodin tietoon, koska kirjautuminen
onnistui. Niin kuin näette ohjelma päätteli, että joku näistä kolmesta on
oikea PIN-koodi: tässä tapauksessa se on 1983. Nyt selvittääksemme mikä kolmesta
koodista on oikea, kokeilemme kaikkia yksitellen ja se saattaa näyttää siltä,
että tämä kestää kauemmin mitä sen pitäisi vain 20 koodille, mutta mutta muista, että
epäonnistunut arvausyritys on erittäin nopea. Sen takia koska top 20 listalta
löytyi jo oikea pin se kestää kauemmin kuin pitäisi. Ja siinä se on, löysimme sen
1983. Hienoa. Mihin tämä vaikuttaa, miksi olen täällä CCC:ssä puhumassa teille
joilla on niin hienoja keskusteluja. Tämä on itseasiassa asian pihvi. Kukaan ei
välitä vastaajista. Luultavasti, jos kysyn täällä kuka tietää oman vastaajansa
PIN-koodin? *naurua* Hienoa, tätä odotin.
Luultavasti vähemmän käsiä täällä. Jotkut heistä valehtelevat. Me emme välitä
vastaajasta. Me emme edes käytä vastaajaa, joka on vähän hullua.
Meillä on avoimet ovat keskustella ongelmasta, jota emme ole tunnistaneet
tai emme edes muista. Kaikki eivät tiedä myöskään sitä totuutta, että
voit resetoida salasanan puhelulla. Salasanan resetointi sähköpostilla
on tutumpi keino. Saat yksilöllisen linkin, ehkä koodin tekstiviestillä joka
täytyy syöttää käyttöliittymään. Mutta moni ei voi vastaanottaa
tekstiviestejä tai ainakin palvelut väittävät niin. Joten he toimittavat
väliaikaisen koodin puhelussa. Ja se on mitä me haluamme käyttää hyödyksi, koska
kysyn teiltä mitä tapahtuu jos et vastaa puheluun, jos menen palveluun, syötän
sinne sinun sähköpostin tai puhelinnumeron sekä nollaan salasanan. Kuka tahansa voi
tehdä sen. Kuka tahansa voi resetoida, käynnistää salasanan vaihto prosessin
ja tiedän, että ette ole vastaamassa puhelimeen, kiitoksia työkalun jonka
avulla minulla on pääsy teidän vastaajaan. Käytännössä vastaaja nauhoittaa puhelun ja
kertakäyttöisen koodin, jonka tarvitsen salasanasi vaihtamiseen ja pääsyyn
tilillesi. Niin --oops! --
Jatkan esittämistä.
Okei, mitä hyökkäys vektori näyttää? Sinä bruteforceat vastaajan PIN-koodia
työkalulla, joka käyttää vastaajan suora numeroa. Puhelu jonka
tarkoitus on kertoa sinulle salasanan vaihtokoodi, ei voi suoraan kytkeytyä
vastaajan takaoven numeroon, eihän?
PayPal soittaa suoraan uhrin numeroon. Sitä puhelua varten sinun pitää pitää
huoli siitä, että uhri ei ole yhteydessä puhelinverkkoon kaikilla aiemmin
kertomillani metodeilla. Aloitat salasanan vaihto prosessin puhelimen välityksellä.
Kuuntelet nauhoitetun viestin, salaisen koodin ja voitto.
Kaappasit sen tilin ja Voicmailcracker voi tehdä tämän kaiken sinulle.
Kaapataan Whatsapp. Vasemmalla näette minun numeroni. Salainen rakastaja
ryhmä, salainen ryhmä ja kaikki muu. Oikealla, huomaa että en käytä edes oikeaa
puhelinta, vaan käytän android emulaattoria johon asensin APK:n.
Tässä on myös äänet ja tulet näkemään eli vasemmalla on uhrin numero ja
oikealla on hyökkäänjän emulaattori. Näette, että käytän ohjelmaani
viesti moodissa ja message parametrillä.
Mitä tässä teen on, että laitan uhrin puhelimen lentotilaan simuloidakseni
sitä, että se on pois päältä jonkin syyn takia ja olen havainnut sen.
Kun näette, että WhatsApp lähettää tekstiviestin rekisteröidäkseen käyttäjän,
mutta jos et vastaa minuutissa WhatsApp antaa mahdollisuuden soittaa sinnulle.
Se on juuri se mitä painan. Nyt WhatsApp
soittaa uhrin puhelimeen, joka on lentokonetilassa, koska hän lähti matkalle
ja minä käytän Voicemailcracker ohjelmaa parametrillä message, joka mahdollistaa
uusimman viestin linkin hakemisen automaattisesti. Viimeinen parametri
on PIN-koodi jonka arvasimme Brute Force menetelmällä.
Ohjelma antaa minulle uusimman nauhoituksen URL-osoitteen, joka
toivottavasti -- tämä on nauhoitettu demo -- toivottavasti sisältää kaipaamamme koodin.
Katsotaan. Tässä on URL osoite. *puhelin hälyyttää*
Tietokoneen ääni: -- Uusi viesti! -- M.V.: Ohjelma keskustelee vastaajan kanssa
tällähetkellä. Puhelin: -- Varmistuskoodi on:
3 6 5 9 1 5. Varmistuskoodi on: 3 6 5 9 1 5. Varmistus--
M.V.: Näin helppoa. Kaappasimme juuri WhatsAppin ja -- tässä kelaan eteenpäin
vain näyttääkseni teille, että tämän pystyy tekemään.
*applodit* M.V.: Haluan tuoda esille, että WhatsApp
on erittäin turvallinen, päittäinsalaus ja muuta. On paljon asioita
joita voit huomata tästä hyökkäyksestä. Esimerkiksi sinulla ei olis mahdollista
nähdä aikaisempia viestejä, mutta voisit hyvin odottaa ja lähettää viestejä,
ryhmät tulisivat esiin. Joten kaappasit WhatsApp tilin. WhatsApissa on myös
digitaalinen sormenjälke, mutta kuka välittää siitä kun joku vaihtaa laitteen?
Olemmeko valmiit? Ei vielä. Koska totuus on se, että jotkut tutkijat puhuivat
tästä ongelmasta ennen ja palvelut pyrkivät vastaamaan.
Tämä on oikeastaan se mitä löysin muutamista palveluista.
Tätä minä kutsun käyttäjän vuorovaikutukseen perustuva suojaus.
Kun saat sen puhelun, joka antaa sinulle väliaikaisen koodin sinun oikeasti täytyy
painaa nappulaa saadaksesi koodi. Varmistuksia on kolmea erilaista, jotka
löysin testeissäni. Paina mitä tahansa näppäintä kuullaksesi koodi, eli kun saat
puhelun sinun tulee painaa ja sen jälkeen saat koodin. Paina sattumanvaraista
näppäintä, paina yksi, paina kaksi tai näppäile koodi.
PayPal vaatii koodin ja sen sijaan, että sinä saat koodin, niin
sinä näet koodin ja sinun tulee näppäillä koodi, kun saat puhelun ja tämän jälkeen
salasana vaihdetaan. Nyt haen teiltä
kaikilta apua. Voimmeko voittaa tämän tällä hetkellä suositellun suojauksen,
jonka tarkoituksena on estää tämän tämän kaltaiset hyökkäykset? Pelataan
peliä. Annan teille kaksi vinkkiä. Tässä tulee ensimmäinen. Ehkä tämä on tuttu,
mutta "Captain Crunch". Taas palaamme 80-luvulle, jotta voimme oppia heiltä
todella paljon, tätä käytetään luomaan tiettyjä ääniä tietyillä taajuuksilla
käytännössä -- voitte lukea tästä lisää -- saadaksenne ilmaiset kansainväliset puhelut
Hän siis luo äänen ja järjestelmä prosessoi ääneä.
Seuraava vinkki on, että huijasin kun teimme muistilistan, hyppäsin yhden yli,
joka oli tervehdysviesti ja se on hyökkäysvektori. Kysyn nyt teiltä kuinka
voimme ohittaa suojauksen, joka vaatii käyttäjän vuorovaikutusta, ennen kuin
saamme nauhoitettua koodin vastaajaan?
*Ehdotuksia yleisöstä, joista ei saa selvää* M.V.: Mitä sanoit? Oikei. Nauhoittaa DTFM [äänitaajuusvalinta]
äänitaajuuksia vastaajan tervehdysviestiin. Meillä on vastaajan hallinta, joten voimme
muokata tervehdysviestiä. Eli tämä toimii näin: Me muokkaamme tervehdysviestin
toistamaan äänitaajuusvalinnat mitä järjestelmä odottaa ja tämä toimii joka
ikinen kerta. Kaikista paras tässä on se mikä on erittäin hienoa kaikissa meissä,
jotka todella välittävät teknologiasta. Me haluamme sisäistää syvän osaamisen, koska
kun kysyin ihmisiltä, kun halusin heille näyttää tämän, että kuinka tämä suojaus
oikeasti toimii? He vastasivat sinun täytyy painaa näppäintä ja sitten sinä
tiedät, että saat vastauksksi koodin. Mutta se ei oikeasti ole totta. Se mitä
oikeasti tarvitsee tehdä on antaa oikea ääni, jota järjestelmä odottaa.
Ja se on eri mitä näppäimen painallus on, koska jos sinä sanot, että minun on
painettava näppäintä joka vaatii fyysisen pääsyn. Jos sinä sanot minun
täytyy antaa ääni, nyt me tiedämme, että tämä ei vaadi fyysistä pääsyä. Sen takia
hakkerit on niin makeita, koska me haluamme oikeasti tietää mitä tapahtuu
taustalla ja voimme käyttää sitä hyväksi. Miltä hyökkäysvektori näyttää?
Bruteforcetaan vastaajan PIN-koodi niin kuin aikaisemmin. Meillä on ainoastaan
ylimääräinen askel, joka on tervehdysviestin muokkaaminen.
Voicemailcracker voi tehdä sen sinulle. Kaapataan PayPal.
*naurua* M.V.: Vasemmalla näette, niin kuin aiemmin
arvasin vastaajan PIN-koodin. Oikealla aloitan salasanan nollauksen
tälle tunnukselle. Teen sen ja valitsen "soita minulle väliaikainen koodi".
Tässä tapauiksessa PayPal toimii erilailla, koska se näyttää minulle nelinumeroisen
koodin mikä minun täytyy syöttää kun saan puhelun, jotta voin nolalta salasanan
Nyt näette, että käytän tervehdysviesti parametriä. Parametri antaa minun syöttää
mitä haluan nauhoitettavaksi tervehdysviestiin. Tässä tapauksessa
numeron 6 3 5 3. Saatan olla erittäin monisanainen tässä demossa.
Viimeinen parametri on PayPal code ja syötän siihen 6 3 5 3. Nyt ohjelma
käyttää PIN-koodia kirjautuessaan vastaajaan, navigoi siellä ja muuttaa
tervehdysviestin nauhoitteen käyttäen äänitaajuusvalintaa joka vastaa 6 3 5 3 ja
tällä tavoin sen pitäisi pystyä hämäämään varmistus soittoa. Tässä tapauksessa pyydän
soittamaan uudelleen, koska minulla ei ollut tarpeeksi aikaa tehdä tätä.
Nyt 3 2 1 meidän pitäisi saada PayPal tili haltuun. Siinä se on.
Nyt voimme asettaa salasanan. *Applodit*
M.V.: Kiitos. Näytän teille muita haavoittuvaisia palveluita. Mennään tämä
nopeasti koska olen huolissani, että minulta loppuu aika. Mainitsen Alexa top100
palveluita, en suosi mitään, mutta... Eli palvelut jotka tukevat salasanan
nollaamista puhelun välityksellä: PayPal, Instagram, Snapchat, Netflix, Ebay,
LinkedIn. Olen vieläkin Facebookissa. Mitä voin sanoa? Kaksivaiheinen
tunnistautuminen puhelimella suurten alustojen kuten Apple, Google, Microsoft, Yahoo...
Varmistus: Käytännössä et rekisteröidy käyttäjätunnuksella ja salasanalla
palveluihin kuten WhastApp tai Signal, vaan käytät suoraan puhelinnumeroa.
Niin kuin näimme aikaisemmin ja rekisteröidyit puhelinsoiton välityksellä
tai tekstiviestillä. Nämäkin voi kaapata. Twilio, eli palvelu jota käytän
hyökkäyksessäni, tämä on itseasissa aika hienoa koska voit omistaa[ostaa] numeron ja
minä voin verifioida sen vastaanottamalla puhelun, jolloin omistan sinun numerosi ja
voin soittaa puheluita ja tekstiviestejä sinun puolestasi, kaiken laillisesti? Vain
sen takia, että painoit yksi. Google Voice on mielenkiintoinen palvelu, koska sitä
käyttää moni huijari. Tässä on sama: sinun täytyy verifioida omistajuus ja
voit tehdä nämä puhelut huijataksesi, mutta etsin mitkä muut palvelut hyötyvät
tästä? Tämä on erittäin yleistä San Franciscossa, josta olen.
Voit päästää ihmisiä sisään koska vaan. He syöttävät huoneiston numeron
ja sinun puhelin soi ja painat mitä tahansa näppäintä avataksesi oven.
Nyt me puhumme fyysisestä turvallisuudesta.
Olen nähnyt näitä myös toimistoissa. Kaikki toimivat tällä tavalla, koska he
haluavat, että on mahdollista -- vuokralaisia, jotka menevät ja tulevat --
vaihtaa numerot nopeasti. Eli ihmisten sisään päästäminen toimii puhelimella.
Suosikkini on Concent, koska aina kun ajattelemme Concent:tia me ajattelemme
lakimiehiä ja asiakirjojen allekirjoitusta ja kaikkia näitä vaikeita asioita.
Sain selville, että näitä LocationSmart palveluita ei enää ole ja nyt näette miksi...
Tämä oli hetki sitten uutisissa, koska
Brian Krebs kirjoitti hyvän artikkelin tästä.
Nyt saatte kuunnella heidän YouTube kanavaltaan, kuinka LocationSmart toimii.
Video 1. mies: Näyttö jonka olet jamassa, jonka juuri nyt näette on demo joka meillä
on meidän web-sivuilla osoitteessa locationsmart.com/try ja olen syöttänyt
nimen, sähköpostin, matkapuhelinnumeron ja sivusto pyytää lupaa soittamalla minun
matkapuhelimeeni ja tämän jälkeen sivusto näyttää sijaintini. Aloitetaa,
hyväksyin ehdot ja painan paikanna.
Nyt järjestelmä soittaa minulle ja kysyy luvan.
*puhelin värisee, soittoääni* Video 2. mies: Heh, kiva soittoääni.
M.V.: Eikä ole Puhelin: Kirjautuaksesi
Location Smart -palveluihin, paina yksi tai sano Yes.
Toista painamalla 2 tai sanomalla Repeat V1M: Yes
Puhelin: Onneksi olkoon. Olet ottanut käyttöön Location Smart -palvelun.
Näkemiin M.V.: Niin kuin näitte, tämä palvelu,
tällä Web-sivulla oli ilmainen demo, joka sallii syöttää puhelinnumeron
-- omasi tietysti -- tämän jälkeen saat puhelun jonka välityksellä annat oikeudet
näppäilemällä numeron yksi. Joku voi siis paikantaa ja seurata sinua
-- tarkoitan, että kysyin heiltä -- jopa 30 päivää, reaaliaikaisesti. Nyt tiedätte
mikseivät he ole enää olemassa. *Applodi*
M.V.: Avoin lähdekoodi.. *Applodit*
M.V.: Avoin lähdekoodi. Tämä oli toteutettu operaattorien luvalla. Tämä ei ollut mikään
hämärä juttu. Tämä oli oikea palvelu. Halusin julkaista koodin, koska haluan,
että te voitte verifioida mitä tarkoitan on totta ja toivottavasti edistää
alan vastaajia turvallisempiin ratkaisuihin.
Me vaadimme operaattoreita tekemään turvallisemmin. En kuitenkaan halunnut
tarjota työkalua, joka toimii täysin ja kuka tahansa voi helposti alkaa, niin kuin
näimme, murtaa PIN-koodeja. Varsinkin kun huomasin, että todella monella on
oletus PIN-koodit käytössä. Poistin siis bruteforce menetelmän. Ohjelmalla voit
tehdä omia kokeiluja. Voit kokeilla tervehdysviestiä, voit kokeilla
vastaajaviestiä ja kaapata tilejä palveluista.
Työkalu sallii siis kokeilemisen omiin laitteisiisi. En anna teille koodia, jolla
voitte murtaa jonkun muun PIN-koodin. Voitte vapaasti mennä minun GitHubiin.
Niin kuin kaikki keskustelut tulevat suosituksiin, tiedän mitä ajattelette.
Joku tulee kaiken tämän kanssa foliohattu päässä ja sinä silti ajattelet "ok, mutta
kukaan ei tule perääni. Minulla ei ole mitään salattavaa" tai jotain muuta
vastaavaa. Haluan silti antaa syyn miksi sinun pitäisi silti välittää tästä ja miksi
meidän täytyy tehdä paremmin. Koska operaattorit määrittävät oletus
PIN-koodeja? Kyllä, me totesimme sen. Onko oletus PIN-koodien testaaminen halpaa,
nopeaa, haivaitsematonta ja automatisoitavaa? Kyllä se on.
Onko tervehdysviestin muuttaminen automatisoitavissa? Kyllä se on.
Onko viimeisimmän vastaaja viestin hakeminen automatisoitavissa? Kyllä se on.
Voiko puheesta kääntää tekstiksi, että saan soittamani äänen tekstiksi?
Kyllä. Twilio mahdollistaa tämän myös. Pystyykö tilin kaappaamisen automatisoimaan?
Tottakai pystyy ja Seleniumilla voi automatisoida käyttöliittymän. Tai voit
käyttää välityspalveinta ja hyödyntää APIa sekä tehdä sen itse. Eli on vain
ajankysymys, että joku toteuttaa kaikki nämä mitä tänään näytin teille askel
askeleelta ja rupeaa käymään puhelinnumero kerrallaan läpi koettaen oletus PIN-koodia
automaattisesti kaapaten palvelun kuten WhatsApp, PayPal ja muut. Voit luoda,
et virusta, mutta voit kaapata paljon laitteta tekemättä mitään. Suosituksia
online palveluille. Älä käytä automaattista puhelua tietoturvamielessä. Tunnista
vastaajat ja sulje yhteys. Tarkoitan tämä ei ole kovin tarkkaa ja sitä voi huijata.
Vaadi käyttäjän toimia ennen tunnuksen toimittamista. Juuri näytin kuinka
tämän voi ohittaa sillä toivolla, että operaattorit estävät DTMF äänitaajuusvalinnat
tervehdysviesteistä. En näe syytä miksi niiden pitäisi olla sallittuja. Suosituksia
operaattoreille. Kaikista tärkein asia: Estäkää DTMF valinnat tervehdysviesteistä,
estäkää suora numerot vastaajiin tai ainakin älkää päästäkö kirjautumis
valintaan. Ei ole syytä miksi pitäisi päästä suoraan vastaajaan jättämään
viesti. Sitten kuitenkin pääsen kirjautumaan painamalla tähteä.
Vastaaja on estettynä oletuksena. Tämä on erittäin tärkeä ja voidaan aktivoida vain
puhelimesta tai online palvelusta erityis koodilla. Hyvä.
Nyt minulla jäi aikaa kysymyksille. Ei oletus PIN-koodeja. Oppikaa saksalaisilta
operaattoreilta: älkää salliko yhteisiä PIN-koodeja, tunnista ja estä bruteforce hyökkäykset
älkää antako kokeilla useita PIN-koodeja kerralla. Suositukset teille, jotka ovat
loppujen lopuksi tärkeitä. Kytkekää vastaaja pois päältä jollette käytä sitä
Huomasin, että jotkut operaattorit sallivat vastaajan uudelleen aktivoinnin
suora numerosta käsin. Se on aika huono. Käyttäkää mahdollisimman pitkää generoitua
PIN-koodia. Älä anna puhelinnumeroasi online-palveluihin, jollei se ole
välttämätöntä tai ainoa tapa kaksivaiheiselle tunnistautumiselle.
Kaksivaiheinen tunnistautuminen on tärkeämpi. Käytä virtuaalista
puhelinnumeroa estääksesi OSINT tiedustelu. Esimerkiksi Google Voice puhelinnumeroa,
ettei kukaan voi saada selville puhelinnumeroasi käyttämällä vaihda
salasanaa -toimintoa tai vaihtamalla numerosi omaan SIM-korttiinsa.
Käytä vain 2FA sovelluksia. Tykkään lopettaa esityksen yhteenvetoon.
Automaattiset puhelut ovat yleinen tapa salasanan vaihtoon, 2FA:n ja muihin
palveluihin. Kaikki nämä voidaan kaapata hyväksikäyttämällä vahoja haavoittuvuuksia
ja nykyistä technologiaa vastaajissa. Kiitoksia paljon! Danke Schön, CCC.
*applodit* Herald Angel: Kiitos Martin.
Kysymysten aika. Jos sinulla on kysymys tai netissä on jollain kysymys, niin hakeudu
mikrofonille. Missä on mikrofoni? Sinulla se on. Kyllä. Sinä olit musta ja
mikrofoni oli musta. Voisit aloittaa ja sen jälkeen kysymys netistä.
K: Minulla on kysymys. Mainitsit, että puhelimen pitää pois päältä. Soittaisitko
samaan aikaan puhelimeen, mitä se on englanniksi, -- besetzt? -- niin kuin
linja olisi varattu. Sanotaan että soittaisin uhrille. Soittaja toteisi, että linja olisi varattu
ja puhelu ohjautuisi vastaajaan, eikö?
M.V.: Hyvä kysymys. Luulen että kysymys on siitä, että jos olet jo puhelimessa ja
joku muu soittaa sinulle, taktiikka olisi: Minun pitää keksiä tarinaa, että uhri
pysyisi linjalla kun käynnistän muut soitot... se varmaan toimisi. Kokeilin
sitä, mutta ongelma oli se, ei ehkä kovin iso ongelma,
että puhelimet tukevat kahta soittoa. Puhelin antaa äänimerkin, jos joku muukin
yrittää soittaa sinulle kesken puhelun. Mutta ehkä voisit soittaa enemmän. Tätä
tarkoitin kun puhuin puheluiden tulvasta. Siinä tapauksessa yritin vain käynnistää
kaikki puhelut samaan aikaan. Ja jos uhri vastaa puhelimeen, en välitä siitä, mutta
se on saman kaltainen tilanne minkä mainitsit ja se on mahdollinen.
K: Ok, Kiitos. M.V.: Jees
Herald: Kysymys internetistä, ole hyvä. Internet: Toimiiko tämä puheluiden kanssa
jotka aloittavat koodin sanomisen heti, tuleeko koodi nauhoitetuksi?
M.V: Jos ymmärsin kysymyksen oikein, että kun vastaaja vastaa puheluun
automaattinen järjestelmä sanoo koodin heti.
Uskoisin että tämä on kysymys?
H: Emme tiedä, se on internetistä.
M.V.: Jos tämä oli kysymys, luulen
koska tervehdysviesti on yleensä noin 15 sekuntia ja nauhoituksen alkaessa
puhelu joka kertoo koodin on jo mennyt.
Kun tekee oman tervehdysviestin, joka on yhden sekunnin mittainen.
En tunnista tätä ongelmaa. Voit nauhoittaa DTFM äänitaajuusvalinta
viestin kahteen sekunttiin. H: Naiset ensi joten seuraavaksi sinun
kysymys. K: Puhuit kuinka opit tämän kaiken
lukemalla verkkolehtiä. Mitä ne ovat nimeltään ja kuinka löydän niitä?
M.V.: Tämä on paras kysymys minkä olen koskaan kuullut ja se ansaitsee applodit,
oikeasti. Tykkään siitä, että sinä haluat myös oppia tästä. Se on erittäin
fantastista. Phrack web-sivu on paras lähde. Luulen, että
kaikki täällä on samaa mieltä. Googleta vain "Phrack Magazine", siellä on
paljon mielenkiintoista tavaraa, josta me voimme oppia tänäpäivänä.
Q: Onko muita lähteitä?
M.V: Tykkään lukea Twitteristä tietoturva uutisia, ne ovat erittäin ytimekkäitä
ja saat sen 140 merkin tiivitelmän. Jos kiinnostun näkemästäni, niin luen
koko jutun. Kannattaa googlettaa suosituimmat tietoturva henkilöt
joita alat seuraamaan. Brian Krebs on loistava. Tämä myös riippuu teknisen osaamisesi
tasosta. Eri henkilöt eri tasoille. Jos tämä ei kinnosta niin erikoistuneet blogit
ja lehdet. K: Selvä, kiitos. M.V.: Kiitos.
H: Ja sinun kysymys seuraavaksi. K: Minulle ratkaisu on selkeä:
kytken vastaajan vain pois päältä. Mutta ajattelen sukulaisiani, jotka ovat ehkä
hieman laiskoja tai eivät välitä käyttää kaksivaiheista tunnistautumista. Mieleeni
tuli, että voisinko helposti muuttaa ohjelmaasi siten, että se kytkisi
vastaajat automaattisesti pois päältä ja generoisi PIN-koodit arvalla?
M.V.: Voit automatisoida kytkemään PIN- koodin kyselyn pois päältä. En tiedä
miksi esimerkiksi Vodafone sallii tämän. Kytkeä vastaaja pois päältä... en usko..
en ole kokeillut. Sinun täytyy soittaa IT-osastolle. Se olisi erittäin hienoa
tehdä se. Olisi erittäin siistiä. Hyvä kysymys. Ehkä voit kytkeä sen pois
päältä, jos voit kytkeä sen päälle. Kyllä. H: Sinun kysymyksesi.
K: Estikö Twilio sinut tai huomasivatko he mitä teit?
M.V.: Sain muutamia sähköposteja, mutta ne olivat ok. Täytyy sanoa.
Selitin heille mistä olen kotoisin, annoin heille henkilötietoni...
en piilottanut mitään. Oikeastaan jouduin maksamaan heille aika paljon
puheluista, jotka tein kun tein tutkimusta. En piilottanut henkilöllisyyttäni ollenkaan.
He siis huomasivat, että soitin monia puheluita. Eli heillä on jonkin näköinen
tunnistus, jos puheluiden määrät ovat suuria, mutta Twilio ei ole ainoa palvelu.
Eli voit vaihtaa palveluiden välillä, skaalata, muuttaa soittajan numeroa
ja lukuisia muita asioita.
H: Yksi kysymys täällä. K: Terve. Puhuit, että olet huomaamaton
kun teet soitot suoraan vastaajan suora numeroon.
Sakasassa on erittäin yleistä, että jos joku soittaa suoraan sinun vastaajaan
saat siitä tekstiviestin vaikka he eivät jättäisikään viestiä. Kuitenkin luulen,
että on olemassa joku dokumentoimaton valikko, josta tämän voi kytkeä pois.
Oletko tutkinut tätä? M.V.: En ole tutkinut tätä.
Kysymys on yleensä saksalaisilla operaattoireilla se, että saat
tekstiviestin, kun saat puhelun. Mietin... kokeet joita tein saksalaisilla
operaattoreilla, sain tekstiviestin, jos jätin viestin, en silloin kuin joku vain
soitti. Luulen, että tarkoitat vastaamatonta puhelua, sen tapaista
ilmoitusta. En ole siitä varma. Mitä haluan sanoa on, että voit tehdä
tämän silloin kun henkilö on offline-tilassa pitkällä matkalla ja voit
ajoittaa hyökkäyksen. Tämä voisi olla hyvä, että hyökkäystä ei ajoita mihinkä
tahansa aikaan, vaan voit ajoittaa hyökkäyksen ja kun henkilö saa
miljoonan tekstiviestiä on liian myöhäistä K: Kiitos.
M.V.: Okei. H: Yksi kysymys täällä, ole hyvä.
K: Kiitos. Applen puhelimilla voit
aktivoida jonkin näköisen visuaalisen vastaajan. Estäisikö tämä hyökkäystä
toimimasta.. vai? M.V.: Ei oikeastaan, luulen että
hän oli australialainen tutkija joka perehtyi visuaaliseen vastaajaan ja hän
sai selville, että se käyttää IMAPia, jos muistan oikein, protokollaa, ja
joillekkin operaattoreille hän pystyi luomaan bruteforce hyökkäyksen koska
tunnistautuminen ei ollut samalla PIN- koodilla kuin soitossa. Mutta hän löysi,
että ainakin yksi operaattori Australiassa oli haavoittuvainen visuaalisen vastaajan
protokollan kautta. Tarkistin saksalaisia operaattoreita. Tein sen saman lailla kuin
hän oli tehnyt nähdäkseni, että olisiko se mainitsemisen arvoinen täällä.
En löytäny haavoittuvuutta, mutta se ei kerro koko totuutta.
H: Vielä viimeinen kysymys. K: Kiitoksia esityksestä. Mikä on sinun
suosituksesi amerikkalaisille operaattoreille, jotta he voivat suojautua
tätä hyökkäystä vastaan? M.V.: Minulla oli kalvo siitä. Minulle
tärkein asia on se mitä jotkut saksalaiset operaattorit tekevät, tykkään siitä paljon,
että nollattu salasana lähetetään sinulle tekstiviestillä, kun joku arvaa PIN-koodin
kuusi kertaa väärin. Jos sinulla on lukittu laite hallussa voit saada
PIN-koodin seville, jos viestin esikatselu on käytössä.
Mutta sitten ei ole kyseessä etähyökkäys, eli bruteforce tunnistus ja sammutus.
Tiedämme, että soittajan numero ei toimi kunnolla Telecomilla koska pystyin ohittamaan
sen. Tiedän tämän koska tein testejä HLR tietueiden kanssa
Voit oikeastaan päätellä laitteen tyypin,
jos kyseessä on virtuaalinumero.
Operaattorien tulisikin tarkkailla laitteen tyyppiä, joka yrittää soittaa.
Jos tunnistetaan virtuaalinen numero, punainen lippu ylös. Jos se ei ole,
en usko että kellään on.... Ehkä valtiolla on 3333 laitetta, jotta he voivat kokeilla
10000 eri yhdistelmää. Kokeilet kolme PIN-koodia samaan aikaan ja sinulla täytyy
olla 3333 SIM-korttia ja kaikkien kiinni oikeissa laitteissa.
Tämä rajoittaisi ongelmaa aika paljon. Toinen keino on estää DTFM
äänitaajuusvalinta tervehdysviesteistä.
H: Kiitos Martin. En ole koskaan antanut yhtään puhelinnumeroa yhdellekkään
alustalle ja nyt sinun ansiostasi minä tiedän miksi. Lämpimät applodit Martin Vigolle!
M.V.: Kiitos.
*Applodit*
*musiikkia*
[Translated by Ville Kouhia (ITKST56 course assignment at JYU.FI)]