vezi biscuiti
Sarcina cracare se reduce aproape întotdeauna în jos pentru a, pentru a face să funcționeze fără a fi nevoie să deranjeze dezvoltator la procurarea cheltuiala de licențe (și, prin urmare, nu-l plătească). Deși practicile sociale. Engineering nu a fost anulat. Și cel mai frumos hack - înregistrarea generator de fisurii cheie. De aceea, dezvoltatorii se străduiesc să facă cheile dificile, folosind următoarele tactici:
- Cheia este să nu fie prea scurt pentru a exclude posibilitatea alegerii sale
- Cheia poate cuprinde valori de cod care sunt critice pentru funcționarea corespunzătoare a programului
- verifica algoritmul cheie este împărțit în verificări de bază și controale mici răsfirate codul programului (a se vedea. bomba cu ceas)
- Cheia este protejat printr-o semnătură digitală - opoziția față de crearea de generatoare de chei
- Utilizarea chei electronice - dongle
- Verificați-cheie pe server pe baza de cumpărători cunoscute
Aceste elemente complica programe de hacking, dar există mai multe probleme (probleme pentru dezvoltatori).
dezvoltatorii uita
Dezvoltatorii nu diferă originalitate. Cum sa faci o cheie de înregistrare, în același timp, legându-l numele utilizatorului? În orice alt program, puteți vedea numărul de caractere ASCII-codul unui șir de conectare și utilizarea de numărare lungimea liniei este inversă pentru parametrul cheie, utilizarea funcțiilor hash (care este aproape întotdeauna un eșec - funcția hash fără o protecție suplimentară de cod și constantele lor doar localizate în programeze și să accelereze cracare). Când se utilizează funcțiile hash sunt de multe ori adaugă la șirul mesajului deschis fixat - numele programului sau o frază, în scopul de a crește mesajul înainte de hashing (De ce faci asta?). Unul dintre principalii dezvoltatori de erori frecvente este de a instala codul de generare numărul de serie al programului sau numărul de numere de serie fixe în codul. Opțiunea ultima eroare - lista neagră a numerelor de serie. Nu o fac niciodată! În cazul în care este necesar să adăugați o cheie în lista neagră, să ia o parte din ea, adăugați-l șir (dacă există un nume de conectare și link către echipamentul - acestea sunt prea) și folosiți funcția hash sigure - pentru a păstra programul în condiții de siguranță numai hashes chei furate. În primul rând, se elimină posibilitatea de hacking patch - schimbarea câțiva octeți în numărul de serie și se recalculează suma de control (dacă este cazul), puteți utiliza numărul de serie din nou. În al doilea rând, atacatorul cunoaște formatul cheilor, și anume parametri importanți, cum ar fi lungimea, setul de caractere, partea secretă a numărului de serie (dacă este cazul) - este nu numai în ori pentru a mări viteza de dezvoltare de droguri, dar, de asemenea, ajuta pentru a testa cheie generator.
Utilizarea criptografiei
Cea mai frecventă greșeală în protejarea software-ul este schema criptografic fragmentară și anecdotice. În cazul în care programul conține codul de criptare, cheia de înregistrare păstrează o cheie simetrică. În cazul protecției automate (de protecție sau utilizarea unei implementări cunoscute de algoritm criptografic, generarea de chei), poate fi găsit vulnerabilități care pot genera o cheie secretă la rupere decât de obicei se termină. Aceste vulnerabilități includ lungimea cheițe (32 biți - este mic), eroarea în RNG (atunci când o parte a entropiei poate fi ghicit, de exemplu, în cazul dependenței directe de timpul de generare a unei chei sau o valoare mică a valorii de declanșare) și, în final, posibilitatea criptanaliza cu lungimi de dezasamblor și calculator entropie (în cazul utilizării unui algoritm bun, din care una este rezistența AES împotriva acestui atac va fi prea mare).
comandă tPORt împreună cu alte echipe și experți independenți și asistenți rupe în mod repetat, cu circuit deschis RSA -512 și de mai sus. Calcul distribuit este un alt mod eficient de a sparge software-ul. Chad Nelson a susținut că biscuitii semnătură nu se poate face. În protecția companiei sale au fost făcute două erori, a permis să rupă ECDSA -113 fără utilizarea de calcul paralel. Calcule paralele implicate în alte echipe, dar informații cu privire la activitățile lor în domeniul public nu.
Negru-coli
-coli negru (engleză lista neagră, lista neagră.) - una dintre modalitățile de a rezolva problema de scurgere de chei în domeniul public. Informațiile de bază sau de identificare (hash cel mai frecvent utilizate) sunt adăugate la site-ul web al dezvoltatorului sau intra direct distribuția de program (de obicei, în Glan executabil). Încercarea de a înregistra un program-cheie de pe lista neagră nu va duce la înregistrarea acesteia. Biscuiți borjatsja lista neagră prin crearea de patch-uri sau generatoare de chei.
Alb-liste
Alb-coli (Eng. Listă albă, lista albă), pe de altă parte, sunt folosite pentru a stoca licențe utilizatorilor legitimi, nu încalcă termenii acordului de licență. Din nou, programul verifică cheia, sau prin intermediul site-ului (de verificare on-line), sau lista albă „cusute“ direct în ea. Pentru a lucra în jurul valorii de liste albe trebuie să fie de patch-uri a programului, sau să trișeze (în cazul testării on-line pentru a corecta fișierul gazde, sau de a face un încărcător, care va prinde verificarea cheii pe server) sau pentru a efectua Bruteforce -ataku dacă este fezabil pentru victimele hacking. De asemenea, manivele de multe ori dezvoltatorii care pur și simplu stochează cheia în text simplu în program. Această cheie poate fi obținută fără a mai deschide disassembler și debugger.
chei de înregistrare Exemple
Iată câteva exemple de chei de înregistrare. Aceste exemple pot fi folosite pentru a tastat rapid pentru a ghici care protecția a fost utilizată.
- ASProtect SKE (în acest cratime de apărare sunt aranjate de la stânga la dreapta, separate prin numărul de serie în blocuri de 5 caractere)
- Armadillo: cheie nesemnat
- Armadillo: Nivel 1 V2Key
- Armadillo: Nivelul V3Key 9
- Armadillo: Nivel 1 ShortV3Key
- Armadillo: Nivelul ShortV3Key 10 (zerourile în Armadillo sunt aliniate, prima cifră semnificativă 1 - nivel 10 marcator)
- mediu Obsidium 1.4 chei scurte
- VMProtect Ultimate
să se înregistreze programul cere să introduceți codul. Cum se rupe?
Tocmai am început de mers înapoi „mii, și au o întrebare. să se înregistreze programul cere să introduceți codul. Cum de a prinde un loc unde ea se va citi, asa ca ai putea afla ce face cu PIN-ul, iar în cazul în care există o verificare.
Ai nevoie pentru a încerca să pună un punct de întrerupere asupra funcției GetWindowTextA. GetDlgItemTextA. În cazul în care nu funcționează, apoi încercați să puneți un punct de întrerupere asupra funcției hmemcpy / memcpy. Desi de multe ori mai ușor să se uite la mesajul de eroare, și anume, căutare în legătură dezasamblor la un mesaj de eroare șir. Nu este necesar ca programul va utiliza cel puțin una dintre aceste funcții API. de exemplu, în cazul în care programul este scris în VB sau Clarion.