Come craccare la password VBA di un progetto Excel

VBA Password CrackIn ogni azienda c’è qualcuno che crea file Excel con macro VBA e che vuole proteggere il suo lavoro. Non c’è alcuna documentazione e nessuno conosce la password. Cosa possiamo fare? Possiamo craccare la password!

Su internet possiamo trovare molti software free che fanno questo ma hanno delle limitazioni e si deve pagare per craccare password più lunghe, tuttavia possiamo anche craccare una password VBA editando il file con un editor esadecimale. Questo metodo può essere applicato ad un file Excel 2003 (.xls), così, se abbiamo un file in formato Excel 2007 (.xlsm) possiamo semplicemente salvarlo nel fomato precende.
Excel 2003 gestisce la password VBA semplicemente comparando delle stringhe, così un metodo è semplicemente sostituire la password esistente usando un editor esadecimale (nell’esempio che segue ho usato HxD – Freeware Hex Editor and Disk Editor).

  1. Fare un backup del file originale
  2. Creare un nuovo file Excel
  3. Nell’editor VBA (ALT + F11) impostare una password semplice (per esempio 123)
    Set Password - Excel VBAVBA Excel - imposta passwordExcel VBA Password

  4. Salvare un file ed uscire
  5. Aprire il file con un editor esadecimale
  6. Copiare le righe che iniziano con le seguenti stringhe:
    CMG=…
    DPB=…
    GC=…
    VBA Password Crack - Editor Esadecimale

  7. Aprire il file da craccare con l’editor esadecimale ed incollare le stringhe precedentemente copiate dal file
  8. Salvare il file ed uscire
  9. Adesso, aprire il file Excel del quale si vuole leggere il codice VBA. La password del codice VBA sarà semplicemente 123.

Il metodo descritto ha funzionato molte volte, tuttavia, se si prova ad incollare il numero errato di byte nel file, si perderà il progetto VBA tentando di riaprire il file Excel. Sfortunatamente ci sono casi nei quali (ancora non mi è chiara la causa) la lunghezza totale della stringa “CMG=……..GC=….” nel file è differente da quella originale. In alcuni casi, questa stringa sarà 137 byte, ed in altri sarà 143 byte. La lunghezza di 137 è quella errata e se questo è quanto accade quando create il file con la password ‘123’, semplicemente createne un nuovo, questo dovrebbe arrivare alla lunghezza di 143 byte.

 

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *