A Tom's Hardware interjút készített Charlie Miller egyik társával, Dino A. Dai Zovi-al. Az interjú első részét alant olvashatjátok:
Köszönjük, hogy elfogadtad a felkérésünket! Mesélnél egy kicsit magadról?
Számítógépes biztonsági szakértő és független biztonsági kutató vagyok. A személyes tapasztalatom a behatolásteszteléstől kezdve a szoftverbiztonsági auditon keresztül a biztonságmenedzsmentig terjed. Charlie Millerrel társszerzője vagyok a Mac hackerek kézikönyvének. Gyakran adok elő biztonsági konferenciákon a sebezhetőségkihasználási technikákra vonatkozó kutatásaimról, a 802.11-es vezetéknélküli kliensek biztonságáról és a virtualizáció alapú rootkitekről. Az offenzív biztonságra öszpontosítok, mert úgy hiszem, hogy a támadók szemével kell látnunk ahhoz, hogy biztonságosabb rendszereket tervezhessünk.
Ez az "offenzív" szemlélet népszerű manapság?
Ritkaswágászámba megy, és sokszor tabunak számít a gyakorlatban dolgozók körében. Bár néhány konferencián, pl. a BlackHat-en vagy CanSecWest-en nagyon sok előadás szól a biztonsági gyengeségekről, más helyeken, pl. az RSA Expo-n ezeket a témákat sokkal kevésbé érintik.
Ezt a különbséget észre sem vettem. Most már érthető, hogy miért tűnik úgy, hogy a BlackHat-en és a CanSecWest-en mutatják be a legérdekesebb és leginnovatívabb munkákat. Hogyan vágtál bele a biztonsági bizniszbe?
A középiskolában kezdtem képezni magam, és azóta sokféle tanácsadói munkát végeztem, leggyakrabban behatolásteszteket helyi és távoli cégeknél. Ez azonban nem hozott elég pénzt a főiskolához, szóval részmunkaidőben Unix rendszeradminisztrátorként is dolgoztam. Az iskolában és a munkában is a biztonságra koncentráltam, és egy idő után külsős tanácsadóként kezdtem dolgozni egy kutatólaboratórium Unix adminisztrációs részlegének, akiknek biztonsági elemzést végeztem. Ezután bekerültem az ottani "Vörös csapatba"*, majd felkértek külső cégek szimulált támadással történő biztonsági vizsgálatára is. Miután lediplomáztam New Yorkba költöztem, ahol az @stake-nél helyezkedtem el, egy biztonsági cégnél, melyet később megvett a Symantec.
[* A Red Team-ek olyan csapatok, melyek a (nem csak IT-) biztonsági teszteléseket a valódi támadók módszereit szimulálva, sokszor gyakorlatilag kötöttségek nélkül végzik]
Szerényen fogalmaztál: Valójában a Sandia National Laboratiories' Information Design Assurance Red Team (IDART) tagja voltál. Ezt a csapatot hívja a Védelmi-, Pénzügy-, vagy Belügyminisztrériumnál meg akarnak győződni róla, hogy a Die Hard 4 vagy a 24 jelenetei nem történhetnek meg a valóságban.
Tudom, hogy nem mehetsz bele a részletekbe, de ez egy teljes értékű Vörös Csapatos elemzés volt? Más szóval: a célpont nem tudott a tesztről, és a csapatnak minden minden eszköz rendelkezésére állt? Mondjuk otthagyhattatok egy trójaival megpakolt USB kulcsot egy parkolóban, és várhattatok, mire valaki jó szamaritánus módjára megpróbálja kideríteni, ki is hagyta el, és bedugja a gépébe?
Ezt sem megerősíteni sem cáfolni nem tudom
Az @stake is egy különleges cég volt, melynek kutatási részlege nagyrészt a L0pht Heavy Industries bekebelezésével állt össze. A L0pht az egyik úttörő "szürke kalapos" csapat volt. Hagyományosan fehér- és feketekalapos hackerekről beszélünk. A fehér kalaposok a jó-, a feketék a rosszfiúk.
A probléma az volt, hogy sok fehérkalapos túl jónak és nemesnek tartotta magát ahhoz, hogy a feketekalaposokkal törődjön, ennek eredményeként viszont csak korlátozott alapokra építkezhettek. A szürkekalapos koncepció az, hogy csak úgy érthetjük meg az összes fenyegetettséget, ha megértjük őket. Ez annak idején a rosszfiúkkal történő megalkuvást, de gyakorlatilag a veszélyek megértését is jelentette, amely a védekezési módok létrejöttéhez is hozzájárult.
Milyen volt itt dolgozni?
Az @stake alkalmazta a szakma legtehettségesebbjeinek egy részét, és hatalmas lehetőség volt a legjobbaktól tanulni. Szerencsés voltam, hogy néhány nagy klien leg izgalmasabb és legfontosabb projektjén dolgozhattam. Erről a munkámról sme nagyon beszélhetek, leszámítva, hogy legnagyobb részt hálózati, webes, és szoftverbiztonsági teszteket végeztem, valamint csináltam némi fejlesztői munkát és biztonsági figyelemfelkeltő tréningeket is.
Hát, elég a múltból, mesélj a mostani munkádról!
Erről még nem beszélhetek.
Nem vagyok meglepve... Elmondanád milyen számítógépen dolgozol elsődleges rendszerként?
Több gépet használók rendszeresen, de ezek nagy része Mac. A főbb rendszereim között van egy MacBook Pro és egy Mac Pro. Nagyjából 2001 nyara óta Mac OS X-et használok a személyes rendszereimen.
Miért éppen az oly' kevéssé biztonságos Mac?
Mindhalálig Unix felhasználó maradok, és a Mac OS X a legjobban működő és legkényelmesebb Unix-szerű rendszer amit használtam. Hagyományos Unix környezetben programozhatok, megnézhetek egy DVD-t és használhatoma Microsoft Office-t ugyanazon a rendszeren. A rendszer működik, és hagyja elvégezni a munkámat.
Azért is kezdtem a Mac biztonságával foglalkozni, mert mindig az volt előttem, és élveztem belehackelgetni. De anyagi érdekemben i sáll, hogy egy biztonságosabb rendszert használjak azokon a rendszereken, melyeken az adataimat tárolom.
Korábban beszéltem Charlieval, aki hasonlóan gondolkodott. Nem vagyok biztonsági kutató, de technikai embernek tartom magam, és Vistát és Fedora Linuxot használok. A személyes rendszeremen most váltottam Mac-re. Sok csalódott olvasónk vádol minket azzal, hogy megvett minket az Apple.
Ezekkel a cikkekel az egyik célom az, hogy a dolgokat kevésbée fekete-fehéren mutassam be (PC vs Mac). A szürkekalaposok is sokkal kifinomultabb elemzést képesek végezni a csata mindkét térfelét vizsgálva, és ugyanez elmondható a többféle operációs rendszer használatára is.
A sokszínűség nagyobb biztonságot ad: ha az adataidat többféle rendszeren szórod szét, kiseeb az esélye, hogy egy támadó az összeshez hozzáfér. Hacsak nem egyikről a másikra jelentkezel be, vagy ugyanazon a hálózaton tartod őket. Valójában a legtöbb behatolás manapság a webböngészőkön keresztül történik, tehát egy átlagos malware támadás nem valószínű, hogy be tud férkőzni a hálózaton található, más oprendszer futtató részeibe.
Az előadásaidban mindig kihangsúlyozod a sebezhetőség és a kockázat közti különbséget. El tudnád magyarázni ezt a mi olvasóinknak is?
A sebezhetőség a rendszer egy olyan gyengesége, melyet egy támadó potenciálisan kihasználhat. A sebezhetőség kockázata annak az esélye, hogy egy támadó valóban előnyre tesz szert ezen keresztül. Úgy is szoktam fogalmazni, hogy ez a "safety" és a "security" közti különbség, mivel ez könnyebben érthető a laikusok számára [kár, hogy magyarul nem nagyon lehet különbséget tenni a két kifejezés között...].
A házad ajtajának nyitva hagyása semmiképpen sem biztonságos [nem "secure"], de attól függően hogy milyen környéken laksz, ez vagy kockázatos vagy nem [vagy "safe", vagy nem "safe"].
Fontos, hogy egy rendszer biztonsága összhangban álljon a kockázatokkal. A védekező oldal persze mindig csak a támadók nyomában kullognak amíg helyesen előre nem látják a kockázatokat. Nem sok értelme van kivárni míg tömeges Mac OS X támadások jelenjenek meg mielőtt elkezdenénk integrált védelmet kifejleszteni ellenük. Míg az internetes támadások következő generációját nem látjuk előre, addig a web-alapú malware a mai valóság.
És mi a különbség egy exploit ["kihasználás"] és egy sebezhetőség között?
A sebezhetőség a rendszer egy olyan gyengesége, melyet egy támadó potenciálisan a maga előnyére fordíthat. Az előnyszerzés mikéntjét nevezzük kihasználásnak, és egy program ami ezt a feladatot elvégzi, hívjuk úgy, hogy "exploit". A valóségban nem minden sebezhetőséget lehet könnyen és megbízhatóan kihasználni.
Szoftver exploitálási gyakorlat nélkül gyakran igen nehéz eldönteni, hogy egy sebezhetőség kihasználható-e. Gyakran azokat a sebezhetőségeket tekintjük kihasználhatónak, melyekről tehetséges exploit fejlesztők bebizonyították, hogy azok. A kihasználhatóság mértékét az adja, hogy az elemző, aki a hibát találta, ki tudja-e használni azt.