Nešteto ljudi po vsem svetu uporablja zlomljeno programsko opremo za dostop do programov, ki bi jih sicer kupili. Učinki te nezakonite prakse so lahko daljnosežni in imajo resne posledice tako za razvijalce programske opreme kot za uporabnike vlomljene programske opreme. Toda kaj točno je razbijanje programske opreme in kaj je tako slabega na tem?
Kaj je razbijanje programske opreme?
Ljudje uporabljajo razbijanje programske opreme, da bi se izognili ukrepom, ki so bili vzpostavljeni za preprečevanje kopiranja programske opreme in nepooblaščene distribucije. Dejanje lahko vključuje spreminjanje ali dodajanje programske kode za obhod omejitev licenciranja, šifrirnih ključev in drugih mehanizmov za zaščito avtorskih pravic.
Edini cilj krekerjev je omogočiti brezplačno uporabo programske opreme za osebno uporabo ali nelicencirano kopiranje in distribucijo. Prav tako poskušajo pridobiti dostop do premium različice programske opreme brez kakršnih koli plačil njenim ustvarjalcem.
Zgodovina krekanja programske opreme
V petdesetih letih ni bilo avtorskih pravic, saj programska oprema ni bila priznana kot intelektualna lastnina. Po desetletju so ZDA začele izdajati patente razvijalcem programske opreme, v ospredje pa je stopilo licenciranje avtorskih pravic. Programska oprema je postala novo zlato in lansiranje osebnih računalnikov v sedemdesetih letih prejšnjega stoletja je to stanje še poslabšalo. Do leta 1977 je ameriški urad za avtorske pravice registriral več kot 1200 računalniških programov. Podjetja programske opreme so začela vključevati DRM (upravljanje digitalnih pravic) in licenčne ključe v svoje izdelke kot omejitve.
Prve krekerje so imenovali računalniški "geeki". Ker niso bili pripravljeni plačati za programsko opremo, ki so jo nekoč dobivali brezplačno, so začeli izumljati načine, kako bi se izognili licenčnim ključem in omejitvam. Biti prvi, ki je izdal "krekano" različico priljubljene programske opreme, je postalo častna značka med prihodnjimi skupinami krekerjev in hekerjev.
Zgodnje leto 2000 je prineslo razcvet proizvodnje programske opreme in s prihodom P2P (peer-to-peer) datoteke prenosnih omrežij, je distribucija zlomljene programske opreme dosegla osupljive višine v primerjavi s prejšnjo stoletja. To je povzročilo tekmo med krekerji in industrijo programske opreme, ena skupina je iskala nove načine za preprečujejo kršitev svojih avtorskih pravic, medtem ko drugi izumljajo nove načine, kako preskočiti te omejitve.
Vrste krekiranja programske opreme
Krekerji uporabljajo različne metode, da se izognejo licenčnim ključem in zaščitnim ukrepom programske opreme.
1. Keygen Cracking
Razbijanje Keygena vključuje uporabo programa za ustvarjanje ključev za izdelavo veljavnih licenčnih ključev za programsko opremo. Ta vrsta programa, popularno znana kot »keygen«, analizira algoritem, ki ga osnovna programska oprema uporablja za ustvarjanje zakonitih licenčnih ključev za ljudi, ki kupijo licenco programske opreme.
Krekerji uporabljajo keygen, ko želijo zaobiti zahteve za aktivacijo programske opreme in dostopati do vrhunskih storitev, ki so na voljo samo uporabnikom, ki plačujejo. Program keygen se običajno distribuira skupaj z zlomljeno različico programske opreme, tako da ga je mogoče uporabljati v več računalnikih. Mnogi ljudje, ki uporabljajo programe keygen, imajo veliko možnost, da se okužijo z priljubljena zlonamerna programska oprema HackTool: Win32/Keygen.
2. Pokanje popravkov
S to metodo krekerji analizirajo kodo programske opreme in ustvarijo program (imenovan »popravek«), ki spremeni kodo.
Najprej krekerji analizirajo kodo programske opreme in prepoznajo algoritme, odgovorne za uveljavljanje zaščitnih ukrepov programske opreme. Nato kreker spremeni kodo in popolnoma odstrani te zaščitne ukrepe. Po spremembi krekerji ustvarijo popravek, majhen program, ki naredi spremembe, ko se uporabijo za programsko opremo.
Ta popravek se distribuira skupaj z zlomljeno programsko opremo, kar omogoča uporabo z več kopijami iste programske opreme in odpravlja potrebo po nakupu licence za programsko opremo.
3. Strežniško razbijanje
Pri krekiranju na osnovi strežnika krekerji vzpostavijo skupino strežnikov, da zaobidejo zaščitne ukrepe programske opreme. Iz teh strežnikov je razpokana programska oprema na voljo za prenos.
Strežniki so konfigurirani tako, da zaobidejo varnostne ukrepe, ki jih uporabljajo razvijalci programske opreme. Krekerji to storijo z uporabo generatorja ključev za izdelavo licenčnih ključev za programsko opremo, neposredno spreminjanje kode programske opreme ali izboljšanje že vlomljene različice programske opreme.
Ko je to končano, krekerji običajno zagotovijo povezavo za prenos za dostop do zlomljive programske opreme prek spletne platforme.
4. Krekiranje s povratnim inženiringom
z koncept obratnega inženiringa, se koda programske opreme analizira glede morebitnih ranljivosti. Te ranljivosti izkorišča kreker in jih uporablja za ustvarjanje veljavnih licenčnih ključev ali ustvarjanje popravka za programsko opremo.
Povratni inženiring rekonstruira izvorno kodo programske opreme, da se programska oprema obnaša, kot želi kreker. Vključuje razstavljanje izvorne kode, algoritma programske opreme in podatkovnih struktur. Ta metoda se lahko uporablja tudi za odpravljanje napak, ki vključuje iskanje in odpravljanje napak v računalniškem programu. Čeprav bodo krekerji morda morali popraviti napake v programu, to ni njihov končni cilj.
Prvi korak pri vlomu z obratnim inženiringom je zbiranje podatkov. Informacije o ciljni programski opremi se pridobijo na spletu iz različnih virov in celo prek proizvajalca. Naslednji korak je demontaža in študija programske opreme. Krekerji razčlenijo algoritem, podatkovne strukture in pretok podatkov ter jih analizirajo za hrošče in napake.
Spremembe sledijo. Koda je zasukana, logika pa spremenjena, da zaobide ukrepe proizvajalca. Po spremembi je programska oprema končno sestavljena nazaj kot krekirana različica.
Posledice uporabe zlomljene programske opreme
v ZDA, uporaba zlomljene programske opreme je nezakonita, saj krši zakon o avtorskih pravicah programske opreme. Storilci bodo morda morali plačati denarno kazen do 150.000 $ in preživeti pet let v zaporu. Tu so še drugi razlogi, zakaj ne bi smeli uporabljati zlomljive programske opreme.
Zlonamerna programska oprema in varnostna tveganja
Ko je bila programska oprema razstavljena in njena koda spremenjena, lahko postane ranljiva za zlonamerno programsko opremo in številne druge varnostne grožnje. Krekerji lahko celo ustvarijo ranljivost za dodajanje zlonamerne programske opreme v program. Te grožnje akterji lahko uporabijo različne vrste zlonamernih programov za krajo občutljivih finančnih podatkov iz vašega računalnika, če prenesete vlomljeno programsko opremo.
Brez tehnične podpore in posodobitev
Zlomljena programska oprema se ne posodablja redno, zaradi česar je izpostavljena varnostnim grožnjam. Poleg tega postane zlomljena različica zastarela, saj ponudniki programske opreme izboljšujejo programsko opremo in dodajajo različne funkcionalnosti.
Če uporabljate krekano različico katerega koli računalniškega programa in obstajajo hrošči, jih boste morali odpraviti sami. To je zato, ker krekerji, ki so razvili spremenjeno programsko opremo, običajno nimajo sistema za podporo strankam.
Izguba prihodka za razvijalce programske opreme
Bolj kot uporabljate krekirano programsko opremo, bolj nagrajujete krekerje, ki uničujejo zakonito ustvarjene računalniške programe. Zlomljena programska oprema povzroči izgubo prihodkov za razvijalce programske opreme, naložbe v industrijo programske opreme pa se lahko postopoma zmanjšajo.
Neskončna bitka med krekerji in razvijalci
Uporaba vdrte programske opreme ima resne posledice. Številni krekerji skrivajo različno zlonamerno programsko opremo v svojem vlomljenem programu in jo distribuirajo, da bi od uporabnikov zbrali občutljive podatke.
In ker razvijalci programske opreme ustvarjajo nove varnostne ukrepe za preprečevanje kršitev avtorskih pravic, krekerji skoraj vedno zdijo kos nalogi, ustvarjajo nove načine za izogibanje tem ukrepom in kršitev licenčnih pravic lastnikov programske opreme.