[RELEASE] Enigma Virtual Box Dumper

Stato
Discussione chiusa ad ulteriori risposte.

Predator

Utente Storico
11 Giugno 2007
3,203
47
1,268
900
Ultima modifica:
Programma: Enigma Virtual Box Dumper
Versione: 1.0.1 beta
Descrizione: esegue il dump degli eseguibili .Net compressi con Enigma Virtual Box
Note: questa versione esegue il dump dell'eseguibile principale, nella prossima relase dumperà tutti i files.
DOWNLOAD

screenshot.jpg


Note su Enigma Virtual Box:
Application virtualization system for Windows. Enigma Virtual Box enables application files and registry to be consolidated in a single executable file, without loss of efficiency and without virtualized files having to be extracted to the HDD.

Change Log.

1.0.1 beta
Add SizeOfHeaders Fixing function

1.0.0 beta
Initial release beta
 
nella decrizione ho scritto:
Descrizione: esegue il dump degli eseguibili .Net compressi con Enigma Virtual Box
a questo si presuppone che si sappia cosa è Enigma Virtual Box, a tal fine ho aggiunto delle note prese dal sito:

Note su Enigma Virtual Box:
Application virtualization system for Windows. Enigma Virtual Box enables application files and registry to be consolidated in a single executable file, without loss of efficiency and without virtualized files having to be extracted to the HDD.

Conclusioni:

con Enigma Virtual Box è possibile prendere un eseguibile Net (e anche varie dll) unirle in un unico exe, ma non solo... tale eseguibile risultante è impossibile da apribile in reflector in quanto l'exe originale viene caricato tramite un loader nativo, con tanto di di TLS. Inoltre il loader virtualizza il file system e il registro rendendolo oltre che pratico (in quanto non estrae i file su disco) anche una protezione del codice.

Il suddetto programma l'ho codato al fine di dumpare automaticamente l'eseguibile boxato allo stato originale, fixando tutto l'exe automaticamente (header, sezioni di codice, RVA ecc ecc).
 
  • Mi piace
Reazioni: Yurik94
Sono due cose molto diverse, IL merge altera l'assembly per fondere le dll. Questo è tutta un'altra storia, c'è virtualizzazione, compressione e codice nativo.
 
  • Mi piace
Reazioni: .Eternal.Coding.
Ultima modifica:
Enigma non attua nessun tipo di protezione pro-attiva speciale (non è il suo scopo), pero' bisogna dire che involontariamente lo fa, e anche molto bene soprattuttto se associato alla giusta tecnica.
Se tu usi un offuscatore e poi usi enigma, la via classica per ottenere l'exe net è dumpare l'exe direttamente dalla memoria con un net dumper qualsiasi... però a quel punto l'eseguibile è completamente caricato e in esecuzione, questo significa che parte del programma potrebbe essere addirittura distrutto da altri tipi di protezione degli offuscatori (questo dipende dall'offuscatore usato)
Una mia protezione si basa su quest ultimo concetto.
Dopo avermi scritto un crackme per allenarmi, ho autoprotetto il codice e usato sucessivamente Enigma, mi sono trovato di fronte ad un tipo di difficoltà che non avevo mai affrontato. Da questa esperienza ho deciso di scrivere questo programma.
 
Enigma non attua nessun tipo di protezione pro-attiva speciale (non è il suo scopo), pero' bisogna dire che involontariamente lo fa, e anche molto bene soprattuttto se associato alla giusta tecnica.
Se tu usi un offuscatore e poi usi enigma, la via classica per ottenere l'exe net è dumpare l'exe direttamente dalla memoria con un net dumper qualsiasi... però a quel punto l'eseguibile è completamente caricato e in esecuzione, questo significa che parte del programma potrebbe essere addirittura distrutto da altri tipi di protezione degli offuscatori (questo dipende dall'offuscatore usato)
Una mia protezione si basa su quest ultimo concetto.
Dopo avermi scritto un crackme per allenarmi, ho autoprotetto il codice e usato sucessivamente Enigma, mi sono trovato di fronte ad un tipo di difficoltà che non avevo mai affrontato. Da questa esperienza ho deciso di scrivere questo programma.
Quindi da questo post si capisce una cosa... tu conosci e c'è un modo per proteggere DECENTEMENTE un exe per esempio in .Net?
 
si certo, secondo me la protezione migliore non è quella che ti puo' dare un offuscatore (che per carità va benissimo come supporto) ma quella che si deve scrivere direttamente con codice nel programma stesso, sia essa scritta con managed code e/o unmanaged code.
 
si certo, secondo me la protezione migliore non è quella che ti puo' dare un offuscatore (che per carità va benissimo come supporto) ma quella che si deve scrivere direttamente con codice nel programma stesso, sia essa scritta con managed code e/o unmanaged code.
Non si trovano guide su internet su questo argomento vero? :/
 
Stato
Discussione chiusa ad ulteriori risposte.