martes, 20 de mayo de 2008

Files di Installazione: CADRA v10.0.1 per Windows




E ora, con un po' di orgoglio (si ditemi pure che sono un esaltato ed uno
spandi ma questa lavoretto mi fa godere come un porco) la mia Opera.

Prima cosa: cusale' l Cadra ? (trad. cos'e' il Cadra ?)
(xoanon scrive in livornese e io in varesotto)
Il Cadra e' un CAD (Computer Aid Design), cioe' un programma di disegno
tecnico tipo AutoCad x intenderci, prodotto dall'Adra e venduto alla modica
cifra di 10 zucche + o - (come ogni cad che si rispetti).

Seconda cosa : sa te fe cuse' dun Cad che l'e' minga famus ?
(trad. cosa te ne fai di un Cad che non e' famoso ?)
Lo usa mio pa' al lavoro e volevo dargli una mano da casa.

Terza cosa: che protezione ha ?
Bella domanda !!
Praticamente legge qualcosa dal Bios del PC, vede le opzioni del Programma
che volete attivare e la data in cui scadra' la licenza, legge la chiave
(nel formato XXX-XXXX) confronta il tutto e bum: la licenza che avete
inserito e' scorretta.

Quarta cosa: ma non potevi copiare la licenza di tuo padre?
Eh no, cosi mi deludete !
Ho detto che legge dal Bios quindi ogni PC e' diverso dall'altro!

Ed ora fottiamo questa protezione da 10 zucche!
Osservando bene bene il setup si scopre che la licenza va configurata
non all'interno del cad ma dal setup. Interessante...
Vi e' mai capitato di dare una occhiata a quei file chiamati setup.lst
setup.inf e setup.mst? No? Male! Dovreste! Come dice mio nonno bisogna
sempre OSSERVARE e CAPIRE il mondo attorno a noi! (Meditate gente Meditate)
(non tutti i programmi li hanno, dipende dal tipo di installazione, quelli
fatti con l'InstallShield no e sfortunatamente ora ne fanno tanti di setup
con quello)
Li illustro velocemente :

Setup.lst : informazioni generali tipo titolo finestra, file necessari etc..
Setup.Inf : contiene l'elenco di tutti i file che verranno installati (io
lo modifico quando copio un programma e voglio tagliarci dalla
installazione magari 20Mb di Immagini inutili senza far impastare
l'installazione)
Setup.mst : il file veramente interessante, la sua descrizione presa dal file
e' questa :

Setup script for Cadra for Windows. Written in MSTEST Basic
This code is rather tightly coupled to setup.dll

Bene bene e' lo script di installazione scritto in una specie di Basic che
contiene le info sulle procedure di installazione (tipo se schiaccio questo
succede quest'altro). Attenzione la 2nda linea ci dice che il file e'
accoppiato con il file setup.dll (Cio' e' importante perche' i messaggi che
vengono visualizzati vengono presi dalla dll, io ho dovuto modificare
brutalmente la DLL per far inserire i miei commenti nel setup trasformato in
generatore di Licenze ma non e' importante per ottenere le licenze)

Allora apriamo questo script e facciamo una ricerca con License, Register,
Registration, Incorrect, Lic ,etc...
Troviamo un po' di cose, con un po' di pazienza becchiamo la routine giusta:

IsLicKeyValid -- Returns true if number is legal.

cioe' se la licenza inserita e' giusta riporta True (vero) (e' quindi di
tipo booleano VERO/FALSO; per maggiori infos leggete un libro di matematica
o di programmazione)

Bene, avanti cosi' !
Scrolliamo un po' la routine fino a che, to' guarda qui, troviamo un bel

IF (bufkey$ = n$) THEN IsLicKeyValid = TRUE

GULP !
Spieghiamo un po' per i non-programmatori
Se la stringa bufkey$ e' uguale a n$ allora IsLicKeyValid e' vero (cioe'
abbiamo inserito la licenza giusta)

Sempre Meglio :))

Quindi, probabilmente ci sarete arrivati, una stringa e' quella che ho messo
io a caso e l'altra quella giusta !
Bastera' visualizzare le 2 stringhe per vedere quella mia e quella giusta !!
Allora, siccome non so programmare in MSTEST BASIC cerco la funzione
x visualizzare un messaggio, la scopiazzo spudoratamente e ci faccio una
lieve modifica

per esempio questa :
t$ = "The drive letter is missing or invalid. Please enter a valid drive."
r% = DoMsgBox(t$,"Cadra for Windows Setup")

che visualizza un messagge box con scritto il contenuto di t$

e la piazzo prima di If.... modificata cosi'

r% = DoMsgBox("La chiave corretta e': " + bufkey$,"Sprotezione Effettuata da
Cavallo de Cavallis", MB_OK + MB_ICONEXCLAMATION )

P.S. Io so gia' che bufkey$ e' quella giusta, avrei dovuto prima mettere
"le 1ma chiave e' "+ bufkey$ + " la 2nda e' " + n$ , osservarle, capire quale
era quella giusta.. comunque ci siamo capiti.

Beh riavviate il setup cosi' modificato ed eccovi visualizzata la chiave
giusta !!

P.S. Fatevi una copia di backup dei file PRIMA !! Non vorrete perdere il
programma per un errore !!

Bene ho concluso la mia piccola guida alla sopravvivenza per non-crakkatori.
Spero di aver aiutato qualcuno, di non aver deluso nessuno, di non aver fatto
incazzare nessun vero crakkatore (Se vi ho fatto inkazzare, fatemi un corso
crackin oriented cosi' faccio cose piu' interessanti).
Ringrazio InfectedMachine e lo staff di SyStEmDoWn per avermi permesso di
inserire questo mio articolo, Xoanon per la sua guida al crack (se mi dessi
anche lezioni non sarebbe male :)), pa' e ma'.
Salutoni a tutti gli amici dei canali #hackers.it #hackita e #warezitalia
senza i quali non avrei neanche saputo dell'esistenza di SystemDown.

ULTIMO AVVISO:
Non e' sempre facile trovare protezioni come quelle descritte, saranno magari
il 5% o anche meno, ma ricordatevi Provate Provate Provate, puo' darsi che
con l'inventiva si arrivi dove non arrivano le conoscenze.