PDA

Visualizza versione completa : Gara per i programmatori


wizardcompiler
16-09-2002, 23.15.25
Salve a tutti programmatori, anch'io sono un programmatore voglio fare un esperimento.

La gara consinste di individuare che password c' su un file protetto da il mio programma SecuryFiles. Per momento nessuna persona riuscito a trovarla. Per il momento file non c' in linea per motivi tecnici, devo sistemare il programma spero che il file lo metto in linea in fine settimana.

Che ne dite?

:) :) :) :)

Sergio Neddi
17-09-2002, 04.03.03
Adoro i rompicapi. Altrimenti non mi sarei sposato.

DavideDave
17-09-2002, 16.32.44
Ok, vediamo se riesco a smontartelo ;)

PS
Ocio al Neddi che furbo ;) :D:D:D

wizardcompiler
17-09-2002, 16.53.07
questo il file protetto:

߹ߝߨ13.273;0*7~?(;*;~ ΏeTTUUUUUU

selezionate tutto il file e salvatelo in ciao.txt


vi faccio vedere un img del mio programma:
http://spazioinwind.libero.it/megakilobyte/security.jpg


poi mi serve qualche aiuto di un programmatore per alcune cosette.


Ciao WizardCompiler

LoryOne
17-09-2002, 17.00.24
Dai, dacci una mano.

Che , un semplice sile di testo ?

LoryOne
17-09-2002, 17.01.29
...scusa, mi avevi gi risposto.(N)

wizardcompiler
17-09-2002, 17.19.54
c' scritto una frase !!!!

wizardcompiler
17-09-2002, 17.23.09
un tips: la password non ha una dimensione precisa per fino pu essere un file come password

wizardcompiler
17-09-2002, 17.24.46
vi mando l'immagine del mio programma

wizardcompiler
17-09-2002, 17.34.47
se volete un file pi difficile io lo metto !!!

ekerazha
17-09-2002, 18.29.21
Ma crittografa solo i TXT? Pech io ne ho fatto uno solo per i TXT (volendo potrei fare anche altri documenti di testo, ma dovrei lavorarci su per riuscire a mantenere la formattazione), che crittografa e nasconde il testo:

in pratica prima lo crittografa, e poi volendo lo codifica all'interno di un immagine (tecnica di steganografia)... se vuoi te lo mando

;)

wizardcompiler
17-09-2002, 18.38.28
codifica qualsiasi tipo di files
password illimmitata
password non viene memorizzata tranne una serie di caratteri che indentificano il file che del tipo protetto

wizardcompiler
17-09-2002, 18.48.00
ekerazha
se uniamo i due nostri programmi forse protemmo fare un po di euro (Y) :)

o oppure darlo free a tutti e metterlo in open source

il programma scritto in delphi

ekerazha
17-09-2002, 20.02.34
Originariamente inviato da wizardcompiler
ekerazha
se uniamo i due nostri programmi forse protemmo fare un po di euro (Y) :)

o oppure darlo free a tutti e metterlo in open source

il programma scritto in delphi

anche il mio, il delphi 6

P8257 WebMaster
17-09-2002, 21.08.27
mmm, si, grazie, se puoi mettere un altro file .. sarebbe mooolto utile.

A parte tutto, ti informo che se il programma funziona a schemi variabili e hai bisogno di materiale .. posso fornirti circa 32000 schemi gi pronti a 128-bit (precodificati) che usai per criptare il database di un sito internet.

Bye :cool:

LoryOne
18-09-2002, 08.15.39
Una bella idea.
Aspettiamo con ansia.:)

LoryOne
18-09-2002, 17.53.21
Beh, devo dire che non tanto facile decifrarlo.
Mi associo a P8257 WebMaster:
Se spedisci un secondo file ci pu essere di grande aiuto.
:cool:

wizardcompiler
19-09-2002, 14.33.41
un secondo file codificato ?

mi puoi mandare i schemi al indirizzo brunoaleci@inwind.it

P8257 WebMaster
19-09-2002, 18.00.40
Ok .. te li mando appena ho finito di rigenerarli (domani in giornata)

Bye :cool:

Klapaucius
19-09-2002, 22.32.09
permesso decompilare il prog. ?

LoryOne
25-09-2002, 16.39.26
Azz sei un duro wizardcompiler, ad oggi ancora niente di decifrato.

wizardcompiler
27-09-2002, 13.24.08
il programma non lo metto in linea
suggerimento ci sono una quantit di byte che servono ad indertificare se il file protetto non mi ricordi la dimenzione
per calcolare la lunghezza essata del file dove:
luntot=lunghezza del file - un tot byte
non cercata la chiave nel file non c'e
anche vi do il programma non riuscite ad trovare la chiave
il programma lavora n bit non ha limiti di chiave

ciao ciao

wizardcompiler
27-09-2002, 13.24.38
la password pu esssere lunga anche 1 mb

ekerazha
27-09-2002, 16.25.18
l'unico modo per decriptare algoritmi non infantili, trovare l'algoritmo di crittografia, ma se non ci dai l'EXE del programma non che possiamo andare a tentativi ;)

LoryOne
27-09-2002, 16.46.56
La sfida sta li:
Decifrare per tentativi fino a trovare l'algoritmo di crittografia.

Se ci desse l' exe si riuscirebbe a capire l'algoritmo con un disassemblatore (e con tanta pazienza) !

Wizrdcompiler, perch non metti in linea un seconda frase crittografata ?

wizardcompiler
28-09-2002, 17.03.45
ok vediamo se la prossima settima vi metto una immagine crittografata

wizardcompiler
05-10-2002, 17.34.17
Ancora non ci siete riusciti?:D

Klapaucius
05-10-2002, 20.02.01
senza exe.... altrimenti chiamerei il 3d "lascia o raddoppia" !!!

M.B.Killer...
21-10-2002, 10.32.06
?!? + niente ?!?

vxcrig
22-10-2002, 14.45.58
cosa steganografia o kosa?:confused:

Sergio Neddi
22-10-2002, 21.52.43
Purtroppo non ho avuto il tempo di provare.

Qui faccio qualche considerazione.

Non ci stato dato un vero file, ma una stringa di testo in una specie di ostrogoto con la quale creare un file.

Dato che la stringa stata immessa tramite il form del forum ci significa che il programma di codifica converte buona parte dei caratteri in caratteri stampabili, giusto?

Tutti stampabili non lo sono, ma per la maggior parte si.

Forse perch il file codificato formato da caratteri stampabili e quindi l'elaborazione non li cambia pi di tanto?

Ecco di nuovo la stringa:

????????u?????uU?u??????????????13.273;0*7~?(;*;~ ?????I??IeTT?UUUUUU

In esadecimale:


3F 3F 3F 3F 3F 3F 3F 3F 75 3F 3F 3F 3F 3F 75 55
3F 75 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F 3F
1D 31 33 2E 32 37 33 3B 30 2A 37 7E 3F 28 3B 2A
3B 7E DD 3F DA 3F CC 3F 3F C0 3F 49 3F 3F DD C0
D9 49 DD 65 54 18 15 54 04 15 07 07 03 1B 3F 10
55 55 55 55 55 55


Notiamo che ci sono molti ??? all'inizio, potrebbe essere l'header e poi resto... le lettere U alla fine potrebbero essere un marcatore di fine file oppure altro...

Ci vorrebbe un altro file, almeno per verificare se ci sono delle somiglianze che possano dare un'idea.

Cos, senza riscontri, difficile.

Oppure avere il file originale e lavorare per capire l'algoritmo che lega il file originale e quello criptato.

DavideDave
23-10-2002, 08.49.03
che poi siamo sicuri che il passaggio dei caratteri dal forum non li abbia "storpiati"... "convertiti".... insomma...capito no?

Sergio Neddi
23-10-2002, 13.26.38
Mi ero dimenticato di specificarlo, ma lo davo per scontato.

wizardcompiler
23-10-2002, 13.55.53
allora vi mando il file in allegato ma questa pi difficile

wizardcompiler
04-11-2002, 15.46.28
file si trova dentro il file zip !!
scusate lo messo in questo thread
http://windows.zdnet.it/forum/showthread.php?threadid=41978

Sergio Neddi
06-11-2002, 01.37.42
Ho provato a mettermici sul secondo file una mezz'oretta stasera.

Per intanto posso dire che sui primi 32 byte ( l'header, immagino) appare la scritta "Security Files by WizardCompiler" (basta invertire i bit di questi byte), il resto lo guarder un altro giorno.

Sergio Neddi
06-11-2002, 02.09.13
Ecco il file decrittato. E' corretto?

wizardcompiler
07-11-2002, 13.38.44
il file coretto


Sergio mi devi due punti:


1) la password qual'?
2) il metedo,programma, ettc. di decodifica ?

pero sono impegnato ad fare altro appena mi libero c'erco di miglioare il programma.

lo sapevi che avevo diviso il file in 3 parti
e ho utilizzato come chiave un file !!!

ps: se qualcuno mi pu aiutare ad fare che il programma lavoro come l'antivirus, cio se clicco due volte se il file codficato fa partire il programma, mi serve una dll o un source in delphi 6

in teoria devo utilizzate gli hook del sistema operativo, coretto ?

Ciao .... !!!

Sergio Neddi
07-11-2002, 22.25.45
Mi sa che hai sbagliato qualcosa, si rivelato pi semplice del previsto, ci ho messo solo un'ora per aprirlo... mezz'ora ed ho fatto il primo post, poi un'altra mezz'ora ed ho fatto il secondo...

Visto l'orario non mi sono dilungato in spiegazioni, altrimenti stamattina venivano a decrittare me per portarmi al lavoro! :D

Spiego ora...

...avevi detto precedentemente che usavi un header, quindi ho pensato di identificare quello... ho pensato a qualcosa di semplice, insomma... come se dovessi improvvisarmi uno che crea un semplice algoritmo per nascondere qualcosa a gente non smaliziata.

Ho quindi pensato che l'header fosse codificato invertendo i bit, insomma, facendo XOR con FFh.

Ho quindi convertito il file facendo quest'operazione ed uscito l'header che ho riportato sopra, quindi ci ho azzeccato.

Tolti questi 32 byte ho quindi pensato che ci dovesse essere qualche altra indicazione e poi i dati, oppure direttamente i dati.

Come algoritmo di codifica ho pensato che fosse usato uno che modifica il valore dei byte, ma non la lunghezza del file, cio il rapporto file originale/file codificato sia di 1:1.

Visto che l'operazione con XOR mi aveva dato un buon risultato ho pensato di essere sulla strada giusta...

E visto che il file in questione era un JPG ho controllato l'header di un file jpg.

Di solito inizia con FF D8 FF E0 00 10 4A 46 49 46, questi ultimi 4 byte rappresentano la stringa JFIF.

Ho quindi cercato che valore dare ad un byte in modo da ottenere, dopo la conversione, questi valori.

Una volta ottenuto il risultato corretto ho tolto i 32 byte di header ed ho ammirato l'immagine.

La password? Boh! Non la so, ho semplicemente craccato il file!

Diciamo che per avere l'header ho fatto XOR con FF, per avere il file decrittato ho fatto XOR con C1.

Con che programmi?

Boh, per queste cose non saprei quali programmi si possono usare, come editor esadecimale ho usato un vecchio UltraEdit, per l'elaborazione ho fatto dei programmini io.

Linguaggio: il vecchio QBASIC del DOS 6.22, l'unico linguaggio che permette di fare velocemente qualsiasi cosa senza impazzire con incasinatissimi linguaggi che girano sotto Windows.

Ecco il sorgente del "decrittatore".

Qui il file originale (quello da decrittare) stato rinominato in pippo, il file risultante in pluto.

Ho eseguito una prima volta il programma assegnando alla variabile c il valore FF ed ho trovato l'header, poi l'ho eseguito una seconda volta (come qui sotto) assegnando a c il valore C1 in modo da avere il file decrittato correttamente ma con 32 byte di header.

OPEN "pippo" FOR BINARY AS #1 LEN = 1
OPEN "pluto" FOR OUTPUT AS #2

a$ = " "
c = &HC1

FOR i = 1 TO LOF(1)
a$ = INPUT$(1, 1)
a = ASC(a$)
b$ = CHR$(a XOR c)
PRINT #2, b$;
NEXT i

CLOSE

Ho quindi eseguito un altro programmino, ecco il listato:

OPEN "pluto" FOR BINARY AS #1 LEN = 1
OPEN "pluto.jpg" FOR OUTPUT AS #2

a$ = " "

FOR i = 1 TO 32
a$ = INPUT$(1, 1)
NEXT i
FOR i = 1 TO LOF(1)
a$ = INPUT$(1, 1)
PRINT #2, a$;
NEXT i

CLOSE

che mi ha tolto i 32 byte di header e mi ha quindi generato il file definitivo.

I programmini sono stati buttati l al volo, quindi non fate caso al fatto che sono scritti male, ecc, mi interessava solo il risultato e poi cosa volete che io faccia a quell'ora (non so se avete notato a che ora mi ci sono messo).

In sostanza: la decrittazione stata fatta grazie al DOS.
E pensare che ce lo vogliono togliere... forse per impedirci di "aprire" Palladium? :D:D:D

wizardcompiler
08-11-2002, 18.17.06
il metodo di codifica vecchio

prendo il file lo divido in tre parte che viene codificata con XOR con una chiave diversa che viene calcoltra attraverso una serie di carettteri che uno scrivi o di uno file.

L'operatore XOR l'unico operato di creare una procedura che fa sia la decodifica che la codifica..

tu ai qualche suggerimento ??

Ciao

Sergio Neddi
08-11-2002, 22.03.45
Non ho ben capito cos'hai fatto, il file tagliato in 3... mi ricorda Silvan che tagliava in due... ...poi un bel rimescolamento di carte...

...e sei andato a fare uno XOR di ogni byte... cos, qualunque sia la password originale, con al massimo 256 combinazioni trovi la soluzione.

Mi pare poco, la codifica byte per byte non regge.

Tanto per dirne una... ho fatto appena in tempo ad accennare ad un collega del file crittografato... sai che mi ha risposto?

"Ha fatto uno XOR, vero?"

Infatti la prima cosa che uno pensa.

Una cosa un pochino migliore sarebbe quella di usare la password intera per fare lo XOR, cio se la password PIPPO si potrebbe fare lo XOR con PIPPOPIPPOPIPPOPIPPO, cio ripetendola fino a riempire il file, in questo modo i byte avrebbero valori di codifica differenti e la decodifica sarebbe un pochino pi complessa.

Onestamente inizialmente pensavo che tu avessi usato questa tecnica.

Ma comunque anche questa non un granch... considera che la prima che mi venuta in mente.

Tra l'altro gli algoritmi migliori non sono reversibili (come vuoi tu), cio avendo la soluzione lo stesso algoritmo non pu venire applicato al contrario per ottenere l'originale.

Consiglio: trovati una documentazione seria su algoritmi di crittografazione seri, poi provi ad implementarli e fai le tue varianti, magari combinandone assieme alcuni.

Ma non improvvisare algoritmi caserecci, servono a poco.

E comunque, per quanto sia complessa una crittografia, ricordati: ci che pu essere fatto da una testa pu venire smontato da un'altra.

LoryOne
11-11-2002, 11.00.57
Va bene l'immagine (con quella Wizardcompiler si tagliato les cocones da solo) ma la frase ?
Che c' scritto nella frase ?

Sergio Neddi
11-11-2002, 13.51.23
Per quanto riguarda la frase non ho approfondito perch presumo che i caratteri si siano alterati quando l'ha inserita nel form del forum.

Bisognerebbe che ci allegasse il file.

Sergio Neddi
12-11-2002, 13.28.21
Non ho approfondito pi di tanto, anche perch probabilmente il file corrotto, comunque le ultime parole dovrebbero essere: "la password!!!!!!"

LoryOne
12-11-2002, 21.51.52
Gi, "la password!!!!!!

con quei caratteri finali tutti uguali fra loro.
Avrei voluto chiedergli se quelle "U" finali avessero avuto a che fare con caratteri ripetuti, appunto, ma non mi sono osato.

Complimenti, per.

Ps: Ne hai Neddi di voglia e pazienza eh ?:) :) :)

Sergio Neddi
12-11-2002, 21.55.36
Originariamente inviato da LoryOne
Gi, "la password!!!!!!

con quei caratteri finali tutti uguali fra loro.
Avrei voluto chiedergli se quelle "U" finali avessero avuto a che fare con caratteri ripetuti, appunto, ma non mi sono osato.

Complimenti, per.

Ps: Ne hai Neddi di voglia e pazienza eh ?:) :) :)

Mi manca il tempo, per! :(

wizardcompiler
13-11-2002, 17.57.23
ragazzi aspetate che sto creando un nuovo metedo di codifica !!! :-)