Programmi Commerciali Di Protezione Del Software
Oltre che i programmi dello shareware e del freeware, ci sono un certo numero di programmi commerciali per protezione del software. Questi, anche, variano nella qualità. Nel scrivere questo articolo, ho inteso scrivere circa tutta la protezione commerciale del software che potrei trovare. Ho imparato rapidamente, benchè, che ci fosse lontano troppi pacchetti dell'annuncio pubblicitario da coprire in uno spazio ragionevole, in modo da whittled la mia lista iniziale giù a circa quaranta pacchetti (forse un terzo di che cosa è disponibile). Allora ho selezionato che cosa ha sembrato essere non soltanto il più noto, ma anche, nel mio punto di vista, i pacchetti migliori ed hanno studiato dettagliatamente ciascuno. Ho messo a fuoco entrambi sul disegno di ogni pacchetto così come il codice in se. La maggior parte del software commerciale corrente funziona come il armadillo, SVKP, Vbox ed ASProtect. Tuttavia, soltanto alcuni pacchetti software gestionali controllano bene la loro protezione e la maggior parte di questi programmi neppure non sono protetti dai cambiamenti nel codice, che trovo per essere molto unprofessional. Ci è abbastanza una gamma di protezione del software disponibile e la maggior parte ha relative debolezze. Come sviluppatore del software, dovreste capire le debolezze nei programmi che scegliete e sviluppate una buona strategia per impiegare la protezione del software. Ci sono là ed una volta usati intelligentemente buone soluzioni fuori, uno è sicuro funzionare per voi, ma non prevede alcuna una soluzione all'ultimo per sempre. ASProtectASProtect, dal software di ASPack (http://www.aspack.com), non è giusto un altro programma anti-spezzantesi commerciale; è un avanzamento vero rivoluzionario nella protezione del software. Può essere la soluzione preimballata a protezione del software per coloro che non desidera spendere le ore lunghe che studiano e che programmano la protezione su ordinazione per il loro proprio software. Il creatore Alexey Solodovnikov del ASProtect ha imparato mólto dal suo lavoro su ASPack ed ha applicato quell'esperienza a ASProtect. Sostiene che perché tutte le difese anti-spezzantesi possono essere sconfitte, l'unica cosa importante è in che circostanze possono essere rotte. Mentre è stata generata particolarmente per gli sviluppatori dello shareware, ASProtect può essere usato per software professionale pure. Mentre non è versatile quanto FLEXlm e funziona soltanto sotto Windows, I daresay che è attualmente la protezione del software commerciale più difficile da rompersi. La relativa soltanto debolezza è che non ha i trucchi anti-mettere a punto migliori. Confrontato all'altra protezione commerciale del software, ASProtect è semplice e bene-programmato, riflettendogli l'idea semplice ma meravigliosa. Come i programmi simili, il programma originale è compresso ed allora non compresso da ASProtect prima che sia funzionato. La compressione del ASProtect è basata sulla procedura di ASPack, che è fra il la cosa migliore. Mentre aggiunge circa 60KB del codice al programma originale, questo codice supplementare non importa affatto, poiché il programma compresso risultante è molto più piccolo allora quello originale. La procedura di decompressione del ASProtect controlla per vedere se ci siano stati tentativi di cambiare la lima e prova ad impedire i cambiamenti nella memoria. Naturalmente, senza decompressione, il programma originale non può essere smontato e non è facile da decomprimere ASProtect perché prova ad impedire le copie della memoria principale dai programmi come ProcDump. La sezione dell'importazione è stata fatta uscire una volta dalla memoria, la lima del PE non sarà corretta. Eppure, ci è un senso decomprimere ASProtect (non appena facendo uscire), ma ASProtect ancora non è sconfitto anche dopo la decompressione riuscita. Come FLEXlm, ASProtect prova ad impedire l'uso di determinate funzioni nel programma protetto quando è unregistered e rispetto così in modo bello all'altro software. Per esempio, se un programmatore desidera inabilitare la previsione nella versione unregistered, deve soltanto mettere questa funzione in codice con ASProtect. Dopo il registro, la parte disabled è decodificata usando un costante dalla chiave di registro e non è possibile decodificarla senza questa chiave di registro. La codifica particolarmente forte del ASProtect impedisce persino gli attacchi diretti (della animale-forza). Ci sono tre sensi assicurare un'applicazione con ASProtect. Il primo senso usa la compressione classica e non è suggerito perché è relativamente facile da decodificare. La seconda possibilità è molto più interessante, benchè ancora non il la cosa migliore. Con questo metodo, la protezione originale in primo luogo è autenticata dopo che il ASProtect api sia denominato con un costante per la decodificazione della parte messa del programma. Potreste usare questo metodo se, per esempio, il programma che desiderate proteggere già ha relativo proprio controllo di registro e non desiderate cambiarli. Questo metodo sarebbe una povera scelta se la protezione originale è debole, poiché non impedirebbe il cracker ottenere il costante corretto. La terza e possibilità migliore non aggiunge alcuna protezione al vostro programma (anche se le protezioni supplementari sono possibili). Basicamente quando usando questo terzo metodo, specificate nella linguetta di chiavi di registro in ASProtect che desiderate il vostro progetto contenere una chiave di registro. Il programma allora genera un costante di base che servirà da base per altre chiavi e che inoltre sarà usato per mettere la parte in codice protetta del programma. Potete generare le chiavi secondo i nomi dell'utente e potete anche conservarli. Per concludere, determinate dove la chiave di registro sarà conservata nella registrazione dopo il registro. Le lime chiave del ASProtect della nota hanno conclusioni CHIAVE ma sono essenzialmente lime del registro che sono importate nei registri doppio-sono state scattate una volta che. Ciò è un vantaggio, perché le chiavi di registro del ASProtect sono piuttosto lunghe e per gli utenti sarebbe noioso entrarli in a mano. Il punto seguente è verificare il registro. Se avete soltanto una chiave di registro, il programma stamperà il nome dell'utente registrato. Potete anche specificare le chiavi che illegalmente sono state rese a pubblico se non le desiderate funzionare nelle versioni future del programma. Le versioni successive di ASProtect probabilmente potranno generare le chiavi per soltanto un calcolatore, che impedirà la distribuzione illegale delle chiavi di registro. Per concludere, nel codice di programma specificate le parti del programma che desiderate mettere—questo in codice siete una procedura semplice che può essere effettuata da quasi tutto il programmatore. Attualmente ASProtect contiene gli esempi di codice per Delfi, C++ visivo e di base visivo. Per esempio, qui è un esempio corto in C++ visivo: includa < windows.h > # includa il carbone "di include\asprotect.h" * messaggio; svuoti RegisterAction() {
REG_CRYPT_BEGIN messaggio = "versione registrata!"; REG_CRYPT_END } WINAPI interno WinMain (hInstance di HINSTANCE, hPrevInstance di HINSTANCE, szCmdLine di PSTR, iCmdShow interno) {
messaggio = "versione unregistered!"; RegisterAction(); MessageBox (0,message, "",0); ritorno 0; } Dovete aggiungere REG_CRYPT_BEGIN all'inizio del programma messo e REG_CRYPT_END all'estremità. All'inizio della parte messa del programma, dovete aggiungere i seguenti dati: 0EBh, 04h, 0EBh, 05h, 89h, 89h, 0E9h, 0, 0, 0, 0 Ed i seguenti dati sono aggiunti all'estremità: 0EBh, 04h, 0EBh, 05h, 99h, 99h Questi dati permettono a ASProtect di trovare le zone che in codice desiderate mettere. Dopo, dovete soltanto denominare la procedura ed il resto sarà fatto per voi. Se un programma non è registrato, la parte messa sarà saltata, oppure un errore accadrà. Se il programma è registrato, questa parte sarà decodificata all'inizio del programma e sarà usato più successivamente quando è denominato. Potete ottenere il nome dell'utente con la funzione del apiGetRegInfo() api. Se dovete generare molte chiavi di registro immediatamente, ASProtect lo rende facile fornendo la biblioteca keygen.dll. Potete generare le chiavi di registro con le relative due funzioni. La funzione di GenerateKeyAsRegFile() genera una lima di registro basata sulle informazioni dell'utente. Alternativamente, la funzione di GenerateKeyAsString() restituisce l'indicatore di memoria a dove la chiave di registro è stata generata. ASProtect permette che regoliate il numero di volte che un programma può essere fatto funzionare o il numero di giorni sarà utilizzabile. Diverso dei programmi commerciali simili, tutta la protezione è disposta nella lima del PE e non nelle lime aggiunte di OCX o che del DLL. A partire da questa scrittura, è impossible affinchè un cracker rimuova correttamente la protezione del ASProtect. Per fare così, dovrebbe usare la chiave corretta di registro per decodificare il programma ed allora per farlo uscire dalla memoria. Naturalmente, i creatori del programma considerano questo attacco, possono impedirli ugualmente aggiungendo le protezioni supplementari. · Verifichi l'originale della lima: 1.691.648 byte · Verifichi la codifica della lima: 693.760 byte · Decodificatore: AspackDie FLEXlmFLEXlm, dal software di Globetrotter (http://www.globetrotter.com) è uno dei programmi il più frequentemente usati di protezione per software commerciale più pricier. Mentre originalmente usato principalmente con il software di UNIX, durante gli ultimi anni è stato usato con altri sistemi pure, particolarmente Windows. FLEXlm è usato dai più grandi produttori del software, compreso i sistemi dell'adobe, i microsystems del sole, Texas Instruments, Sybase e SGI. FLEXlm sostiene la maggior parte dei sistemi operativi e molti protocolli di rete ed offre molti sensi proteggere un prodotto. Brevemente descriverò più importanti quei. L'opzione delle caratteristiche di prodotto di enable/Disable è usato il più frequentemente. Il demo del demo (autorizzazione Tempo-Limitata) o i programmi tempo-limitati può inabilitare determinate caratteristiche trovate nel prodotto pieno. La scadenza può essere determinata entro una data in cui l'autorizzazione espira, entro un certo numero di giorni, o tramite un certo numero di inizio di programma. Enable/Disable le caratteristiche che di prodotto questa opzione li lascia inabilitare alcune caratteristiche di programma ed usare i vari tipi di autorizzazioni. Per esempio, nella versione "del lite" di un programma, alcune funzioni potrebbero essere disabled ed allora hanno permesso una volta che un utente registra per "la pro" versione. Galleggiando su una rete questa opzione li lascia determinare il numero massimo degli utenti che possono usare un programma particolare su una rete contemporaneamente. L'Chiam-Utente questa regolazione specifica che il programma può essere usato soltanto sui calcolatori che hanno loro nomi della rete specificati in una lista degli utenti. Nodo-node-Locked questa opzione blocca il prodotto ad un calcolatore particolare. Nodo-node-Locked ha contato le serrature di questa opzione il programma ad un calcolatore e soltanto per un numero limitato di inizio. Tempo-Limitato questa opzione fissa una data dopo di che l'autorizzazione per il prodotto espirerà ed il programma più non sarà utilizzabile. Il dominio soltanto questa opzione limita l'uso del prodotto ai calcolatori in un dominio specifico del Internet. I prodotti protetti denominano la protezione del FLEXlm usando le funzioni di api e questa protezione allora controlla l'autorizzazione in una lima, solitamente license.dat. Prima che il programma usi una funzione protetta, controlla per vedere se un utente particolare abbia una destra usare la funzione. La protezione del FLEXlm non è unbreakable comunque. A questa scrittura, ci è un generatore che capitalizza sulle omissioni in FLEXlm di produrre le lime corrette dell'autorizzazione. Naturalmente, l'esistenza di questo generatore diminue l'efficacia del FLEXlm. D'altra parte, benchè, una volta usato correttamente ed unito con altre protezioni, FLEXlm può offerta tranquilla una soluzione molto buona. Per esempio, se un altro programma è usato per esaminare ancora l'autorizzazione in un certo altro senso una volta una funzione protetta è stata usata, quel programma spesso rivelerà una lima illegalmente generata dell'autorizzazione. È a volte difficile da trovare tutte le funzioni protette del FLEXlm ed è assolutamente essenziale per evitare di disporre i loro nomi direttamente nella lima di EXE nella forma leggibile. Poiché i cracker regolano spesso uno scaglione di fatturazione sulla chiamata del lc_checkout quando cerca le chiamate di funzione di FLEXlm, è migliore controllare le funzioni protette soltanto quando sono usate, piuttosto che controllarle tutte non appena il programma ha cominciato. Sia sicuro, anche, controllare gli scaglioni di fatturazione regolati a questa chiamata ed usare altre protezioni nel programma. Mentre FLEXlm è breakable, è facile da usare. La relativa vasta gamma delle opzioni ed il sostegno una varietà di sistemi operativi gli rendono un'opzione attraente di protezione del software. InstallShieldIl software di InstallShield è progettato per la generazione dei pacchetti dell'installazione. Probabilmente chiunque che lavorasse in Windows già lo ha visto esso ed è più probabile l'applicazione migliore nel campo per fare così. Molti programmi hanno tentato di competere a InstallShield, ma nessun lo hanno battuto (benchè alcuni venissero vicino). Poiché un pacchetto difettoso dell'installazione può causare i problemi enormi per distribuzione del prodotto, dovreste usare il prodotto che dell'installazione migliore possiate trovare, anche se è una punta più costosa. InstallShield estesamente è stato esaminato ed è stato usato per parecchi anni senza problemi, che in se è un buon verific per gli errori. InstallShield può effettuare semplice così come le installazioni altamente complicate. Può persino denominare le chiamate di api delle biblioteche esterne, che è buono per protezione. E, può controllare per vedere se c'è vari termini di registro durante l'installazione. La chiave dei fissaggi è esaminata spesso durante l'installazione e l'installazione è fermata se la chiave corretta dei fissaggi manca. La difficoltà di rimozione della questa protezione dipende soltanto dalla qualità della biblioteca del DLL. InstallShield usa la relativa propria lingua scripting semplice, che è probabilmente la maggior parte come la C ed una volta che il pacchetto dell'installazione è stato generato, le lime sono compresse nelle lime speciali. Nell'installare, tutte le lime necessarie per installazione sono decompresse nell'indice ed allora nel funzionamento di temperatura soltanto da là. Ciò presenta il vantaggio che anche quando la protezione può essere rimossa, esso non è ancora facile da cambiare le lime all'interno del pacchetto dell'installazione. (a questa scrittura, un decompressore per la versione 5 di InstallShield potrebbe aggiornare le relative lime appiattite, ma ci era ancora niente come esso per la versione 6.) La parte di spezzare più difficile le lime InstallShield-protette si trova nel rompere la protezione programmata nella lingua dello scritto di InstallShield. Mettere a punto la lingua è difficile perché è molto simile a di base visivo nel p-codice. Il attacker incontrerà un problema quando prova a cambiare la lima che contiene lo scritto che—la lima è protetta da un controllo di CRC ed è molto difficile da effettuare correttamente il cambiamento perché la struttura della lima è piuttosto confusionaria e complicata. Eppure, la protezione può essere rotta. Installi lo schermo è chiaramente il programma migliore per la generazione dei pacchetti dell'installazione. È stata usata non soltanto con i giochi ma anche con le applicazioni più costose. ShareLockShareLock dal software di Nesbitt (http://www.nesbitt.com) è protezione commerciale che usa le chiamate del DLL api. Mentre è stato interrotto da Nesbitt, ancora è usato oggi, in modo da lascili hanno uno sguardo esso. La protezione dello ShareLock è più complessa di un programma come Vbox, richiedentevi di inserire una chiamata di api nel codice per verificare l'applicazione protetta. Potete esaminare a scadenza di una scadenza o a precisione del numero di matricola inserito. L'intera protezione è assicurata da un DLL ShareLk20.dll denominato biblioteca, che deve essere situato nell'indice con l'applicazione protetta o nell'indice del sistema di Windows. Il punto più debole dello ShareLock si trova nella protezione della biblioteca del DLL in se, che è molto facile da modificare perché non ha controlli di CRC. D'altra parte, il calcolo di numero di matricola è molto buono ed è duro da trovare; per trovarlo, un attacker dovrebbe mettere a punto ShareLk20.dll e trovare una posizione per il cambiamento nel codice di programma, il punto in cui il programma si comporterebbe come se registrato. Purtroppo, se la protezione può essere rotta questo facilmente, non ci è senso proteggere l'applicazione dall'attacco. (forse l'applicazione protetta potrebbe effettuare il totale di controllo della biblioteca del DLL per rilevare un attacco.) Eppure, le notizie più difettose sono che una volta che la protezione di ShareLk20.dll è rotta, è possibile usare (illegalmente) tutte le applicazioni che usano questa protezione commerciale, che può scaturire è perchè questo prodotto è stato interrotto. Il Sistema Di Protezione Del Software Del ArmadilloIl sistema di protezione del software del armadillo è protezione commerciale dai regni Toolworks (www.siliconrealms.com/armadillo.htm) del silicone. I programmi sono messi e compressi per mezzo di una chiave di cifratura a caso generata. Il armadillo contiene una specialmente funzione interessante che permette che gli sviluppatori forniscano i numeri di matricola illegali trovati dai cracker in una base di dati in modo che tali numeri siano non funzionali nelle versioni successive. Il armadillo inoltre contiene i trucchi anti-mettere a punto che proteggono da SoftICE. È facile da controllare il armadillo e guarderemo alcune delle relative caratteristiche più interessanti nella seguente lista. Il armadillo ha un sistema di aiuto molto buon anche; per imparare più circa un'opzione particolare, selezionila semplicemente per leggere la relativa descrizione o per accedere al sistema di aiuto. I fissaggi che bloccano le opzioni (pro) con fissaggi che bloccano, il numero di matricola cambiano per ogni calcolatore, secondo i vari parametri che regolate qui. Non segnali il controllo di protezione dell'Orologio-Indietro sarà disabled se il tempo non fosse girato indietro sul sistema dell'utente. Questa protezione dovrebbe essere inabilitata soltanto se il vostro programma gli ha problemi con. I certificati inscatolano definisce le chiavi per protezione del prodotto quando i certificati sono usati, il programma possono essere registrati soltanto con questi certificati. Potete regolare le varie opzioni per questi certificati nei sub-menus. Generi la chiave di FixClock se un utente rompe la protezione di tempo e cambia la data, il programma protetto da Armadillo cesserà di funzionare. Quando l'utente fa funzionare il programma in questa disposizione: fixclock del program_name, sarà chiesto di entrare nella cosiddetta chiave "del fixclock". Se entra nella chiave corretta, il programma cominci funzionare normalmente. Il armadillo è un programma molto buon, ma è troppo facile da rimuovere da un prodotto protetto. Per esempio, tutto il cracker deve fare deve attendere fino a che il programma non carichi nella memoria e si decodifichi, il punto in cui può fare uscire il programma dalla memoria al disco e fa alcuni piccoli cambiamenti affinchè il programma sia completamente funzionali. Il armadillo in se rende il lavoro del cracker più facile perché genera un processo nella memoria con lo stesso nome come il programma protetto, tranne il suffisso, TMPO. Questo processo completamente è decodificato dopo il carico nella memoria e tutto il cracker deve fare deve farlo uscire all'azionamento duro. Il armadillo può essere una buona scelta per i programmatori dello shareware che hanno meno esperienza della programmazione di protezione. Questa applicazione osserva realmente professionale e spero che i relativi creatori trovino un senso migliorarlo nelle più nuove versioni. Attualmente, benchè, non possa suggerire il armadillo perché è così facile da rimuovere, anche se meno cracker con esperienza probabilmente non riusciranno a fare così — a meno che, naturalmente, utilizzino un decodificatore trovato sul Internet. · Verifichi la compressione della lima: 1.007.806 byte · Decompressore: Assassino del armadillo e del ONU-UN-Armadillo VboxVbox dai sistemi di conoscenza di Aladdin (http://www.ealaddin.com) è uno di più vecchi e programmi commerciali il più frequentemente usati di protezione per Windows. Mentre è usato principalmente per shareware, le versioni del demo dei programmi costosi a volte sono protette con esso pure. La protezione di Vbox è basata sulle scadenze. Una finestra compare ogni volta che un programma Vbox-protetto è lanciato e da questa finestra potete allontanarsi il programma in se fino a che la scadenza non espiri. Le prime versioni di Vbox sono state denominate TimeLock ed erano molto popolari. Per protezione, TimeLock 2 chiamate di usi api dalla biblioteca di tl32v20.dll, denominata dal programma protetto. L'applicazione protetta verifica i valori di ritorno e decide se continuerà a funzionare oppure no. Assomiglia a questa nel programma: chiamata CallTimeLock Dopo che questo rinvii, il registro di EAX dovrebbe contenere un valore di ritorno che varierà secondo se la prova riusciva oppure no. TimeLock Da 3.03 A 3.10 I miglioramenti in queste versioni di TimeLock includono la codifica di determinate parti del programma e di una previsione che regola il punto di entrata (cominciare) del programma. Questa previsione contiene molto il codice di Vbox che rende mettere a punto difficile. Una chiamata di api all'inizio del programma ha un nome piuttosto insolito: chiamata tl303inj.PleaseTraceIntoMe_MrCracker La parte messa dell'applicazione è decodificata in questa funzione ed il valore di ritorno è il punto di entrata del programma protetto (o nel caso di un errore, dell'indirizzo per la chiamata di ExitProcess api). Il valore di ritorno è ancora nel registro di EAX e l'ultima istruzione deve denominare il eax, che salta su questo punto di entrata reale del programma (o sulla chiamata di ExitProcess api nel caso di un errore). TimeLock Da 3.13 A 3.15 Queste versioni hanno portato parecchie innovazioni: ·La codifica di tutto il codice di programma · La codifica del idata della sezione · Calcolo del CRC della biblioteca del DLL della protezione nella memoria Il programma che decodifica con queste versioni non è facile quanto con quei precedenti. Per una cosa, le informazioni di cifratura sono conservate in una parte messa del idata. Inoltre, il controllo di CRC del tl315inj.dll è nella memoria, che assicura la protezione contro gli scaglioni di fatturazione (naturalmente, non mettere a punto gli scaglioni di fatturazione), così come contro i cambiamenti nel codice. (potete trovare le iniziali del Li di Weijun nel codice; è probabilmente il programmatore del cavo.) Vbox Da 4.0 A 4.03 In questa versione, Vbox in primo luogo è comparso come lo conosciamo oggi. Questa versione, a volte denominata TimeLock 4, contiene molti miglioramenti. Il EXE protetto è compresso e la sezione messa del idata è in una lima separata. La protezione in se è situata in tre biblioteche del DLL: Vboxp4xx.dll decomprime e carica le lime del DLL Vboxt4xx.dll contiene la procedura di base per protezione del PreviewParadise_WJ Vboxb4xx.dll carica vboxt4xx.dll e denomina PreviewParadise Le ultime due biblioteche del DLL sono compresse ma non sono messe e le informazioni sulle chiamate importate sono conservate. Due parti nella lima, denominata previsione e WeijunLi, contengono una buona punta del codice e dei dati messi. La prima parte contiene il codice normale, mentre il secondo è compresso. Una volta che un programma protetto è lanciato, la prima chiamata è a vboxpxx.PreviewExecGate_By_WeijunLi, che decomprime il programma originale nella previsione. Una volta che tutto è stato decodificato, una piccola parte del codice contiene una chiamata ad una funzione esportata da vboxbxx.dll. Questa funzione è inoltre prima decompressa con vboxpxx.PreviewExecGate_By_WeijunLi prima del lancio e denomina vboxtxx.PreviewParadise_WJ. Questa funzione inoltre effettua il CRC sulla lima protetta, così come sulle lime di vboxb4xx.dll e di vboxt4xx.dll. Se il CRC è errato, il programma funzionerà con una chiave errata di decodificazione e dopo la decodificazione errata, il CRC inoltre sarà errato per i dati decodificati. Il programma allora visualizzerà un messaggio di errore. Vbox 4.10 Questa versione contiene le seguenti novità: · CRCs per tutte le lime importanti stanno autorizzando i segnali · CRCs per le copie di lima del DLL sono calcolati nella memoria · Il programma prova a rilevare un programma di messa a punto nella memoria Se qualcuno prova a smontare il codice di vboxp410.dll in WinDasm, un errore si presenterà nel programma. IDA (smontatore interattivo) funzionerà benissimo, ma esso genererà il codice errato. Vbox 4.3 Questa ultima versione di Vbox offre la buona protezione, benchè sia vulnerabile alla fuoruscita dalla memoria (appena come il armadillo). Non importa come vasto il codice, voi non deve provare a capirla tutta per spezzarla. Tutto che dobbiate fare deve trovare l'inizio del programma di cifratura e farlo uscire dalla memoria. (se gli autori risolvono questo problema nelle versioni future, Vbox definitivamente sarà uno dei la cosa migliore dei pacchetti commerciali di protezione.) L'applicazione del costruttore di Vbox del Vbox lo rende molto facile generare un'applicazione protetta. È molto facile da generare una finestra di dialogo iniziale per il vostro programma con Vbox quando lanciate il programma, voi ha regolato un percorso alla lima di privilegio di Vbox, che ogni utente ottiene dall'editore del software. Per ottenere questa lima di privilegio, scatti il tasto della lima di privilegio di otten. Il vostro browser visualizzerà la pagina dell'editore e dovrete compilare un questionario. In alcuni minuti, dovreste ricevere un email che contiene una lima corta con l'estensione del prv. Scattisi dopo e fornisca un nome di archivio per l'archivio d'informazioni dell'autorizzazione di Vbox ed allora digiti una parola d'accesso per impedire alla gente non autorizzata di funzionare con la vostra lima dell'autorizzazione. Dopo, selezioni la lingua in cui desiderate lavorare ed entri nel nome dell'autore, nel prodotto, nella versione, nell'anno e nel numero di identificazione del prodotto. Nei seguenti menu, fornirete le informazioni più importanti, compreso le limitazioni del numero massimo dei lanci o giorni, o data in cui il periodo di prova dell'applicazione espirerà. Nell'avanzato Opzioni il menu, di sicurezza regolerete la protezione dell'applicazione. Se selezionate il grippaggio del software, gli utenti non potranno copiare l'applicazione ad un altro calcolatore a causa delle lime segrete sull'azionamento duro. Se scegliete il grippaggio dei fissaggi, le informazioni sui fissaggi del calcolatore saranno usate per identificare la macchina autorizzata. · Verifichi la compressione della lima: 835.320 byte · Decompressore: Vbox Unwrapper La Protezione Slovacca (SVKP)È particolarmente duro scrivere circa il vostro proprio prodotto senza preconcetti e con l'obiettività massima, come potreste immaginare e la protezione slovacca è il mio prodotto. Eppure, prometto di attaccare ai fatti e di essere obiettivo come possibile. La protezione slovacca (SVKP) è il più giovane dei prodotti commerciali di protezione descritti qui. Nel sviluppare lo SVKP, ho adottato il la cosa migliore delle tendenze più recenti e, di conseguenza, lo SVKP potrebbe assomigliare a ASProtect. Tuttavia, quella somiglianza si estende soltanto fino la loro apparenza ed alcune funzioni. La struttura interna dello SVKP è completamente differente da ASProtect ed è quella unica delle protezioni che ho discusso che è programmato in assemblatore. Il fatto che è sviluppato con l'assemblatore garantisce l'alta velocità e tiene conto alcune tecniche di programmazione speciali che sono non disponibili a molto altra linguaggi di programmazione avanzati. Come con ASProtect, lo SVKP può mettere le parti in codice di un'applicazione protetta, che allora potrà essere decodificato soltanto con la giusta chiave di registro. Usa le chiavi di RSA della lunghezza 2048-bytes', che lo rende impossible generare le chiavi false di registro. Per fare così, un cracker dovrebbe trovare la chiave riservata, ma ottenere la chiave riservata di così lunghezza lunga dal calcolo non è semplicemente possibile con i sistemi di elaborazione correnti. È protetto, programmi compilati nei executables della destinazione (EXE, DLL, OCX, o SCR). L'applicazione protetta non è compressa, ma è messa dalla procedura di Rijndael (anche conosciuta come AES). Questa procedura protegge dagli attacchi della animale-forza e la mancanza di compressione garantisce che il programma funzionerà rapidamente. Questi tipi di protezioni di applicazione sono simili a quelli usati in ASProtect: Codificazione dell'applicazione compilata che, mentre comunque non molto sicura, è sufficiente in alcuni casi. I vantaggi di questa protezione sono di uso facile ed ad alta velocità e quello l'applicazione può usare il relativo proprio controllo di registro. L'applicazione protetta usa le chiavi di registro di SVKP. Utilizza le funzioni di api per determinare se la giusta chiave di registro sia usata. I blocchi (funzioni) nell'applicazione protetta sono decodificati soltanto con la lima di destra di registro. Per usare questi blocchi, semplicemente posti del contrassegno o parti dell'applicazione che desiderate impedire alla gente di usando senza la giusta chiave di registro, prima della compilazione dell'applicazione da proteggere. Ciò è un senso molto facile generare una versione protetta del demo di un programma. Per esempio, se contrassegnate RISPARMI per essere inabilitati prima della compilazione, l'utente (senza la giusta chiave di registro) sarà comunicato che la funzione RISPARMA è inabilitata nella versione del demo. Una volta che il programma è registrato con la chiave corretta di registro, le profonde funzioni saranno immediatamente accessibili. Attualmente abbiamo rivestimenti molto serii di problema noi quando viene a protezione commerciale: la pubblicazione delle chiavi di registro sul Internet. Se un cracker compra un programma (che usando solitamente una carta di credito rubata) ed ottiene la giusta chiave di registro, ha due possibilità. In primo luogo, può tentare di rimuovere la protezione, che non è facile se il programma è protetto dallo SVKP. In secondo luogo (e un possiblity molto più attraente a lui), può pubblicare la chiave rubata di registro sul Internet. In questo caso, chiunque che usi questa chiave reale può trasformare nella loro versione del demo un programma completamente funzionale. Lo SVKP, il ASProtect ed il armadillo tutta l'offerta che i tipi chiave speciali protetti di applicazione hanno generato per un calcolatore specifico agli utenti che intendono registrare. Un vantaggio di queste chiavi è che non possono essere spostati fra i calcolatori; quindi, la loro pubblicazione sul Internet non minaccia la protezione dell'applicazione. Naturalmente, ci sono alcuni svantaggi, pure. Per uno, il registro richiede all'utente di trasmettere i dati circa il suo calcolatore ad un assistente prima che la chiave sia generata, ma non ogni utente gradisce fare quello. Anche, nessun delle protezioni elencate funzionano in linea, in modo da un registro potrebbe essere fatto direttamente usando le relative funzioni di api. (ulteriore sviluppo probabilmente dirigerà verso permettere ed il pagamento il registro direttamente con un programma di protezione, senza avere bisogno di andare al Web site di registro o al luogo del produttore.) Il problema più grande, tuttavia, presenta con un cambiamento di fissaggi. Se l'utente cambia i suoi fissaggi, la chiave smette di funzionare e brandnew deve essere generata. È per questo motivo che la maggior parte dei sviluppatori permettono che le chiavi siano trasferite fra i calcolatori. Lo SVKP include alcune altre tecnologie progressive anche, l'più importante di quale sono chiamate di api che permettono ad un'applicazione protetta di comunicare con la relativa protezione, vale a dire la funzione SVKP_GetRegistrationInformation. Diverso di altre protezioni, lo SVKP inoltre contiene le funzioni di api con protezione attiva, compreso SVKP_LockKeybord, SVKP_KillDebugger, nomi che rivelano il loro scopo. Oltre che i blocchi codificati classici, che sono decodificati soltanto con la giusta chiave di registro, lo SVKP include altri due tipi del blocco. Il primo tipo è decodificato a destra prima che lo start-up e, dopo l'esecuzione, il codice di programma che contiene il blocco immediatamente sia cancellato. Suggerisco che usate questo primo blocco scrivete dentro le parti a macchina iniziali di codice. Il secondo tipo del blocco inoltre è decodificato a destra prima dello start-up, ma è codificato ancora subito dopo dell'esecuzione. Usi questo tipo del blocco per le parti critiche di codice. Athough tutto di suddette tecnologie protegge dalla fuoruscita e gli SVKP e l'altra protezione commerciale contengono la protezione attiva contro la fuoruscita dalla memoria, esso non sono abbastanza. Questa tecnologia offre una protezione molto efficace contro la fuoruscita del programma dalla memoria ed allora lo smontaggio esso. Prendiamo un altro sguardo ad alcuna della tecnologia sviluppata nello SVKP e consideriamogli il senso indirizzi i problemi degli elementi traccianti e dei programmi di messa a punto, come pure il senso che tenta di comprendere il metamorphism per aumentare la protezione. Elementi traccianti Un elemento tracciante è un programma che i cracker usano provare per analizzare l'applicazione protetta sullo start-up o mentre sta funzionando. L'elemento tracciante più noto è IceDump, che è un collegamento a Soft-ICE. L'elemento tracciante analizza le istruzioni direttamente nel codice di macchina, che significa che è un programma realmente semplice. Ma quando un elemento tracciante è ben progettato può essere usato in una varietà di sensi, dipendendo soltanto dall'immaginazione del cracker. Elementi traccianti di uso dei cracker principalmente per riparare le tabelle dell'importazione, che sono usate frequentemente dalle protezioni commerciali per impedire semplicemente un programma la fuoruscita dalla memoria. Gli elementi traccianti inoltre sono usati per decodificare le applicazioni protette analizzando il codice ed attendendo fino a decodificare l'applicazione. Una volta che l'elemento tracciante trova che l'applicazione è stata decodificata, la fa uscire dalla memoria. Lo SVKP è una soltanto di alcune protezioni commerciali che combatte gli elementi traccianti. Programmi di messa a punto I programmi di messa a punto sono ancora un altro problema. Lo SVKP usa alcuni trucchi brandnew per rilevare i programmi di messa a punto ed è l'unica protezione in grado di rilevare e rimuovere tutti i tipi di scaglioni di fatturazione usati dai programmi di messa a punto. Metamorphism Il metamorphism è una tecnologia con un futuro molto promising, benchè sia usato raramente. Il più giovane (ed il più complicati) di tutte le tecnologie elencate, metamorphism provano a risolvere il problema di ripetibilità protetta di codice, che proviene dal fatto che le protezioni correnti sono più o meno simili. Una volta che un cracker calcola verso l'esterno come rompere un tipo di schema di protezione, è facile affinchè lui lo rompa diverse volte e sempre meno nel tempo. Il metamorphism prova ad impedire questo cambiando la protezione ogni volta è usato, così rendente lo più duro affinchè il cracker rompa la protezione. Nessuno dell'uso attualmente offerto di protezioni metamorphism completo, benchè lo SVKP venga vicino, poiché è molto più facile da usare il metamorphism in assemblatore che nei linguaggi di programmazione avanzati. Lo affido voi per decidere se la protezione dello SVKP sono affatto migliore (o più difettoso) che qualsiasi altro e spero che non abbiate trovato il mio parere ugualmente da influenzare. ciò è un articolo aggiunto da Paquel Mason
|
|||
|