Kako izbrati digitalno kodo za program. Licenčni ključ programa ali igre. Fizično vdor v program

Pri izbiri gesla nihče ne jamči za uspeh tega podjetja). Vendar pa obstaja nekaj pravil, ki lahko znatno povečajo vaše možnosti za ugoden izid te zadeve.

Kje začeti

  1. Pogosto ni potrebno samo geslo, ampak tudi prijava. Če poskušate najti prijavo, na primer za vdor v računalnik svojega sodelavca, uporabite njegovo ime. Če ne deluje, poglejte, kako se ta oseba imenuje na družbenih omrežjih (Twitter, Facebook, Vkontakte itd.) - pogosto deluje 100%.
  2. Preverite, ali obstajajo omejitve glede dolžine vnesenega gesla ali uporabljenih znakov. Pogosto mora biti geslo dolgo vsaj šest znakov in vsebovati vsaj eno številko. Če ne veste, obstajajo takšne omejitve, poskusite ustvariti svoj račun, na primer na spletnem mestu, za katerega izberete geslo - med registracijo vam bodo povedali o zahtevah za gesla.
  3. Zahtevajte vprašanje z namigom. To funkcijo imajo pogosto strani za vnos gesel. Praviloma se kot hitra vprašanja uporabljajo vprašanja, kot so "Mamin dekliški priimek?", "Kako je ime vašemu hišnemu ljubljenčku?", "V katerem mestu ste bili rojeni?". itd. To se bo znatno zožilo možne možnosti besede, sploh če veš vsaj nekaj o osebi!

Uporabite trike

  1. Samo uganite geslo. Najpogosteje ljudje uporabljajo isto standardna gesla. Njihov seznam je že dolgo znan in se nenehno posodablja). Spodaj boste našli 25 najpogostejših gesel (glede na Splash Data):
    geslo
    123456
    12345678
    abc123
    qwerty
    opica
    spusti me noter
    zmaj
    111111
    baseball
    Ljubim te
    trustno1
    1234567
    sonček
    gospodar
    123123
    dobrodošli
    senca
    Ashley
    nogomet
    Jezus
    michael
    ninja
    mustang
    geslo1

    Tukaj je nekaj statističnih podatkov:
    4,7 % uporabnikov uporablja geslo;
    8,5 % uporabnikov izbere eno od dveh možnosti: geslo ali 123456;
    9,8 % uporabnikov izbere eno od treh možnosti: geslo, 123456 ali 12345678;
    14 % uporabnikov izbere eno od 10 najbolj priljubljenih gesel;
    40 % uporabnikov izbere eno od 100 najbolj priljubljenih gesel;
    79 % uporabnikov izbere eno od 500 najbolj priljubljenih gesel;
    91 % uporabnikov izbere eno izmed 1000 najbolj priljubljenih gesel.

  2. Uporabite znana izbirna pravila. Eksperimentalno je bilo ugotovljeno, da če geslo vsebuje številke, bo to številka 1 ali 2 in bo na koncu. Tudi če ima geslo veliko začetnico, bo ta na samem začetku besede, ki ji bo sledil samoglasnik.
  3. Spol osebe je lahko namig. Znano je, da ženske za gesla najraje uporabljajo osebna imena (ime moža ali ljubimca), moški pa svoje hobije in interese (ime najljubše športne ekipe, znamka avtomobila itd.).

Uporabite informacije, ki so pomembne za osebo

  1. Lastna imena: imena zakoncev, družinskih članov, hišnih ljubljenčkov, športnikov, vzdevki otrok itd.
  2. Hobiji in interesi: imena najljubših programov, filmskih junakov, poklicev, kulinaričnih jedi itd.
  3. Pomembne številke in datumi: rojstni dan, naslov, telefonska številka itd.

Izjava o omejitvi odgovornosti: vse spodaj napisano je napisano izključno v izobraževalne in raziskovalne namene ter za razumevanje mehanizmov zaščite pred vdori. Avtor v nobenem primeru ne priporoča uporabe te informacije za hekerske programe.

V tem članku želim govoriti o treh in pol glavnih načinih vdora v programe .NET.Cilj, ki ga zasledujem, je pomagati razvijalcem bolje razumeti varnostne mehanizme njihovih programov, tj. prepoznati najbolj očitne grožnje in ustrezno ukrepati (ali ne).

Ne bom šel v podrobnosti ali uporabljal zapletenih hekerskih orodij. Vse bo opisano "za telebane", tj. vsa orodja bodo preprosta, lahko dostopna in brezplačna. In glavni bo Reflector, dekompilator programov za .NET

Za poskusnega zajčka sem izbral Expresso - analizator regularni izrazi. Ta program Je brezplačen, zdi se, da licenca ne pove nič o hekanju, vendar brez registracije deluje le 60 dni. Z drugimi besedami, škoda zaradi vdora v ta program je minimalna, njegova notranja struktura pa je zelo primerna za usposabljanje. Upam, da mi avtor tega programa ne bo zameril.


Najprej kratek izobraževalni program o strukturi programa .NET za tiste, ki niso seznanjeni z razvojem za to ogrodje: vsa koda, napisana v katerem koli jeziku .NET (C#, Visual Basic, F#, Delphi.NET), je prevedena v poseben vmesni jezik, običajno imenovan IL ali MSIL. To je nekaj podobnega asemblerju, le zelo pameten in z zelo močnimi navodili. In to je načeloma enako enakovreden jezik kot C#, le sintaksa je slabša (in je več možnosti). Poleg tega program .NET aktivno uporablja metapodatke, tj. vse informacije o razredih, metodah, lastnostih, atributih in vsem drugem so shranjene v izvršljivi datoteki.
Tisti. pravzaprav dekompilacija programa v tem primeru ni zelo pravilen koncept. Vse je že v odprti obliki in orodja v obliki Reflectorja se ukvarjajo s prenosom konstruktov MSIL v ustrezne konstrukte C# ali drugega jezika, kar povečuje berljivost kode.

Preidimo k dejanskemu hekanju.

0. Poskusna ponastavitev

Pravzaprav to sploh ni kramp, ampak polzakonit način za podaljšanje življenjske dobe neaktiviranega programa. Sestoji iz dejstva, da obstaja mesto, kjer se datum prvega izstrelitve shrani in spremeni/uniči. Po tem lahko še vedno uporabljate program do naslednjega roka.

Poglejmo našega testiranca z reflektorjem:
Ko se malo sprehodimo po kodi, najdemo zanimivo vrstico v konstruktorju MainForm


Odprite urejevalnik registra, pojdite na HKEY_CURRENT_USER\Software\Ultrapico\Expresso in si oglejte naslednje ključe:


Izbrišemo jih in dobimo še 60 dni dela.

Ta možnost je seveda enostavna in očitna, a tudi če bi bila bolj zapletena, bi potrebovali nekaj več časa v reflektorju, da bi ugotovili vsa mesta, kjer so zapisane informacije, in jih očistili.

Nasvet razvijalcem, ki bodo poskušali zapisati podatke na skrito mesto: pišite bolj previdno, sicer se lahko vse spremeni v težave za običajne uporabnike, ki tega mesta iz nekega razloga nimajo ali nimajo dovolj pravic do njega.

1. Pisanje keygen

Najbolj grozna možnost za razvijalca in najbolj prijetna za končnega zlobnega uporabnika. Program se šteje za licenčnega, strašljivih potez ni treba izvajati.

Odpremo reflektor in poiščemo kodo za razrede, ki vsebujejo licenco ali registracijo, vidimo:

Ko vnesete ime in kodo, se zgoščena vrednost izračuna glede na ime in primerja s kodo.


Ta zgoščena vrednost uporablja DES in vse vrste predpon


S to metodo se bajti pretvorijo v niz.

Zdaj je vse jasno, odprite IDE in kopirajte vse potrebne dele kode (ali jo implementirajte sami). Vse, kar ostane, je ugotoviti, kakšne so vrednosti parametrov izvedbe Prefix, Suffix in MyDES. Ne bom jih izdal, to so tehnične podrobnosti.

Posledično ustvarimo ključ za poljubno ime in vidimo:


Bingo!

Zaščita pred keygeni je preprosta in očitna: uporabite neko obliko asimetričnega šifriranja. Tisti. narediti tako, da ne bi bilo mogoče ustvariti kode brez poznavanja zasebnega ključa, ta ključ pa se nahaja samo na enem mestu - pri avtorju programa.

2. Uporaba ovoja

Preverjanje pravilnosti licence je precej mučno in počasno opravilo. Zato razvijalci programov običajno enkrat preverijo licenco in nato uporabijo nastalo zastavico - veljavna/neveljavna (kot možnost, kako veljavna je, če je dovoljenih več vrst licenc, ki se razlikujejo po zmogljivostih). Tukaj lahko igrate na to z naslednjim algoritmom:
  1. Programu navedite, da je licenca že preverjena
  2. Pokažite programu, da je licenca pravilna
Kako narediti? Omenil sem že prisotnost metapodatkov v izvršljive datoteke na začetku bomo to uporabili. Poglejmo, kako se program zažene in kako se preveri licenca:


Z zagonom ni nič zanimivega, vendar preverjanje pokaže, da če je program že registriran, potem šteje, da je vse v redu in ne opravlja nobenega nadaljnjega dela za ugotavljanje pravilnosti licence.

Uporabimo tole:
Ustvarimo nov projekt, dodamo sklic v Expresso.exe in ga poženemo skozi sebe:


Poglejmo, kaj se je zgodilo:


No, kdo bi dvomil.

V tem primeru se je vse izkazalo za preprosto, a če bi avtor programa zamenjal javne lastnosti z zasebnimi, bi moral za dostop uporabiti samo Reflection in vse bi se zmanjšalo na prvotni problem.

Mislim, da je jasno, kako se lahko poskusite zaščititi pred tem - občasno preverite licenco, poglejte okolje, iz katerega se izvaja program, onemogočite nastavitev zahtevane spremenljivke.

Toda vse te zaščite bodo vodile do tega, da bo napadalec uporabil

3. Fizično vdor v program

Tu postaja vse resno. Celoten program je dekompiliran v MSIL in nato iz njega sestavljen nazaj (se spomnite, napisal sem, da je MSIL isti jezik kot C#?). Za dekompilacijo potrebujemo pripomoček iz SDK, imenovan ildazem, za prevajanje pa je prevajalnik iz .NET Framework ilasm.

Zaženite ildasm, odprite Expresso.exe in shranite izpis v datoteko .il. Poiščemo že obravnavano metodo IsRegistered in dodamo malo naše kode (brez oznak):

Nato vzamemo ilasm in vse sestavimo nazaj (ne pozabimo povezati virov).

Kaj naredi ta koda: namesti želeno ime za registracijo (neobvezno), in vrne status, da je vse v redu.
Da bo bolj jasno, tako izgleda v reflektorju, v C#

Tisti. Povsem očitno je, da bo zdaj vse v redu:

Nekaj ​​o kodi v MSIL: to je skladovni stroj, ki nima registrov, vse operacije imajo obliko: potisni zahtevano število parametrov na sklad, izvrši funkcijo, ki sprejme zahtevano število parametrov in postavi rezultat. No, in obratno: nastavite vrednost spremenljivke na tisto, kar je na skladu. Da bi bolje razumeli, kako vse to deluje, priporočam preprosto tehniko: napišite majhen program v znanem jeziku, ga prevedite, poglejte, kaj se zgodi v MSILe in razumejte jezikovne konstrukte.
Hkrati je mogoče nekatere stvari v MSIL narediti zelo lepo, na primer zamenjavo dveh spremenljivk - 4 lepe vrstice (manj v C#, a grde).

Kaj napadalec žrtvuje: podpis programa, zdaj ni več avtorjev, ampak njegov. V nekaterih primerih je to težava, če program uporablja veliko knjižnic. Nato jih bo zlobni heker moral vse razstaviti in znova sestaviti, a če bo temu kos, bo imel "svojo" podpisano različico programa. njegov ključ.

Pravzaprav je malo zaščite pred vso to sramoto: izvedite zameglitev ali premaknite del logičnih/varnostnih pregledov v izvorno kodo.

Zaključek

Mislim, da sem vam povedal, kako zlahka se vse pokvari na .NET, če se ustvarjalec ni potrudil zaščititi svojega programa. In vi se odločite, ali je vredno narediti zaščito in porabiti čas in sredstva za to. Ali pa morda preprosto naredite spletni sistem ali brezplačno omejeno različico. Odločitev je na razvijalcih.

Različni generatorji (gesla, vzdevki, naključna števila in kode) so zelo priljubljene, saj jih javni administratorji, lastniki organizacij in običajni uporabniki pogosto uporabljajo za različne namene.

Generator promocijske kode– posebna storitev, ki jo lahko uporabljajo lastniki organizacij in komercialnih podjetij za izvajanje promocij in nagradnih iger.

Na primer, z uporabo promocijske kode je možno zagotavljati popuste, darilni boni veljajo v trgovinah, na drugih storitvah pa z njimi omogočiti dostop do širšega nabora storitev.

Izbira

Za tiste uporabnike, ki pogosto uporabljajo promocijske kode, je pomembno najti funkcionalen in priročen generator, ki izpolnjuje vse zahteve.

Takšne storitve se izvajajo kot aplikacije za socialna omrežja(kar je še posebej priročno pri izvajanju promocij med javnimi naročniki, na primer), tako na spletu kot v obliki programov, nameščenih na računalniku (kar je v večini primerov popolnoma neprijetno).

Razlikujejo se po nastavitvah in seznamu funkcij.

Pravilno izbran generator lahko bistveno poenostavi proces organizacije promocij in posebnih ponudb ter nagradnih iger.

Glavne značilnosti

Vsi priljubljeni (in manj priljubljeni) generatorji se med seboj razlikujejo po številnih parametrih.

Med njimi so takšni kazalniki, kot so število znakov v kodi, prisotnost predpone in postfiksa (kar poenostavlja razvrščanje in delitev kod v skupine), ki se uporablja v itd.

Poleg tega različne storitve ponujajo različno število kod za sočasno (s pritiskom na en gumb) generiranje.

Osnovno specifikacije spodaj obravnavane storitve so prikazane v tabeli.

Tabela 1 . Primerjalne značilnosti različnih storitev za generiranje promocijskih kod
ImeLicencaPredpona, postfiksIzbira simbolov za uporaboIzbira števila znakovHitro ustvarjanje več kod
GetEasyCode.ruBrezplačen preizkus, plačan vnaprejjajajaja
Naključno določiprostštjajaja
TakeTheCodeprostSamo predponajajaja
Akademijaprostštštštšt
Generator ukrbio.comprostštOmejenojaja
Studio F1prostštOmejenojaja
InglobalnoprostSamo predponaOmejenojaja

Na podlagi teh lastnosti je lažje narediti pravo izbiro.

GetEasyCode.ru

To je hitro naloženo enostransko spletno mesto z generatorjem, ki je hiter in stabilen.

Skoraj vedno na voljo.

Glavna značilnost storitve– največja funkcionalnost in visoka hitrost.

Meni je preprost in intuitiven, dizajn je prijeten in ne odvrača od dela.

  • Omogoča ustvarjanje predpone in postfiksa;
  • Ustvarite lahko več kod hkrati (od 1 do 100);
  • Uporabnik lahko sam izbere, katere simbole bo uporabil v kodi.
  • Neprijetno preklapljanje števila kod;
  • Plačano zagotavljanje od 100 do 999 kod - stane 299 rubljev (v času pisanja);
  • Plačano zagotavljanje 1000 kod ali več - stane 999 rubljev (tudi v času pisanja);
  • Neprestano morate pritiskati gumb "Nisem robot".

Tukaj pravijo uporabniki, ki so že uporabljali ta generator: "Priročna, večnamenska storitev", "Precej visoke cene za proizvodnjo", "Priročno je uporabljati ta generator - uporabljam samo njega."

Naključno določi

To spletno mesto je zasnovano za naključno ustvarjanje različnih gesel, promocijskih kod, številk itd.

Je večnamensko in priročno za tiste, ki izvajajo različne potegavščine ali uporabljajo veliko gesel.

Ta generator je postavljen kot premium storitev za spletne trgovine.

Ni najenostavnejši za uporabo, vendar je resnično bogata in brezplačna storitev.

Glavna značilnost storitve je tako imenovani "individualni" način generiranja kode.

V tem načinu lahko napišete obstoječo kodo, ki označuje, da je treba spremeniti samo določene znake.

  • Možnost registracije predpone;
  • Možnost ročnega vnosa uporabljenih simbolov;
  • Razpoložljivost načina nastavitev "individualne" generacije;
  • Ustvarite lahko do 10 milijonov kod in jih prenesete v takšni ali drugačni obliki;
  • Prikazovanje verjetnosti izbire za kode različnih tipov.
  • Nezmožnost registracije postfiksa;
  • Omejeno majhno število znakov (od 4 do 16);
  • Ustvari se vsaj 1000 kod.

Uporabniki se na storitev odzovejo na naslednji način: "Priročno je, da lahko ustvarite veliko kod hkrati," meni pa ni zelo priročen.

Akademija

Ta generator je na voljo za uporabo na povezavi https://academy.ru/personal/promo-gen/.

To je večnamensko spletno mesto, med številnimi funkcijami je med drugim tudi generator promocijskih kod.

Precej zapletena zasnova in veliko strani vodijo do tega, da se storitev nalaga dolgo.

Pomembno je razumeti, da to spletno mesto ni specializiran generator. Lahko pomaga pri enkratni generaciji.

Vendar ga je nemogoče uporabiti v množičnem obsegu.

  • Hitro ustvarjanje brez nepotrebnih nastavitev;
  • Priročno kopiranje kode s pritiskom na en gumb;
  • Pripravljena baza neuporabljenih promocijskih kod.
  • Zelo majhno število funkcij - ne morete izbrati števila ali števila sočasno generiranih kod itd.;
  • Ne morete določiti predpone ali postfixa; sistem privzeto izbere tudi zasnovo kode;
  • Na strani je kar precej različnih povezav in oblikovnih zapletov, zaradi česar delo ni preveč enostavno.

Uporabniki govorijo o generatorju takole: "Morda je v redu prejeti eno promocijsko kodo, ni pa jasno, kako jo uporabiti širše", "Zelo neprijetno in malo funkcij."

Generator ukrbio.com

To je enostranski generator s preprostim menijem in intuitivnim vmesnikom.

Ima preprost in prijeten dizajn, zahvaljujoč kateremu se stran hitro naloži.

Storitev deluje stabilno in zagotavlja zadosten nabor funkcij.

Ta storitev vam omogoča ustvarjanje kombinacij samo iz številk, samo iz črk, mešanih, vključno z ali.

Prav tako lahko prilagodite velike in male črke in prikažete vse kode v enem ali drugem formatu.

  • Preprost meni in minimalistična zasnova spletne strani;
  • Brezplačno ustvarjanje zelo velikega števila kod (od 1 do 9999 kosov);
  • Možnosti prilagajanja formata in videza prihodnjih kod so precej široke.
  • <Рис. 8 Studio F1>

    Ta večnamenska storitev generiranja je na voljo na https://studiof1.ru/blog/developing/passgen/.

    Spletna stran je večnamenski vir s storitvami za promocijo spletne strani itd.

    Vir ima dokaj preprosto zasnovo in je primeren za uporabo v primerih, ko uporabnik poleg promocij organizira nagradne igre in druge dogodke, da bi pritegnil občinstvo.

    Strogo gledano se ta storitev imenuje generator gesel, sposoben je ustvariti precej zapletene in raznolike kombinacije, ki jih je mogoče uporabiti kot promocijske kode.

    Navsezadnje vam ta storitev omogoča uporabo skoraj vseh istih nastavitev, ki jih ponuja generator promocijskih kod.

    • Možnost izbire dolžine gesla in njegove sestave (male in velike črke, številke, znaki);
    • Možnost ustvarjanja več kod gesel hkrati;
    • To spletno mesto ima na dosegu roke veliko pomožnih, pogosto potrebnih funkcij.
    • Nezmožnost nastavitve predpone in postfiksa;
    • Uporabljenih znakov ni mogoče omejiti ali izbrati;
    • Vse kode so zapisane z eno besedo brez presledkov in so približno enake videz, jih ni mogoče prenesti - samo kopirati kot navadno besedilo, kar je neprijetno, če jih je veliko.

Predstavljajmo si situacijo, ko bi morali "uničiti Windows" (odstraniti operacijski sistem sistem windows) in namestite novega. Če se s tem spopadete, se lahko pojavi težava, kot je namestitev programov in iger, ki so vam že znane. Dobro je, če so prosto dostopni in brezplačni, a kaj storiti, ko ste program (ali igro) plačali in ko jo znova namestite, zahteva, da Licenčni ključ(in to je čisto normalno)? Dobro je, če ste ga nekam shranili in zapisali, kaj pa če ste izgubili ali niste pustili ključa? V tem primeru obstajata dve rešitvi.

1) Pišite v podporo temu programu in razložite situacijo. Če so razvijalci normalni in jim dokažeš, da si res kupil njihov produkt, potem ti bodo pomagali.
2) Uporabite eno brezplačen program, o čemer bo besedilo v nadaljevanju.

Tako se imenuje program Svetovalec Belarc - brezplačna revizija osebnega računalnika

Postopek namestitve je običajen.
Najprej se strinjamo z informativnim sporočilom, da imajo tudi različico za Android

Nato se strinjamo z licenčno pogodbo


Nato kliknite gumb Namesti (program ne vpraša, kam namestiti) in se strinjate z analizo sistema za iskanje ključev:


Čakamo na dokončanje


In na koncu se odpre okno (ta vrsta poročila) z različnimi informacijami (operacijski sistem, vse komponente, uporabniki, omrežja itd.). Tu na dnu iščemo postavko Licence programske opreme in vidimo vse, kar je našel program:

Nimam veliko, ker... Večinoma uporabljam brezplačne rešitve, vendar je pomen jasen.

Tako lahko s tem programom najdete licenčne ključe ne samo za operacijski sistem in programov ter poiščite podrobno statistiko o vašem računalniku (do najnovejših povezanih bliskovnih pogonov). Zato menim, da vam bo ta program koristen in je vredno vedeti o njem.




Vrh