
Generatore di binari auto-decriptanti
+------------------------------------------------------------------------------+
SDC - Generatore di Binary Auto-Decifranti
Copyright (C) 2006 Claes M Nyberg <[email protected]>
+------------------------------------------------------------------------------+
Il programma SDC crea binary auto-decifranti per i sistemi operativi e le architetture comuni.
Il file target viene crittografato utilizzando Blowfish in modalità Ciphertext Feedback (CFB) e aggiunto a un eseguibile che legge se stesso e tenta di decifrare i dati aggiunti quando viene eseguito.
Eseguendo 'make' nella directory src verranno presentate alcune opzioni:
$ make
make <target>
Target del generatore SDC:
linux_x86
windows_x86
openbsd_x86
openbsd_arm
openbsd_sparc64
freebsd_x86
netbsd_x86
solaris_sparc
Target di auto-decifratura:
selfdecrypt_linux_x86
selfdecrypt_windows_x86
selfdecrypt_openbsd_x86
selfdecrypt_openbsd_arm
selfdecrypt_openbsd_sparc64
selfdecrypt_netbsd_x86
selfdecrypt_freebsd_x86
selfdecrypt_solaris_sparc
I target del generatore SDC compileranno un binary sdc per quella piattaforma, che può essere utilizzato per generare un file auto-decifrante per qualsiasi target di auto-decifratura.
Compilare un "target di auto-decifratura" compilerà il binary auto-decifrante effettivo per quel target.
Rimuovere i simboli con strip ed eseguire lo script genhex.pl sul binary selfdecrypt risultante insieme alla sua lunghezza per ottenere una stringa escapata che può essere reindirizzata per creare un file header, proprio come uno di quelli nella directory targets. Quindi aggiungere il file include a targets.h per includerlo nel binary sdc alla prossima compilazione.
I target presentati esistono già come file header e sono già inclusi nel binary sdc.
* Aggiungere compressione del file prima della crittografia per aumentare la confusione.
* Supporto per OpenBSD ARM
* Supporto per MacOSX
Affinché la funzione elf_offset() funzioni, il file ELF (selfdecrypt) deve essere privo di simboli (sono troppo pigro per calcolare la dimensione della tabella delle stringhe).
./sdc /etc/services
Encryption key:
Verify key:
Writing self decrypting file services.sdc for Linux x86 (ELF)
./services.sdc
Encryption key:
Decrypting to services
$
Genera un file auto-decifrante per Windows su Linux
$ ./sdc -t Windows_x86 /etc/services
Encryption key:
Verify key:
Writing self decrypting file services.sdc.exe for Windows x86 (PE-COFF)
Quando si fa doppio clic su services.sdc.exe viene visualizzata una finestra di dialogo per inserire la chiave di decifratura:
