Nekateri TOR exit nodi dodajo malware v prenesene datoteke

Mandi

25. okt 2014 ob 14:06:26

Ljudje ponujajo Tor node-e iz različnih razlogov, večinoma dobrih, se pa najdejo tudi taki, ki bi radi izkoristili uporabnike tega anonimizacijskega omrežja in jim namesto želenih datotek podtaknejo take z dodanim malwarom.

Josh Pitts, varnostni raziskovalec za ameriško hišo Leviathan Security, že nekaj let predava o metodah za spreminjanje izvršljivih datotek (t.i. binary patching). Pri tem rad poudarja, da ne gre za pretirano zahtevno operacijo in da so vsa potrebna orodja pravzaprav že precej let na voljo v odprtokodni in dobro dokumentirani obliki (k čemur prispeva tudi sam). Zato naj bi bilo zgolj vprašanje časa, preden se bo nekdo spomnil to tehniko uporabljati za okuževanje računalnikov. Napadalec z polnim dostopom do omrežnega prometa bi mirno lahko čakal na prenose izvršljivih (ali tudi drugih) datotek po nešifriranem protokolu HTTP, ter jih kar med prenosom napolnil s svojo škodljivo kodo. Za demonstracijske potrebe je celo združil svoje obstoječe orodje BDF (the backdoor factory) z dobro znanim MITM toolkitom mitmproxy v delujoč BDF Proxy.

Situacije, kjer bi napadalec imel ustrezni dostop do našega mrežnega kabla, niti niso tako redke. Prisluškovanje (sniffing) in potem spreminjanje vsebine prometa (spoofing) je povsem možno v poslovnem okolju (MITM napadi na transparentnem proxy-ju), ali pri vseh tistih brezplačnih wifij-jih po lokalih, ki jih tako radi uporabljamo (BEAST oz. CRIME). Resni ponudniki interneta (ISP-ji) naj tega ne bi počeli, oz. ob uzakonjenih pravilah nevtralnosti omrežja tudi ne bi smeli početi, a to ni čisto res, ko pa ameriški mobilni operater Verizon svojim uporabnikom mobilnega interneta mirno blokira rabo šifriranega dostopa do poštnih strežnikov (točneje, z MITM napadom onemogoča STARTTSL operacijo v IMAPS protokolu, tako da se je vaš poštni klient primoran povezati po nešifrirani povezavi). A če pustimo zdaj to: MITM napadi so povsem možni tudi v omrežju TOR. Ker gre TOR promet prav načrtno skozi mrežno opremo - relaye in exit node-e - ki jo zagotavljajo tretje osebe (ne operaterji), je seveda treba zaupati tem osebam.

Da bi preveril, ali katera od izhodnih točk manipulira nešifrirane prenose datotek, je Pitts s pomočjo knjižnice exitmap od projekta Spoiled Onions poskusil isto datoteko potegniti čez vse javno dostopne TOR exit node. Za vsak prenos je potem izdelal zgoščeno vrednost (hash) in tako preveril, ali je na koncu dobil točno takšno datoteko, kot bi jo moral.

Pri skoraj vseh od 1100 in nekaj znanih izhodnih točk je bilo vse v redu, ena pa je namesto želene datoteke, npr. putty.exe ali tcpview.exe, servirala takšno, ki je vsebovala tudi trojanskega konja. Če je uporabnik takšno takoteko pognal, si je najprej okužil računalnik, potem pa se mu je, kot je treba, pognal še putty oz. tcpview. Na ta način uporabnik zelo težko posumi, da je šlo kaj narobe, še posebej ne zato, ker že itak uporablja anonimizacijsko omrežje in si torej obeta "povečano mero varnosti in anonimnosti".

Sporni exit node je imel v času pisanja članka oznako "8361A794DFA231D863E109FC9EEEF21F4CF09DDD" in IP naslov 78.24.222.229.

Seveda, takšen napad "načeloma" deluje zgolj pri prenosih po nešifriranem protokolu HTTP. A kot se izkaže, veliko popularnih strani za prenos datotek še vedno podpira prenos datotek po takšnem kanalu.

Prvo priporočilo vsem uporabnikom TOR-a bi torej moralo biti, da vklopijo še brskalniško razširitev HTTPS Everywhere, ki se s spletnimi stranmi, če to le podpirajo, vedno pogovarja preko šifrirane povezave. A to je šele začetek dela. Tudi šifrirane povezave so lahko predmet napada, če ima napadalec na voljo malo več volje, časa in resursov. Načini so različni - vsiljevanje rabe starejše različice SSL specifikacije (POODLE), izkoriščanje pomanjkljivo spisanih in nepregledanih razširitev TSL protokola (HEARTBEAT), izkoriščanje dejstva, da velika večina Android aplikacij zavoljo lenobe avtorjev dopušča tudi rabo samopodpisanih strežniških certifikatov, priprava ponarejenih strežniških certifikatov, če imetnik še vedno podpira takšne z nezanesljivimi podpisnimi algoritmi (FLAME), napad na certifikacijsko avtoriteto (indijski NIC) oz. njihovega slabo zavarovanega resellerja (diginotar) in potem izdaja lažnih certifikatov .. in še in še. Internet je precej nevaren že sam po sebi.