Mobilni antivirusi ne delujejo

Mobilni antivirusi ne delujejo
TL; DR če mobilne naprave vašega podjetja potrebujejo protivirusni program, potem delate vse narobe in vam protivirusni program ne bo pomagal.

Ta objava je rezultat burne razprave o tem, ali je protivirusni program potreben na poslovnem mobilnem telefonu, v katerih primerih deluje in v katerih je neuporaben. Članek preučuje modele groženj, pred katerimi bi protivirusni program teoretično moral ščititi.

Proizvajalci protivirusnih programov pogosto uspejo prepričati korporativne naročnike, da bo protivirusni program močno izboljšal njihovo varnost, vendar je v večini primerov to navidezna zaščita, ki samo zmanjšuje pazljivost tako uporabnikov kot skrbnikov.

Prava korporativna infrastruktura

Ko ima podjetje več deset ali celo tisoče zaposlenih, je nemogoče ročno konfigurirati vsako uporabniško napravo. Nastavitve se lahko spreminjajo vsak dan, prihajajo novi zaposleni, njihovi mobilni telefoni in prenosniki se pokvarijo ali izgubijo. Posledično bi bilo celotno delo skrbnikov sestavljeno iz dnevnega uvajanja novih nastavitev na naprave zaposlenih.

Ta problem so začeli reševati na namiznih računalnikih že dolgo nazaj. V svetu Windows se takšno upravljanje običajno izvaja z uporabo imenika Active Directory, centraliziranih sistemov za preverjanje pristnosti (enotna prijava) itd. Zdaj pa imajo vsi zaposleni v svoje računalnike dodane pametne telefone, na katerih poteka pomemben del delovnih procesov in se hranijo pomembni podatki. Microsoft je poskušal integrirati svoje Windows Phone v enoten ekosistem z Windows, vendar je ta ideja umrla z uradno smrtjo Windows Phone. Zato morate v poslovnem okolju v vsakem primeru izbirati med Androidom in iOS-om.

Zdaj je v podjetniškem okolju v modi koncept UEM (Unified Endpoint Management) za upravljanje naprav zaposlenih. To je centraliziran sistem upravljanja za mobilne naprave in namizne računalnike.
Mobilni antivirusi ne delujejo
Centralizirano upravljanje uporabniških naprav (Unified Endpoint Management)

Skrbnik sistema UEM lahko nastavi različne pravilnike za uporabniške naprave. Na primer, omogočanje uporabniku večjega ali manjšega nadzora nad napravo, nameščanje aplikacij iz virov tretjih oseb itd.

Kaj lahko naredi UEM:

Upravljanje vseh nastavitev — skrbnik lahko uporabniku popolnoma prepove spreminjanje nastavitev na napravi in ​​jih spremeni na daljavo.

Programska oprema za nadzor na napravi — omogočajo nameščanje programov na napravo in samodejno nameščanje programov brez vednosti uporabnika. Skrbnik lahko tudi blokira ali dovoli namestitev programov iz trgovine z aplikacijami ali iz nezaupljivih virov (iz datotek APK v primeru Androida).

Blokada na daljavo — če izgubite telefon, lahko skrbnik blokira napravo ali izbriše podatke. Nekateri sistemi omogočajo tudi nastavitev samodejnega brisanja podatkov, če telefon ni vzpostavil stika s strežnikom več kot N ur, da odpravite možnost poskusov vdiranja brez povezave, ko je napadalcem uspelo odstraniti kartico SIM, preden je bil s strežnika poslan ukaz za brisanje podatkov. .

Zbirajte statistiko — spremljanje aktivnosti uporabnika, časa uporabe aplikacije, lokacije, ravni baterije itd.

Kaj so UEM?

Obstajata dva bistveno različna pristopa za centralizirano upravljanje pametnih telefonov zaposlenih: v enem primeru podjetje za zaposlene nabavlja naprave enega proizvajalca in običajno izbere sistem upravljanja pri istem dobavitelju. V drugem primeru zaposleni za delo uporabljajo svoje osebne naprave in tu se začne živalski vrt operacijskih sistemov, različic in platform.

BYOD (Bring your own device) je koncept, pri katerem zaposleni za delo uporabljajo svoje osebne naprave in račune. Nekateri centralizirani sistemi upravljanja vam omogočajo, da dodate drugi delovni račun in popolnoma ločite svoje podatke na osebne in službene.

Mobilni antivirusi ne delujejo

Apple Business Manager - Applov domači centralizirani sistem upravljanja. Lahko upravlja samo naprave Apple, računalnike z macOS in iOS telefone. Podpira BYOD, ustvarja drugo izolirano okolje z drugim računom iCloud.

Mobilni antivirusi ne delujejo

Upravljanje končne točke Google Cloud — omogoča upravljanje telefonov v sistemih Android in Apple iOS ter namizij v sistemu Windows 10. Navedena je podpora za BYOD.

Mobilni antivirusi ne delujejo
Samsung Knox UEM - Podpira samo mobilne naprave Samsung. V tem primeru lahko takoj uporabite samo Samsung Mobile Management.

Pravzaprav obstaja veliko več ponudnikov UEM, vendar jih v tem članku ne bomo analizirali vseh. Glavna stvar, ki jo je treba upoštevati, je, da takšni sistemi že obstajajo in omogočajo skrbniku, da ustrezno konfigurira uporabniške naprave obstoječemu modelu groženj.

Model grožnje

Preden se odločimo za zaščitna orodja, moramo razumeti, pred čim se ščitimo, kaj se najslabše lahko zgodi v našem konkretnem primeru. Relativno povedano: naše telo je zlahka ranljivo za naboj in celo za vilice in žebelj, a neprebojnega jopiča si ne nadenemo, ko gremo od hiše. Zato naš model ogroženosti ne vključuje tveganja ustrelitve na poti v službo, čeprav statistično to ni tako neverjetno. Še več, v določenih pogojih je nošenje neprebojnega jopiča povsem upravičeno.

Modeli groženj se razlikujejo od podjetja do podjetja. Vzemimo za primer pametni telefon kurirja, ki je na poti dostaviti paket stranki. Njegov pametni telefon vsebuje samo naslov trenutne dostave in pot na zemljevidu. Najslabše, kar se lahko zgodi njegovim podatkom, je uhajanje naslovov za dostavo paketov.

In tukaj je računovodkin pametni telefon. Ima dostop do korporativnega omrežja preko VPN, ima nameščeno korporativno aplikacijo stranka-banka in hrani dokumente z dragocenimi informacijami. Očitno je, da se vrednost podatkov na teh dveh napravah bistveno razlikuje in bi jih bilo treba varovati drugače.

Nas bo antivirus rešil?

Na žalost se za marketinškimi slogani izgubi pravi pomen nalog, ki jih protivirusni program opravlja na mobilni napravi. Poskusimo podrobno razumeti, kaj protivirusni program počne na telefonu.

Varnostni pregled

Večina sodobnih mobilnih protivirusnih programov preverja varnostne nastavitve v napravi. Ta revizija se včasih imenuje "preverjanje ugleda naprave". Protivirusni programi štejejo napravo za varno, če so izpolnjeni štirje pogoji:

  • Naprava ni vdrta (root, jailbreak).
  • Naprava ima konfigurirano geslo.
  • V napravi ni omogočeno odpravljanje napak USB.
  • Namestitev aplikacij iz nezaupljivih virov (bočno nalaganje) na napravi ni dovoljena.

Če se po pregledu ugotovi, da naprava ni varna, bo protivirusni program obvestil lastnika in ponudil, da onemogoči "nevarno" funkcionalnost ali vrne tovarniško strojno programsko opremo, če obstajajo znaki root ali jailbreaka.

Po običajih podjetja ni dovolj, da uporabnika le obvestimo. Nevarne konfiguracije je treba odstraniti. Če želite to narediti, morate konfigurirati varnostne politike na mobilnih napravah s sistemom UEM. In če je zaznan root / jailbreak, morate hitro odstraniti podatke podjetja iz naprave in blokirati njen dostop do omrežja podjetja. In tudi to je mogoče z UEM. In šele po teh postopkih se lahko mobilna naprava šteje za varno.

Poiščite in odstranite viruse

V nasprotju s splošnim prepričanjem, da za iOS ni virusov, to ne drži. Za starejše različice sistema iOS še vedno obstajajo pogosti izkoriščanji, ki okužijo naprave z izkoriščanjem ranljivosti brskalnika. Hkrati je zaradi arhitekture iOS razvoj protivirusnih programov za to platformo nemogoč. Glavni razlog je, da aplikacije ne morejo dostopati do seznama nameščenih aplikacij in imajo številne omejitve pri dostopu do datotek. Samo UEM lahko dobi seznam nameščenih aplikacij za iOS, vendar tudi UEM ne more dostopati do datotek.

Pri Androidu je situacija drugačna. Aplikacije lahko pridobijo informacije o aplikacijah, nameščenih v napravi. Lahko celo dostopajo do svojih distribucij (na primer Apk Extractor in njegovi analogi). Aplikacije za Android imajo tudi možnost dostopa do datotek (na primer Total Commander itd.). Aplikacije za Android je mogoče dekompilirati.

S takšnimi zmogljivostmi je naslednji protivirusni algoritem videti logičen:

  • Preverjanje vloge
  • Pridobite seznam nameščenih aplikacij in kontrolne vsote (CS) njihovih distribucij.
  • Preverite aplikacije in njihove CS najprej v lokalni in nato v globalni bazi podatkov.
  • Če aplikacija ni znana, prenesite njeno distribucijo v globalno bazo podatkov za analizo in dekompilacijo.

  • Preverjanje datotek, iskanje virusnih podpisov
  • Preverite datoteke CS v lokalni in nato v globalni bazi podatkov.
  • Preverite datoteke za nevarno vsebino (skripte, izkoriščanja itd.) z uporabo lokalne in nato globalne zbirke podatkov.
  • Če je zaznana zlonamerna programska oprema, obvestite uporabnika in/ali blokirajte uporabnikov dostop do zlonamerne programske opreme in/ali posredujte informacije UEM. Podatke je treba prenesti v UEM, ker protivirusni program ne more samostojno odstraniti zlonamerne programske opreme iz naprave.

Največja skrb je možnost prenosa distribucij programske opreme z naprave na zunanji strežnik. Brez tega je nemogoče izvesti "analizo vedenja", ki jo trdijo proizvajalci protivirusnih programov, ker V napravi ne morete zagnati aplikacije v ločenem »peskovniku« ali je dekompilirati (kako učinkovita je pri uporabi zamegljevanja, je ločeno zapleteno vprašanje). Po drugi strani pa so lahko korporativne aplikacije nameščene na mobilnih napravah zaposlenih, ki jih antivirus ne pozna, ker niso v Googlu Play. Te mobilne aplikacije lahko vsebujejo občutljive podatke, zaradi katerih te aplikacije morda niso navedene v javni trgovini. Prenos takšnih distribucij proizvajalcu protivirusnega programa se z varnostnega vidika zdi nepravilen. Smiselno jih je dodati med izjeme, vendar še ne vem za obstoj takega mehanizma.

Zlonamerna programska oprema brez korenskih pravic lahko

1. Na vrh aplikacije narišite svoje nevidno okno ali implementirajte svojo tipkovnico za kopiranje uporabniško vnesenih podatkov - parametrov računa, bančne kartice itd. Nedavni primer je ranljivost. CVE-2020-0096, s pomočjo katerega je mogoče zamenjati aktivni zaslon aplikacije in s tem pridobiti dostop do uporabniško vnesenih podatkov. Za uporabnika to pomeni možnost kraje Google računa z dostopom do varnostne kopije naprave in podatkov bančne kartice. Za organizacijo pa je pomembno, da ne izgubi svojih podatkov. Če so podatki v zasebnem pomnilniku aplikacije in niso v Googlovi varnostni kopiji, zlonamerna programska oprema ne bo mogla dostopati do njih.

2. Dostop do podatkov v javnih imenikih – prenosi, dokumenti, galerija. V teh imenikih ni priporočljivo shranjevati informacij, ki so pomembne za podjetje, ker lahko do njih dostopa katera koli aplikacija. In uporabnik sam bo lahko vedno delil zaupen dokument s katero koli razpoložljivo aplikacijo.

3. Nagajajte uporabniku z oglaševanjem, rudarite bitcoine, bodite del botneta itd.. To lahko negativno vpliva na delovanje uporabnika in/ali naprave, vendar ne bo ogrozilo podatkov podjetja.

Zlonamerna programska oprema s korenskimi pravicami lahko naredi karkoli. So redki, saj je vdiranje v sodobne naprave Android s pomočjo aplikacije skoraj nemogoče. Nazadnje je bila taka ranljivost odkrita leta 2016. To je senzacionalna Dirty COW, ki je dobila številko CVE-2016-5195. Ključno pri tem je, da če odjemalec zazna znake ogroženosti UEM, bo odjemalec iz naprave izbrisal vse informacije podjetja, zato je verjetnost uspešne kraje podatkov z uporabo takšne zlonamerne programske opreme v podjetniškem svetu majhna.

Zlonamerne datoteke lahko poškodujejo tako mobilno napravo kot sisteme podjetja, do katerih ima dostop. Oglejmo si te scenarije podrobneje.

Mobilno napravo lahko poškodujete na primer, če nanjo naložite sliko, ki ob odprtju ali ob poskusu namestitve ozadja napravo spremeni v »opeko« ali jo znova zažene. To bo najverjetneje škodovalo napravi ali uporabniku, ne bo pa vplivalo na zasebnost podatkov. Čeprav obstajajo izjeme.

Nedavno so razpravljali o ranljivosti CVE-2020-8899. Domnevali so, da bi ga bilo mogoče uporabiti za pridobitev dostopa do konzole mobilnih naprav Samsung z uporabo okužene slike, poslane prek e-pošte, hitrega sporočila ali MMS-a. Čeprav dostop do konzole pomeni možnost dostopa le do podatkov v javnih imenikih, kjer občutljivih informacij ne bi smelo biti, je zasebnost osebnih podatkov uporabnikov ogrožena, kar je uporabnike prestrašilo. Čeprav je v resnici mogoče napadati naprave le z MMS. In za uspešen napad morate poslati od 75 do 450 (!) sporočil. Protivirusni program žal ne bo pomagal, ker nima dostopa do dnevnika sporočil. Za zaščito pred tem sta na voljo le dve možnosti. Posodobite OS ali blokirajte MMS. Na prvo možnost lahko čakate dolgo in ne dočakate, saj... Proizvajalci naprav ne izdajo posodobitev za vse naprave. Onemogočanje sprejema MMS v tem primeru je veliko lažje.

Datoteke, prenesene iz mobilnih naprav, lahko povzročijo škodo sistemom podjetja. Na mobilni napravi je na primer okužena datoteka, ki ne more škodovati napravi, lahko pa okuži računalnik z operacijskim sistemom Windows. Uporabnik tako datoteko po elektronski pošti pošlje svojemu sodelavcu. Odpre ga na osebnem računalniku in ga s tem lahko okuži. Toda vsaj dva protivirusna programa stojita na poti temu vektorju napada – eden na e-poštnem strežniku, drugi na prejemnikovem računalniku. Dodajanje tretjega antivirusa v to verigo na mobilni napravi se zdi naravnost paranoično.

Kot lahko vidite, je največja grožnja v poslovnem digitalnem svetu zlonamerna programska oprema brez korenskih pravic. Od kod lahko pridejo na mobilni napravi?

Najpogosteje so nameščeni s stranskim nalaganjem, adb ali trgovinami tretjih oseb, kar bi moralo biti prepovedano na mobilnih napravah z dostopom do omrežja podjetja. Obstajata dve možnosti za prihod zlonamerne programske opreme: iz Googla Play ali iz UEM.

Pred objavo v Google Play so vse aplikacije podvržene obveznemu preverjanju. Toda za aplikacije z majhnim številom namestitev se preverjanja najpogosteje izvajajo brez človeškega posredovanja, le v samodejnem načinu. Zato včasih zlonamerna programska oprema pride v Google Play, vendar še vedno redko. Protivirusnik, katerega baze se pravočasno posodabljajo, bo znal zaznati aplikacije z zlonamerno programsko opremo na napravi pred Google Play Protect, ki še vedno zaostaja v hitrosti posodabljanja protivirusnih baz.

UEM lahko namesti katero koli aplikacijo na mobilno napravo, vklj. zlonamerno programsko opremo, zato je treba vsako aplikacijo najprej pregledati. Aplikacije je mogoče preveriti med razvojem z orodji za statično in dinamično analizo ter neposredno pred distribucijo s pomočjo specializiranih peskovnikov in/ali protivirusnih rešitev. Pomembno je, da se aplikacija enkrat preveri, preden se naloži v UEM. Zato v tem primeru protivirusni program na mobilni napravi ni potreben.

Zaščita omrežja

Odvisno od proizvajalca protivirusnega programa lahko vaša omrežna zaščita ponuja eno ali več naslednjih funkcij.

Filtriranje URL-jev se uporablja za:

  • Blokiranje prometa po kategorijah virov. Na primer prepovedati gledanje novic ali drugih nekorporativnih vsebin pred kosilom, ko je zaposleni najbolj učinkovit. V praksi blokiranje najpogosteje deluje s številnimi omejitvami - proizvajalcem protivirusnih programov ne uspe vedno pravočasno posodobiti imenikov kategorij virov, ob upoštevanju prisotnosti številnih "ogledal". Poleg tega obstajajo anonimizatorji in Opera VPN, ki najpogosteje niso blokirani.
  • Zaščita pred lažnim predstavljanjem ali lažnim predstavljanjem ciljnih gostiteljev. V ta namen se URL-ji, do katerih dostopa naprava, najprej preverijo v protivirusni bazi podatkov. Povezave in viri, do katerih vodijo (vključno z morebitnimi večkratnimi preusmeritvami), se preverijo glede na bazo podatkov znanih lažnih spletnih mest. Ime domene, potrdilo in naslov IP se prav tako preverjajo med mobilno napravo in zaupanja vrednim strežnikom. Če odjemalec in strežnik prejmeta različne podatke, gre bodisi za MITM (»človek v sredini«), bodisi za blokiranje prometa z uporabo istega protivirusnega programa ali različnih vrst posrednikov in spletnih filtrov v omrežju, na katerega je mobilna naprava povezana. Težko je z gotovostjo reči, da je nekdo vmes.

Za pridobitev dostopa do mobilnega prometa protivirusni program zgradi VPN ali uporabi zmožnosti Accessibility API (API za aplikacije, namenjene osebam s posebnimi potrebami). Hkratno delovanje več VPN-jev na mobilni napravi je nemogoče, zato omrežna zaščita pred antivirusi, ki gradijo lasten VPN, v korporativnem svetu ni uporabna. VPN iz protivirusnega programa preprosto ne bo deloval skupaj s korporativnim VPN, ki se uporablja za dostop do omrežja podjetja.

Omogočanje protivirusnemu dostopu do API-ja za dostopnost predstavlja še eno nevarnost. Dostop do API-ja za dostopnost v bistvu pomeni dovoljenje, da naredite karkoli namesto uporabnika – vidite, kaj uporabnik vidi, izvajate dejanja z aplikacijami namesto uporabnika itd. Glede na to, da mora uporabnik protivirusnemu programu takšen dostop izrecno omogočiti, bo ta to najverjetneje zavrnil. Ali pa si bo, če bo prisiljen, kupil drug telefon brez antivirusa.

Požarni zid

Pod tem splošnim imenom so tri funkcije:

  • Zbiranje statističnih podatkov o uporabi omrežja, razdeljeno glede na aplikacijo in vrsto omrežja (Wi-Fi, mobilni operater). Večina proizvajalcev naprav Android zagotavlja te informacije v aplikaciji Nastavitve. Podvajanje v mobilnem protivirusnem vmesniku se zdi odveč. Zbirni podatki o vseh napravah so lahko zanimivi. Sistemi UEM ga uspešno zbirajo in analizirajo.
  • Omejitev mobilnega prometa – nastavitev omejitve, obveščanje, ko je dosežena. Za večino uporabnikov naprav Android so te funkcije na voljo v aplikaciji Nastavitve. Centralizirana nastavitev omejitev je naloga UEM, ne antivirusa.
  • Pravzaprav požarni zid. Ali z drugimi besedami, blokiranje dostopa do določenih naslovov IP in vrat. Ob upoštevanju DDNS na vseh priljubljenih virih in potrebe po omogočanju VPN za te namene, ki, kot je zapisano zgoraj, ne more delovati v povezavi z glavnim VPN, se funkcija zdi neuporabna v korporativni praksi.

Preverjanje pooblastila za Wi-Fi

Mobilni protivirusni programi lahko ocenijo varnost omrežij Wi-Fi, na katera se mobilna naprava povezuje. Lahko se domneva, da sta prisotnost in moč šifriranja preverjena. Hkrati vsi sodobni programi za prenos občutljivih podatkov uporabljajo šifriranje. Torej, če je nek program ranljiv na ravni povezave, potem ga je nevarno uporabljati tudi prek katerega koli internetnega kanala in ne samo prek javnega Wi-Fi.
Zato javni Wi-Fi, tudi brez šifriranja, ni nič bolj nevaren in nič manj varen kot kateri koli drugi nezaupljivi kanali za prenos podatkov brez šifriranja.

Zaščita pred neželeno pošto

Zaščita se praviloma zmanjša na filtriranje dohodnih klicev po seznamu, ki ga določi uporabnik, ali po bazi znanih pošiljateljev neželene pošte, ki neskončno nadlegujejo z zavarovanji, posojili in vabili v gledališče. Čeprav se v času samoizolacije ne oglašajo, bodo kmalu spet začeli. Filtrirani so samo klici. Sporočila v trenutnih napravah Android niso filtrirana. Glede na redno spreminjanje številk pošiljateljev neželene pošte in nezmožnost zaščite besedilnih kanalov (SMS, instant messengerji) je funkcionalnost bolj marketinške kot praktične narave.

Zaščita proti kraji

Izvajanje oddaljenih dejanj z mobilno napravo v primeru izgube ali kraje. Alternativa storitvama Find My iPhone in Find My Device podjetij Apple oziroma Google. Za razliko od svojih analogov storitve proizvajalcev protivirusnih programov ne morejo blokirati naprave, če jo je napadalec uspel ponastaviti na tovarniške nastavitve. Če pa se to še ni zgodilo, lahko z napravo na daljavo storite naslednje:

  • Blokiraj. Zaščita pred preprosto mislečimi tatovi, saj to enostavno storite s ponastavitvijo naprave na tovarniške nastavitve prek obnovitve.
  • Poiščite koordinate naprave. Uporabno, če ste napravo nedavno izgubili.
  • Vklopite glasen pisk, da boste lažje našli svojo napravo, če je v tihem načinu.
  • Ponastavite napravo na tovarniške nastavitve. Smiselno je, ko je uporabnik prepoznal napravo kot nepovratno izgubljeno, vendar ne želi, da bi bili podatki, shranjeni na njej, razkriti.
  • Za izdelavo fotografije. Fotografirajte napadalca, če drži telefon v rokah. Najbolj vprašljiva funkcionalnost je, da je verjetnost, da bi napadalec občudoval telefon pri dobri osvetlitvi, majhna. Toda prisotnost v napravi aplikacije, ki lahko tiho nadzoruje kamero pametnega telefona, posname fotografije in jih pošlje svojemu strežniku, povzroča razumno zaskrbljenost.

Oddaljeno izvajanje ukazov je osnovno v vsakem sistemu UEM. Edino, kar jim manjka, je fotografiranje na daljavo. To je zanesljiv način, da uporabnike prepričate, da po koncu delovnega dne vzamejo baterije iz svojih telefonov in jih dajo v torbo Faraday.

Funkcije proti kraji v mobilnih protivirusnih programih so na voljo samo za Android. Za iOS lahko samo UEM izvede takšna dejanja. V napravi iOS je lahko samo en UEM - to je arhitekturna značilnost iOS-a.

Ugotovitve

  1. Situacija, v kateri lahko uporabnik na telefon namesti zlonamerno programsko opremo, NI SPREJEMLJIVA.
  2. Pravilno konfiguriran UEM na napravi podjetja odpravlja potrebo po protivirusnem programu.
  3. Če so izkoriščene 0-dnevne ranljivosti v operacijskem sistemu, je protivirusni program neuporaben. Skrbniku lahko le nakaže, da je naprava ranljiva.
  4. Protivirusni program ne more ugotoviti, ali je ranljivost izkoriščena. Pa tudi izdajo posodobitve za napravo, za katero proizvajalec ne izda več varnostnih posodobitev. Največ leto ali dve.
  5. Če zanemarimo zahteve regulatorjev in trženja, so korporativni mobilni protivirusni programi potrebni samo na napravah Android, kjer imajo uporabniki dostop do Google Play in namestitev programov iz virov tretjih oseb. V drugih primerih učinkovitost uporabe protivirusnih zdravil ni več kot placebo.

Mobilni antivirusi ne delujejo

Vir: www.habr.com

Dodaj komentar