Let it only be me who is (pen)testing my home network (Part I)
07.4.2017

Pred kratkim sem bil postavljen pred izziv – priložnost, da kot del študentske Garaže FRI prikažem nekaj primerov pravih etičnih hekov. Moja izbrana tema so bili vektorji napadov v okoljih malih/domačih pisarn (Small Office Home Office – SOHO). Drugače rečeno, ali so z vidika varnostnih analitikov prepoznane morebitne grožnje in so na voljo konkretna varnostna priporočila ter njihovo podajanje sodelujočim študentom – bodočim inženirjem.

Priznati moram, da o tehnologijah domačih omrežij že dlje časa nisem niti razmišljal in so kot takšne postale moja cona udobja. Le kaj gre tukaj lahko narobe (s stališča kibernetske varnosti)? Običajno našim ponudnikom internetnih storitev prepuščamo izbiro ustrezne in zaupanja vredne opreme CPE (Customer Premises Equipment – oprema na lokaciji stranke) za našo domačo uporabo. Ampak, ali je to res pravi pristop?

Pričel sem s pripravami testnega okolja in se osredotočil na prikaz učinkovitega hekerskega vdora. Za ponovitev pogostega scenarija sem iz svoje domače zbirke izbral star usmerjevalnik DSL. Opremljen je bil z vsemi kul funkcijami, kot so seznami ACL, NAT, WiFi ter SPI in AES. Mimo vseh teh obetavnih možnosti za preizkušanje varnostnih ranljivosti je mojo pozornost na koncu pritegnila funkcija uPNP. 

uPNP (Universal Plug and Play) – na kratko – domačim omreženim napravam omogoča vidljivost iz interneta. Seveda, samo ko je to priročno ali potrebno (npr. za večpredstavnostne storitve in igranje iger prek interneta). Namesto ročnega nastavljanja vmesne naprave CPE, v smislu posredovanja vrat za zunanje poizvedbe (iz interneta) v interne računalnike, funkcija uPNP vse to postori za vas. Lahko bi rekli, da gre za idealno tehnologijo. Razen v najslabšem možnem primeru, ko ta avtomatizirani postopek izvaja nepooblaščena oseba ali zlonamerna programska koda. Ups!

Hitro sem vzpostavil delujoče preskusne scenarije za študentsko delavnico. V živo sem prikazal možno zlorabo funkcije uPNP, kot je javen in popolnoma odprt dostop do mojih map v skupni rabi (t.i. Shared Folder). Uporabljal sem vgrajena orodja distribucije »Kali Linux«, kot so skripta v Python-u ter orodja metasploit, netcat in celo običajni telnet. Aja, pozabil sem omeniti, da je bila ta izpostavljena tarča moj službeni računalnik.

Študenti so bili navdušeni, da so lahko v živo prisostvovali vdoru v predstavitveni usmerjevalnik SOHO in v zaščiteni računalnik za njim. Posebej moram poudariti, da le nekaj znamk, še posebej tistih s starejšimi različicami programske opreme, ostaja ranljivih zaradi varnostnih lukenj v funkciji uPNP. Prav tako so redki primeri, ko domači uporabniki dopuščajo nepooblaščeni zunanji dostop uPNP prek interneta. In nenazadnje, četudi uporabnik doma uporablja ogroženi usmerjevalnik SOHO, mora omenjeno funkcijo uPNP vseeno vklopiti ročno (ali jo v najslabšem primeru pustiti na privzetih nastavitvah).

To pa me ni ustavilo pri izvajanju nadaljnje analize, zgolj z uporabo pasivnih tehnik za zbiranje informacij. Za iskanje ogrožene opreme CPE SOHO sem uporabil poizvedbe prek iskalnika Shodan, iskanja pa sem zožil na območje Slovenije. Veliko takšnih naprav je presenetljivo še vedno v uporabi po celotni državi in tako dovolijo dostop za upravljanje ter nekatere celo za uPNP. Za tiste, ki ste na to pomislili, dejanskih ranljivosti ročno nisem preizkušal. Tako sem ostal na etični strani varnostnega preverjanja.

Izrabljena je bila torej ranljivost na mojem starem SOHO usmerjevalniku. Tistemu, ki se ga že nekaj časa nisem dotaknil, tam je čemel in čakal na prav takšen preskus. Varnostni test me je spodbudil k nadaljnjem razmišljanju. Kakšen nivo varnosti in zaščite končnega uporabnika zagotavlja terminalska oprema za internetni dostop dandanes? Ali obstaja vektor napada, prek katerega bi bilo mojo domačo pisarno mogoče izpostaviti zunanjim grožnjam? To je bil trenutek, ko sem začel preizkušati varnostno učinkovitost svojega domačega usmerjevalnika. Prav tega usmerjevalnika, za katerim udobno sedim med pisanjem tega zapisa. 

Pridružite se mi v prihajajoči seriji blogov in spremljajte moja odkritja.