Ohjelmointi

BadUSB: n hyväksikäyttö on tappavaa, mutta harvat saattavat osua

Yhdeksän vuotta sitten loin mielestäni maailman ensimmäisen USB-maton. Pelaamalla USB-muistitikulla ja sijoittamalla siihen piilotetun tiedoston, pystyin tekemään minkä tahansa tietokoneen, johon "tartunnan saanut" USB-asema oli kytketty, levittämään tiedoston automaattisesti isäntätietokoneelle ja sitten takaisin, kun uusi USB laite oli kytketty.

Se toimi digitaalikameroissa ja matkapuhelimissa. Pystyin saamaan minkä tahansa USB-laitteen - itse asiassa minkä tahansa irrotettavan medialaitteen - matotiedostoni ajamiseksi. Minulla oli hauska leikkiä sen kanssa.

Ilmoitin havainnosta työnantajalleen ja mukana oleville myyjille; he puolestaan ​​pyysivät hiljaisuuttani huomattavan pitkän ajan, jotta he voisivat sulkea reiän. Olin suunnitellut esitelläni havainnot suuressa kansallisen turvallisuuden konferenssissa, ja minun oli valittava ansaitun hakkereiden luottamus tai yleinen turvallisuus. Menin jälkimmäisen kanssa.

Totta puhuen, en halunnut kiusata tätä myyjää, koska se oli mahdollinen tuleva asiakas tai työnantaja. Reikä oli paikattu, eikä yleisö ollut viisaampi. Monta vuotta myöhemmin olin yllättynyt nähdessäni hyvin samanlaisen menetelmän, jota käytettiin Stuxnet-haittaohjelmaohjelmassa.

Mutta kokemukseni sai minut koskaan luottamaan kytkettyyn laitteeseen uudelleen. Sittemmin en ole koskaan kytkenyt USB-laitetta tai siirrettävää mediakorttia omistamaani tietokoneeseen, joka ei ole syntynyt ja pysynyt hallinnassani. Joskus vainoharhaisuus on tarkoituksenmukaista.

BadUSB on vakava uhka nyt luonnossa

Se tuo minut tänään. Nyt GitHubiin on lähetetty BadUSB: n lähdekoodi (jota ei pidä sekoittaa faux-haittaohjelmiin nimeltä BadBIOS), mikä tekee kokeilustani yhdeksän vuotta sitten näyttävän lapsen peliltä. BadUSB on todellinen uhka, jolla on vakavia seurauksia tietokonelaitteiden syöttölaitteille.

BadUSB kirjoittaa - tai korvaa - USB-laitteen laiteohjelmakoodin haitallisten toimien suorittamiseksi. BadUSB: n löysi ensimmäisen kerran heinäkuussa 2014 Berliinin Security Research Labs -tietokonetieteilijä, joka esitti löytönsä Black Hat -konferenssissa.

Hyökkäystä pelätään, koska kaikki perinteiset menetelmät väärinkäytön tarkistamiseksi USB-muistilaitteelta eivät toimi. Haitallinen koodi on istutettu USB: n laiteohjelmistoon, joka suoritetaan, kun laite kytketään isäntään. Isäntä ei tunnista laiteohjelmakoodia, mutta laiteohjelmiston koodi voi olla vuorovaikutuksessa isäntätietokoneen ohjelmiston kanssa ja muokata sitä.

Haitallinen laiteohjelmakoodi voi istuttaa muita haittaohjelmia, varastaa tietoja, ohjata Internet-liikennettä ja muuta - kaikki samalla ohittaen virustentorjunnan. Hyökkäystä pidettiin niin kannattavana ja vaarallisena, että tutkijat vain demoivat hyväksikäyttöä. Suurella varovaisuudella he eivät julkaisseet todistuskoodia tai tartunnan saaneita laitteita. Mutta kaksi muuta tutkijaa suunnitteli hyödyntämisen, loi esittelykoodin ja julkaisi sen maailmalle GitHubissa.

Osoita draamaa, joka on jo ilmestynyt uutis- ja kuluttajateknisissä sivustoissa, kuten CNN, Atlanta Journal-Constitution, Register ja PC Magazine, huutamalla: "Maailma tulee olemaan täynnä haitallisia USB-laitteita!"

Miksi BadUSB-hyödyntäminen menee paljon pidemmälle kuin USB

Ensinnäkin on tärkeää tunnistaa, että uhka on todellinen. USB-laiteohjelmisto voi muokata tekemään niin kuin tutkijat väittävät. Hakkerit ympäri maailmaa luultavasti lataavat proof-of-concept -koodin, tekevät haittaohjelmia USB-laitteista ja käyttävät proof-of-concept-koodia käynnistyskohtana teoille, jotka ovat paljon haitallisempia kuin tutkijoiden testikäyttö.

Toiseksi ongelma ei rajoitu USB-laitteisiin. Itse asiassa USB-laitteet ovat jäävuoren huippu. Kaikista tietokoneeseen liitetyistä laitteista, joissa on laiteohjelmakomponentti, voidaan todennäköisesti tehdä haitallisia. Puhun FireWire-laitteista, SCSI-laitteista, kiintolevyistä, DMA-laitteista ja muusta.

Jotta nämä laitteet toimisivat, niiden laiteohjelmisto on lisättävä isäntälaitteen muistiin, jossa se sitten suoritetaan - jotta haittaohjelmat voivat helposti mennä mukana. Saattaa olla laiteohjelmistolaitteita, joita ei voida hyödyntää, mutta en tiedä syytä miksi ei.

Laiteohjelmisto on luonnostaan ​​vain piille tallennettuja ohjelmisto-ohjeita. Perustasolla se ei ole mitään muuta kuin ohjelmointi. Ja laiteohjelmisto on välttämätön, jotta laitteisto voi puhua isäntätietokoneen kanssa. Laitteen API-määrittely kertoo laitteen ohjelmoijille kuinka kirjoittaa koodi, joka saa laitteen toimimaan kunnolla, mutta näitä spesifikaatioita ja ohjeita ei koskaan koota turvallisuutta ajatellen. Ei, heidät kirjoitettiin saadakseen esineitä keskustelemaan keskenään (aivan kuten Internet).

Haitallisen toiminnan ottaminen käyttöön ei vaadi monia ohjelmointiohjeita. Voit alustaa useimmat tallennuslaitteet tai "tiilittää" tietokoneen kourallisin ajoin. Pienin koskaan kirjoitettu tietokonevirus oli vain 35 tavua. Hyötykuorma GitHub proof-of-concept -esimerkissä on vain 14 kt, ja se sisältää paljon virhetarkistuksia ja hienokoodausta. Uskokaa minua, 14K on pieni nykypäivän haittaohjelmien maailmassa. Haittaohjelmia on helppo upottaa ja piilottaa mihin tahansa melkein laiteohjelmiston ohjaimeen.

Itse asiassa on erittäin hyvät mahdollisuudet, että hakkerit ja kansakunnat ovat jo pitkään tienneet ja käyttäneet näitä laiteohjelmistojen takaovia. NSA-tarkkailijat ovat spekuloineet tällaisista laitteista pitkään, ja nämä epäilyt vahvistivat äskettäin julkaistut NSA-asiakirjat.

Pelottava totuus on, että hakkerit ovat hakkeroineet laiteohjelmistoja ja pakottaneet heidät luvattomiin toimiin niin kauan kuin laiteohjelmisto on ollut käytössä.

BadUSB on suurin uhka, jonka voit ottaa pois paniikkiluettelostasi

Tosiasia on, että sinun olisi pitänyt olla ainakin hermostunut mistään tietokoneeseen liitetystä laiteohjelmistolaitteesta - USB: stä tai muusta - pitkään. Olen ollut sellainen melkein vuosikymmenen ajan.

Ainoa puolustus on, että kytket laitteisto-ohjelmia luotettavilta toimittajilta ja pidät ne hallinnassasi. Mutta mistä tiedät, että kytkemäsi laitteet eivät ole vaarantuneet massaan tai että niitä ei ole muutettu toimittajan ja tietokoneidesi välillä? Edward Snowdenin vuodot viittaavat siihen, että NSA on siepannut matkalla olevia tietokoneita kuuntelulaitteiden asentamiseksi. Varmasti muut vakoojat ja hakkerit ovat kokeilleet samaa taktiikkaa tartuttaakseen komponentteja toimitusketjussa.

Silti voit rentoutua.

Haitallinen laitteisto on mahdollista, ja sitä voidaan käyttää joissakin rajoitetuissa tilanteissa. Mutta se ei todennäköisesti ole laajaa. Laitteistohakkerointi ei ole helppoa. Se vie paljon resursseja. Eri sirusarjoille käytetään erilaisia ​​käskyjoukkoja. Sitten on ärsyttävä ongelma saada aiotut uhrit hyväksymään haitalliset laitteet ja asettamaan ne tietokoneisiinsa. Erittäin arvokkaille kohteille tällaiset ”Mission Impossible” -tyyppiset hyökkäykset ovat uskottavia, mutta eivät niin paljon keskimääräiselle Joelle.

Tämän päivän hakkerit (mukaan lukien vakoojatoimistot Yhdysvalloissa, Isossa-Britanniassa, Israelissa, Kiinassa, Venäjällä, Ranskassa, Saksassa ja niin edelleen) nauttivat paljon enemmän menestystä perinteisten ohjelmistojen tartuntamenetelmien avulla. Hakkerina voit esimerkiksi rakentaa ja käyttää supersofistisen ja superneaky Blue Pill -hypervisorin hyökkäystyökalua tai mennä tavallisen jokapäiväisen ohjelmiston troijalaisen ohjelman kanssa, joka on toiminut hyvin vuosikymmenien ajan hakkeroimaan paljon suuremman määrän ihmisiä.

Mutta oletetaan, että haittaohjelmat tai USB-laitteet alkoivat näkyä laajasti? Voit lyödä vetoa siitä, että myyjät vastaavat ja ratkaisevat ongelman. BadUSB: llä ei ole puolustusta tänään, mutta sitä voidaan helposti puolustaa tulevaisuudessa. Loppujen lopuksi se on yksinkertaisesti ohjelmisto (tallennettu laiteohjelmistoon), ja ohjelmisto voi voittaa sen. USB-standardirungot todennäköisesti päivittävät tekniset tiedot estääkseen tällaiset hyökkäykset, mikro-ohjainten toimittajat tekisivät vähemmän todennäköisiä firmware-ohjelmista, ja käyttöjärjestelmien toimittajat reagoivat todennäköisesti vielä nopeammin.

Esimerkiksi jotkut käyttöjärjestelmien toimittajat estävät nyt DMA-laitteita pääsemästä muistiin ennen tietokoneen täydellistä käynnistymistä tai ennen kuin käyttäjä kirjautuu sisään, vain estääkseen liitettyjen DMA-laitteiden havaittuja hyökkäyksiä. Windows 8.1, OS X (avoimen laiteohjelmiston salasanojen kautta) ja Linux suojaavat DMA-hyökkäyksiltä, ​​vaikkakin yleensä ne vaativat käyttäjiä ottamaan nämä suojaukset käyttöön. Samanlaisia ​​puolustuksia toteutetaan, jos BadUSB tulee laajalle levinneeksi.

Älä pelkää BadUSB: tä, vaikka hakkeriystävä päättää pelata temppuasi vahingollisesti koodatulla USB-muistitikullaan. Tee kuten minä - älä käytä USB-laitteita, jotka eivät ole olleet koko ajan hallinnassasi.

Muista: Jos olet huolissasi hakkeroinnista, ole paljon enemmän huolissasi selaimesi toiminnoista kuin firmware-ohjelmistosta.

$config[zx-auto] not found$config[zx-overlay] not found