Podpisovanje kode je metoda uporabe digitalnega podpisa na podlagi potrdila za del programske opreme, tako da lahko operacijski sistem in uporabniki ugotovijo njeno varnost. Samo pravilna programska oprema lahko uporablja svoj ustrezni digitalni podpis.
Uporabniki lahko varno prenesejo in namestijo programsko opremo, razvijalci pa zaščitijo ugled svojih izdelkov s podpisovanjem kode. Vendar pa hekerji in distributerji zlonamerne programske opreme uporabljajo natanko ta sistem za pridobivanje zlonamerne kode prek protivirusnih zbirk in drugih varnostnih programov . Kaj je torej zlonamerna programska oprema s podpisom kode in kako deluje?
Kaj je zlonamerna programska oprema s podpisom kode?
Ko je programska oprema digitalno podpisana, to pomeni, da ima uradni digitalni podpis. Certifikacijski organ izda potrdilo programski opremi, da ugotovi, ali je programska oprema zakonita in varna za uporabo.
Uporabnikom ne bo treba skrbeti, saj bo operacijski sistem preveril potrdilo in preveril digitalni podpis. Windows na primer uporablja verigo potrdil, ki vsebuje vsa potrebna potrdila za zagotovitev, da je programska oprema zakonita.
Veriga potrdil vsebuje vsa potrdila, ki so potrebna za potrjevanje entitete, ki jo identificira končno potrdilo. Pravzaprav je sestavljen iz terminalskega potrdila, vmesnega potrdila CA in korenskega potrdila CA, ki mu zaupajo vse strani v verigi. Vsako vmesno potrdilo CA v verigi vsebuje potrdilo, ki ga izda CA eno raven nad njim. Korenski CA izda potrdila zase.
Ko je sistem zagnan in deluje, lahko zaupate programski opremi, sistemu za podpisovanje kod in CA. Zlonamerna programska oprema je zlonamerna programska oprema, ni vredna zaupanja in nima dostopa do overitelja potrdil ali podpisovanja kode.
Hekerji ukradejo potrdila overitelju potrdil
Protivirusna programska oprema ve, da je zlonamerna programska oprema zlonamerna, ker negativno vpliva na vaš sistem. Sproži opozorila, uporabniki poročajo o težavah, protivirusna programska oprema pa lahko ustvari podpise zlonamerne programske opreme za zaščito drugih računalnikov, ki uporabljajo isti protivirusni mehanizem.
Če pa bi ustvarjalci zlonamerne programske opreme lahko podpisali zlonamerno programsko opremo z uradnimi digitalnimi podpisi, se zgornji postopek ne bi zgodil. Namesto tega lahko zlonamerna programska oprema, podpisana s kodo, vstopi v sistem po uradni poti, ker vaša protivirusna programska oprema in operacijski sistem ne zaznata ničesar nevarnega.
Po raziskavi družbe Trend Micro je celoten trg zlonamerne programske opreme osredotočen na podporo razvoju in distribuciji zlonamerne programske opreme, podpisane s kodo. Operaterji zlonamerne programske opreme imajo dostop do veljavnih potrdil, ki se uporabljajo za podpisovanje zlonamerne kode. Spodnja tabela prikazuje količino zlonamerne programske opreme, ki uporablja podpisovanje kode za izogibanje protivirusni programski opremi od aprila 2018.
Raziskava podjetja Trend Micro tudi kaže, da ima približno 66 % zlonamerne programske opreme digitalne podpise. Poleg tega obstaja nekaj posebnih vrst zlonamerne programske opreme, ki imajo več različic digitalnih podpisov, kot so trojanci , kapalke in izsiljevalska programska oprema .
Od kod prihaja digitalno potrdilo za podpisovanje kod?
Distributerji in razvijalci zlonamerne programske opreme imajo dva načina za ustvarjanje s kodo podpisane zlonamerne programske opreme. Certifikatorju ukradejo potrdila tako, da neposredno ali pridobijo ali se lažno predstavljajo kot zakonita organizacija in zahtevajo potrdilo od CA.
Kot vidite, CA ni edina tarča hekerjev. Distributerji z dostopom do zakonitih potrdil lahko prodajajo zaupanja vredna digitalno podpisana potrdila razvijalcem in distributerjem zlonamerne programske opreme.
Varnostna raziskovalna skupina z Univerze Masaryk na Češkem in Center za kibernetsko varnost Maryland je odkrila štiri organizacije, ki prodajajo potrdila Microsoft Authenticode anonimnim kupcem. Ko ima razvijalec zlonamerne programske opreme potrdilo Microsoft Authenticode, lahko podpiše morebitno zlonamerno programsko opremo s podpisovanjem kode in zaščito na podlagi potrdila.
V nekaterih drugih primerih se namesto kraje potrdil hekerji infiltrirajo v strežnik za gradnjo programske opreme. Ko je izdana nova različica programske opreme, bo imela zakonit certifikat, hekerji izkoristijo ta postopek za dodajanje zlonamerne kode.
Primer zlonamerne programske opreme, podpisane s kodo
Torej, kako izgleda zlonamerna programska oprema, podpisana s kodo? Spodaj so trije primeri te vrste zlonamerne programske opreme.
- Zlonamerna programska oprema Stuxnet : Ta zlonamerna programska oprema je uničila iranski jedrski program z uporabo dveh ukradenih certifikatov in štirih ranljivosti ničelnega dne. Ti certifikati so bili ukradeni dvema podjetjema JMicron in Realtek. Stuxnet je uporabil ukradena potrdila, da bi se izognil novi zahtevi sistema Windows, da vsi gonilniki zahtevajo preverjanje.
- Vdor v strežnik Asus: Med junijem in novembrom 2018 so hekerji prodrli v strežnik Asus, ki ga podjetja uporabljajo za pošiljanje posodobitev programske opreme uporabnikom. Raziskave v laboratoriju Kaspersky Lab kažejo, da je okoli 500 tisoč naprav Windows prejelo to zlonamerno posodobitev, preden je bila odkrita. Ne da bi ukradli potrdila, ti hekerji podpišejo legitimna Asusova digitalna potrdila za svojo zlonamerno programsko opremo, preden strežnik programske opreme razdeli sistemske posodobitve.
- Zlonamerna programska oprema Flame: Različica zlonamerne programske opreme modula Flame, ki cilja na države Bližnjega vzhoda in uporablja goljufivo podpisana potrdila, da se prepreči odkrivanje. Razvijalci Flame so uporabili šibek šifrirni algoritem za ponarejanje digitalnih potrdil za podpisovanje kode, zaradi česar je bilo videti, kot da jih je podpisal Microsoft. Za razliko od Stuxneta, ki naj bi bil destruktiven, je Flame vohunsko orodje, ki išče datoteke PDF, datoteke AutoCAD, besedilne datoteke in druge vrste pomembnih industrijskih dokumentov.
Kako se izogniti zlonamerni programski opremi, podpisani s kodo?
Ta vrsta zlonamerne programske opreme uporablja podpisovanje kode, da prepreči odkrivanje s strani protivirusne programske opreme in sistemov, zato je zaščita pred zlonamerno programsko opremo, podpisano s kodo, izjemno težka. Vedno je nujno posodabljanje protivirusne programske opreme in sistemov, izogibajte se klikanju na neznane povezave in natančno preverite , od kod prihaja povezava, preden ji sledite. Glejte članek Tveganja zaradi zlonamerne programske opreme in kako se ji izogniti .