Publié le 13/01/2013 | Mots-clés : excel, mot de passe | Catégories : Hacking et sécurité 146 Commentaires
Ce n'est pas nouveau, quoi que l'on fasse, il arrive régulièrement que l'on perde un mot de passe... Flux RSS des articles
Heureusement, voici une méthode relativement simple pour contourner la protection par mot de Facebook
passe qui empêche l'accès au code des macros VBA d'une feuille Excel. Plus précisément, elle Twitter
permet de redéfinir un nouveau mot de passe sans connaitre l'ancien. Chaine Youtube
GitHub
Attention : les informations et le programme mis à disposition dans cet article ne doivent pas être
utilisés pour accéder au code d'un fichier protégé dont vous n'êtes pas le propriétaire, auquel cas
vous seriez hors la loi (contrefaçon, accès frauduleux...).
Pour commencer, il faut vous munir d'un éditeur hexadécimal pour pouvoir modifier le contenu du
fichier Excel manuellement. Il en existe beaucoup, dont des gratuits qui feront très bien l'affaire,
comme Frhed. Pensez également à sauvegarder votre fichier en cas de souci !
Ensuite, si votre fichier est au format Excel 2010 (extension .xlsm), vous devez changer cette Bilan 2017 : déjà 5 ans !
extension en .zip (et oui, le format 2010 est avant tout une archive zip !), puis ouvrir l'archive et Trouver les adresses IP et MAC
extraire le fichier xl/vbaProject.bin. de la carte iLO/iDRAC d’un
hôte via vSphere
Ouvrez avec votre éditeur hexadécimal le fichier vbaProject.bin pour un classeur Excel 2010, ou Fête du lac d'Annecy 2017 - La
Danse du Feu
directement le fichier Excel si vous utilisez l'ancien format (extension .xls). Recherchez la chaîne
Powershell - Créer, lire et
DPB= (généralement en fin de fichier) et remplacez la par DPX=. Enregistrez le fichier, puis fermez modifier des raccourcis
votre éditeur. Piwik, l'outil de statistiques Web
libre et auto-hébergé
Divers (4)
Editos (8)
Informatique (47)
Astuces et Tutoriels (36)
Boite à code (6)
Bash (1)
C, C++ (1)
Modification du fichier Excel avec Frhed PHP, HTML et CSS (3)
Pour simplifier la réalisation de la première étape, je vous ai préparé un petit programme pour le juillet 2014 (2)
faire à votre place. Téléchargez-le et décompressez l'archive, puis : juin 2014 (1)
mai 2014 (2)
Sous Windows, glisser-déplacer votre fichier Excel sur l'icône de l'application avril 2014 (2)
(VBAPwdRemover.exe). Une fenêtre noire apparait. Lorsque le message Appuyez sur une touche mars 2014 (1)
pour continuer... s'affiche, vous pouvez fermer cette fenêtre. février 2014 (2)
janvier 2014 (2)
décembre 2013 (2)
novembre 2013 (1)
octobre 2013 (1)
septembre 2013 (2)
août 2013 (1)
juillet 2013 (1)
juin 2013 (2)
avril 2013 (3)
mars 2013 (4)
février 2013 (3)
Glisser votre fichier Excel sur l'icône de l'application. janvier 2013 (8)
décembre 2012 (3)
Une fois le programme terminé, il ne vous reste plus qu'à redéfinir un mot de passe (reportez-
vous à l'étape 2).
Liens de téléchargement :
Pour les plus curieux, je fournis également le code source C++ (licence GPL). A la compilation, vous
avez la possibilité de désactiver le support du format Excel 2010 en définissant la
constante NO_XLSM_SUPPORT (option de compilation -DNO_XLSM_SUPPORT). Si vous conservez
le support de ce format, vous aurez besoin de la zlib et de la libzip (apt-get install libzip-dev sous
Linux). Pour compiler sous Windows, j'ai utilisé MinGW et MSys.
Tweeter
J’aime 9
Répondre →
adam 19/08/2013
Cela ne fonctionne pas, une fois l'extension remise à l'ouverture du fichier Excel xlsm 2010.
Message d'erreur et le fichier .bin est supprimé, et il y à génération d'un message d'erreur.
Répondre
Certains messages d'erreurs sont "normaux" (cf Étape 2). Quel est le contenu de votre
message d'erreur ? Avez-vous essayé avec l'outil VBA Password Remover (cf fin
d'article) ?
Répondre
Steph Il y a 1 mois
Bonjour,
Alors j'ai bien réussi à modifier DPB par DPX en revanche derrière quand je veux
mettre le fichier BIN il me marque opération impossible.. Savez vous pourquoi ?
Merci
Répondre
Chapo 22/08/2013
Bonjour, j'ai essayé cette méthode qui normalement fonctionne très bien mais j'ai eu le
même problème que Adam, c'est à dire :
après toute manipulation on ouvre le fichier et dès l'ouverture le fichier ProjetVBA.bin est
supprimé, du coup on a accès a l'interface VBA mais sans le code. Il a disparu.
As tu une solution à ce problème ? à savoir si on peut récupérer le code, dans quel fichier il
est stocké ?
Je te remercie
Répondre
Pour simplifier le processus et éviter les erreurs de manipulation, n'oubliez pas que
je mets à votre disposition un outil très simple d'utilisation en fin d'article
Répondre
HUBIN Il y a 3 semaines
Bonjour,
Je ne suis pas pro en terme de modification de fichier. L'explication me semble
claire mais à la réalisation, ça ne semble pas marcher.
Peux-tu me préciser un point. Lorsque tu parles du VBAProject.bin, tu dis qu'il ne
faut pas décompresser toute l'archive.
Voici ce que je fais. Je change l'extension .xlsm en .zip. J'ouvre l'archive via
7zip. je cherche dans xl les fichiers sheet1, workbook.eml et VBAProject.bin.
Est-ce que cette action décompresse les fichiers ? et tous les fichiers ? Si oui,
comment faire l'action que tu préconises ?
Après j'ai bien trouvé le sheetprotection ainsi que le DPB a transformer en DPX.
je quitte les fichiers modifié et je les enregistre.
Je quitte tout. Et je remodifie l'extension du fichier en .xlsm.
Comme l'indiques Chapo (?) à l'ouverture du fichier, la page VBA ne montre
aucun code. Or je suis certaine d'avoir des codes dans mon fichier d'origine.
J'ai également essayé la procédure avec VBAPwdRemover.exe. Mais le
programme ne s'installe pas correctement.
Quand je dis que je ne suis pas une pro !!!
Merci de tes commentaires.
Répondre
Bonjour,
Pour ma part je n'utilise pas 7zip pour les fichiers zip, mais plutôt
directement l'explorateur de fichiers de Windows. Je ne peux donc pas trop
te dire comment faire précisément avec 7zip. Sinon tu peux faire un clic
droit > Ouvrir avec sur l'archive et sélectionner "Explorateur Windows".
L'outil reste toutefois plus simple à utiliser. Il n'y a pas d'installation, il suffit
de glisser-déposer le fichier Excel sur l'exécutable, comme montré sur la
petite capture.
Répondre
Nour 03/04/2015
Bonjour,
J'ai le même problème que Adam et Chapo, à savoir, l'erreur d'avertissement s'affiche
je choisi OK et là un tableau s'affiche disant que le fichier Projectvba.bin est supprimé.
Du coup, cela supprime tout le code...
Répondre
Bonjour,
Même question, même réponse : je ne parviens pas à reproduire ce problème, je
ne peux donc pas voir ce qu'il ne va pas, désolé. Essayez avec l'outil peut-être.
Répondre
Lise 01/09/2013
Error : This Excel 2010 file format does not support macro. Please specify a xls
m file instead.
Appuyez sur une touche pour continuer...
Je ferme la fenêtre comme indiqué mais rien ne se passe. Il ne se crée pas de fichier Excel
modifié (où dois-je le chercher s'il en crée un?). Je tente d'ouvrir mon fichier Excel, mais il
me demande toujours le mot de passe?
Répondre
Ce message d'erreur indique que vous utilisez un fichier Excel 2010 ayant comme
extension .xlsx. Or, cette extension implique que le fichier ne comporte pas de
macro VBA, puisque, dans le cas contraire, il devrait porter l'extension .xlsm.
Comme il n'y a pas de macro VBA, il n'y a pas non plus de mot de passe protégeant
ces macros, et donc cet article et cet outil ne vous sont d'aucune aide (le titre de
l'article mentionne bien "mot de passe VBA "). L'application ne fait rien, aucun fichier
n'est créé ou modifié, et cela est bien normal
N'auriez vous pas confondu avec le mot de passe qui protège la feuille ou le
classeur Excel ?
Répondre
tintin 01/10/2013
Répondre
jl 03/10/2013
Sur excel 2003, donne error 40230 au lieu de touche incorrecte, continuer la manip: ca
marche !
Répondre
lastar 23/10/2013
Hello,
Sur excel 2003, j'ai l'erreur 40230 mais ça ne marche pas. Que veux-tu dire dans
"continuer la manip" ?
Merci
Répondre
Tout simplement qu'il faut ignorer les erreurs autant que possible, en cliquant sur
Ok, Validez... et poursuivre la procédure de crack comme si de rien n'était. Les
erreurs sont "normales" étant donné que le crack consiste justement à rendre le
fichier temporairement invalide.
Répondre
KiriKool 28/10/2013
Bonjour,
Merci pour cette astuce.
Avez-vous à votre connaissance une autre astuce qui permettrait d’empêcher (ou de freiner)
ce type de manip ?
Répondre
Bonjour,
Non malheureusement, il n'y a pas à ma connaissance de véritable solution pour se
protéger de ce crack. Il s'agit d'une faille d'Excel que seul Microsoft pourrait
partiellement corriger en publiant une mise à jour, mais il resterait de toute manière
possible d'utiliser cette astuce en utilisant le temps du crack une version non mise à
jour.
Répondre
Cyprès 21/11/2013
Et si l'on intègre une macro pour supprimer la macro principale en cas d'erreur
(i.e. modification du mot de passe)?
Répondre
Répondre
Hamid 13/11/2013
Répondre
MHAMED 15/11/2013
Tout d'abord merci pour votre tuto. J'ai un souci car j'ouvre le fichier bac et quant j'appuie
sur alt+f11 il ne se passe rien. pourriez vous m'aidez svp
Répondre
Le fichier "_bak" est une sauvegarde du fichier original, autrement dit une copie
identique au fichier original. Cette copie est faite pour pouvoir récupérer le document
original dans le cas où l'outil de crack ne fonctionnerai pas.
Dans le cas "normal", ce n'est donc pas ce fichier qu'il faut ouvrir mais bien le fichier
dont le nom est identique au fichier en entrée, que vous avez glisser-déposer sur
l'outil.
Répondre
MHAMED 15/11/2013
Répondre
Répondre
MHAMED 15/11/2013
Laitram 24/12/2013
Bonjour,
Il fonctionne parfaitement.
Laitram.
Répondre
Gad 07/01/2014
Merci beaucoup, j'ai eu des problèmes lorsque j'ai essayé moi-même, mais en lisant les
réponses que vous avez fait aux commentaires des autres utilisateurs j'ai su pourquoi cela
ne fonctionnait pas (n'a pas pris seulement le fichier dans le zip, mais extrait le tout et re-
compressé). J'ai pris votre programme et cela fonctionne très bien. Par la suite j'ai pu
accéder au mot de passe de la page principal. Continuer votre bon et beau travail et bonne
année 2014.
Répondre
Chris 10/01/2014
Répondre
steph 26/01/2014
Super travail ! ça fonctionne très bien que ce soit la méthode 1 ou avec l'utilitaire . Merci
Répondre
T ! 24/02/2014
Salut, ton petit fichier marche bien, merci. J'aimerais savoir si une telle manipulation existe
pour les compléments excel. J'ai un complément obsolète dans lequel j'aimerais jeter un œil
mais celui-ci est verrouillé
Répondre
Désolé, je ne connais pas de méthode pour ce qui concerne les compléments Excel.
Répondre
Angel 04/03/2014
Répondre
yoyo 25/02/2014
Impec ! cela à parfaitement fonctionner. J'ai utilisé ton programme "fait-maison".
Merci d'avoir partagé cette information.
Répondre
Raph 10/03/2014
Eh bien pour moi la manip à fonctionné, j'ai accès au navigateur vba et aux modules qu'il
contient mais par contre, lorsque je veux voir le contenu d'un module, j'ai l'erreur 40230.
testé sur 2 fichiers et c'est idem. Je peux voir les userform mais pas leur code associé, et je
ne peux voir aucun module...
Répondre
Répondre
Raph 10/03/2014
Oups, 1000 excuses je n'avais pas lu jusqu’au bout... Du coup, je n'avais pas tout
fait...
OK C'est bon pour moi aussi.
Répondre
falguerolle 24/03/2014
Cette marche a suivre est elle valable pour une base de donnée ACCESS?
Répondre
Très bonne remarque ! Et oui effectivement, après avoir essayé, il semblerait que cela
fonctionne aussi pour une base de donnée ACCESS (et peut être même aussi pour
les autres logiciels de la suite Office). Mais il faut utiliser la procédure manuelle car
l'outil que je propose n'est pas conçu pour cet usage et refusera le fichier, et il ne faut
PAS changer l'extension du fichier en .zip, même s'il s'agit d'Access 2010.
Répondre
HdC 10/06/2014
je suis nulle en informatique, puis je vous envoyer un fichier vba à débloquer (je n'ai pas le
code) ?
Répondre
Répondre
J.35 18/06/2014
Répondre
Katafray 14/02/2015
Répondre
PL du 45 25/06/2014
Répondre
Testerman 04/07/2014
Merci pour l'outil il marche du tonnerre !!! Grâce à vous j'ai pu reprendre le travail d'un
stagiaire qui avait omis de nous laisser le mot de passe.
Merci encore.
Répondre
daskroko 07/07/2014
Merci beaucoup
merci encore
Répondre
Je n'en ai aucune idée, je pense simplement que cette clé contient le mot de passe
crypté et qu'en changeant son nom, Excel ne le retrouve donc plus et tente de
récupérer le fichier quitte à ne pas demander le mot de passe. C'est plus ou moins un
bug.
Répondre
FromTheLyonInTheFrance 21/07/2014
Excellent, super bien expliqué, à part que je n'ai pas réussi à installer Frhed. une fois cet
obstacle passé, ça marche exactement comme prévu. Merci
Répondre
chr1s 22/07/2014
Répondre
Pam 22/07/2014
Répondre
Vladimir 09/09/2014
Répondre
rz936 10/10/2014
Répondre
Fab 12/10/2014
Bonjour Kevin, j'ai un fichier xlsm que j'ai renommé en .zip avant de faire passer votre
utilitaire mais j'ai l'erreur suivante : unrecognized file extension...
En regardant de plus près dans l'archives il s'avère que le fichier est également crypté Je
n'ai donc pas le fichier xl/vbaproject.bin
pouvez vous me confirmer que l'utilitaire ne peut pas faire sauter cette protection ?
Connaissez vous un moyen svp ? Par avance merci et en tout cas bravo pour ce tuto super
clair !
Cdt
Répondre
Bonjour,
Si vous utilisez l'utilitaire, vous ne devez pas changer l'extension du fichier cible,
l'utilitaire s'en charge.
Répondre
Olivier 21/10/2014
Répondre
Répondre
Risleure 21/10/2014
Bonjour,
Après modification du fichier .xls (2003) avec remplacemnt de DPB= par DPX= et
enregistrement.
L'ouverture du projet VBA se fait correctement mais j'obtiens "Erreur inattendue 40230" que
je valide comme indiqué.
Les userform sont présents mais il n'est pas possible d'accéder au code associé.
De plus le fichier protégé qui faisait 451 ko ne fait plus que 373ko ce qui m'étonne
Je ne vois pas où est le problème.
Merci
Répondre
Effectivement la taille du fichier doit rester strictement identique avec le format 2003
(mais pas forcément avec le format 2010). Certains octets ont peut-être été perdus
lors de l'édition du fichier. Tu peux essayer avec l'utilitaire que je propose.
Répondre
christo 22/10/2014
La manipulation marche bien tant que le mot de passe n'utilise pas de caractère spéciaux.
Comment faire dans le cas ou le mot de passe contient des caractères spéciaux. La
technique décrite et/ou l'utilitaire ne fonctionne pas.
Répondre
Répondre
GUILLAUME 17/11/2014
Fonctionne très bien même avec des caractères spéciaux dans le mot de passe.
Je ne vais pas dire merci pour m'avoir permis de cracker mon mot de passe que je
connaissais, mais pour m'avoir indiqué une brèche dans la protection du code.
Répondre
Répondre
Thomas 20/11/2014
Bonjour,
J'ai fait plusieurs tests et j'ai constaté que l'outil ne fonctionnait pas lorsqu'un fichier avait un
format 2007/2010 en .xlsm ET que le classeur était protégé en structure (option « Protéger
le classeur », à droite de « Protéger la feuille » dans l'onglet « Révision », avec la «
Structure » comme élément à protéger).
En ouvrant un tel fichier avec 7zip au lieu de ce qui est installé par défaut sur mon ordi du
boulot, on peut voir un dossier « DataSpaces » et différents fichiers sans extensions. En
tout cas, pas de trace de « VBAProject.bin ».
Au final, est-ce que combiner un mot de passe sur le code VBA et sur la structure du
classeur, n’est finalement pas un moyen un peu plus sûr de protéger ses macros (du moins,
du commun des mortels) ?
Ou alors, en cherchant un peu plus, est-ce que quelqu’un de trop curieux arriverait à
contourner facilement cet obstacle ? Je n’ai pas encore trop creusé, mais je n’ai rien trouvé
à ce sujet sur le net.
Répondre
Tu t'es peut-être un peu mélangé les pinceaux dans tes tests. Car en fait, j'obtiens
bien le comportement que tu décris mais en activant le chiffrement avec mot de passe
du classeur (via Fichier > Informations > Protéger le classeur > Chiffrer avec mot de
passe), et non simplement la protection de la structure. Effectivement, à ce moment là,
il n'y a plus qu'un dossier DataSpaces et plus de vbaProject.bin dans l'archive zip.
Mais cela implique de devoir saisir un mot de passe à chaque ouverture du classeur,
et ce mot de passe doit donc être communiqué aux utilisateurs du classeur. Or,
connaissant ce mot de passe, les utilisateurs peuvent très facilement désactiver le
chiffrement (il suffit d’accéder à nouveau à l'écran "Chiffrer avec mot de passe" et
d'indiquer un mot de passe vide) et retrouver la structure normale (avec le fichier
vbaProject.bin) permettant ensuite d'attaquer le mot de passe VBA...
Répondre
Thomas 21/11/2014
Non, non, je ne me suis pas mélangé. J'utilise Excel 2007 : il s'agit peut-être
d'une subtilité de version.
Je n'ai pas par exemple l'onglet Fichier, mais je peux faire ce que tu mentionnes
en passant par le bouton Office/Préparer/Chiffrer le document. Pour autant, ce
n'est pas ce que j'ai fait : j'ai seulement protéger la structure via l'onglet Révision.
Un exemple ici (le fichier est vide, c'est juste pour le test) :
http://sendbox.fr/pro/y7mnzf90yii3/Classeur1.xlsm.html
Si j'ouvre le fichier, en tant qu'utilisateur, je n'ai pas besoin de mot de passe pour
l'utiliser. Je peux y faire ce que j'ai à y faire en fonction des macros associées,
MAIS, et c'est ce qui pourrait être intéressant, je ne peux pas craquer le code
des macros avec ton outil.
Ainsi, j'aimerai bien que tu me dises ce qui se passe avec ce fichier en l'ouvrant
avec Excel 2010 et si tu arrives ou non à craquer le code.
Je vais quand même essayer de voir si je peux trouver un PC quelque part avec
du 2010 pour vérifier ça par moi même. En tout cas, merci de ta réponse.
Répondre
Ok, effectivement, ton fichier est bien crypté même s'il n'y a pas de mot de
passe pour l'ouvrir. Ce pourrai donc être une solution pour empêcher
l'attache.
Sauf que, lorsque je l'ouvre avec Excel 2010, aucun mot de passe m'est
demandé et il me suffit de modifier légèrement le contenu du classeur et de
le réenregistrer pour retrouver la structure "normale", avec le fichier
vbaProject.bin, qui permet de lancer l'attaque sur le mot de passe VBA.
Répondre
Thomas 21/11/2014
Oui je viens de vérifier sur de l'Excel 2010 et j'arrive au même
constat.
C'est ballot !...
Bon week-end.
Carmiel 02/12/2014
Bonjour,
j'ai fait cette manip des dizaines de fois pour corriger des erreurs qu'un développeur tétu (et
oui, il y en a) ne veut pas corriger, mais là à sa dernière livraison ça ne marche plus.
Il me sort n fois le message "Erreur inattendue..." mais ensuite les modules s'appellent X,
XX, XXX, XXXX etc, et ne sont pas lisibles.
As-tu déjà eu ce problème ?
Merci de l'aide
Répondre
Bonjour,
Non désolé je n'ai jamais rencontré ce problème, et ça me parait assez étrange,
surtout si le code s’exécute normalement...
Répondre
Fred 11/12/2014
Répondre
Ken 17/12/2014
Répondre
mimifer 11/01/2015
Bonjour,
Cordialement.
Répondre
Bonjour,
Je ne connaissais pas cette solution, mais je ne suis pas sûr que le code VBA soit
mieux protégé avec. En effet, lorsqu'on lance l’exécutable, le classeur est extrait dans
les dossiers temporaire de Windows. Il doit alors être possible de le récupérer et
d'obtenir le VBA...
Répondre
Rom 19/01/2015
Bonjour,
Très bon outil. Malheureusement dans mon cas, après la manip, les modules sont
inaccessibles avec "erreur inattendue (40230). Je pense pourtant avoir suivi le tuto, mais il y
a quelque chose qui bloque manifestement après plusieurs essais. Une idée?
Répondre
Rom 20/01/2015
Bonjour,
J'ai compris l'origine de mon problème ! En fait il y a une dernière étape importante que je
ne crois pas avoir lu ici. En faisant clic droit sur le VBA project, il faut aller dans propriétés
VBAProject, "protection", et décocher "verrouiller le projet pour l'affichage" qui était encore
cochée chez moi.. Et après bingo!!
Merci
Répondre
Mounir 29/01/2015
Bonjour,
Je tiens à vous remercier, ça a bien marché avec votre petit programme fait-maison VBA
Password Remover pour Windows sans soucis.
Merci encore.
Répondre
Erick 05/03/2015
Répondre
MAKO 06/03/2015
Un très grand merci. Application super simple d'usage et surtout TRES efficace.
Répondre
Mickael 12/03/2015
Répondre
Nico 16/03/2015
Répondre
nicodele 27/03/2015
Un grand merci !!! en 5 min j'ai réussi Au top, 1 journée de travail sur un fichier non
perdue.
Répondre
GiHem 30/03/2015
Bonjour,
Mille mercis pour cette astuce "astucieuse" très bien expliquée dans le tuto.
Testée avec succès sur Excel et Access 2010.
Il ne me reste qu'à souhaiter qu'elle fonctionnera sous Office 2015.
Encore bravo.
Répondre
malice 04/05/2015
Bonjour ,
Merci pour le tuto , j'ai utilisé la 2 ème méthode et j'ai un nouveau fichier qui s'affiche avec
un nom "back" mais les macros vba sont toujours verrouillées. Que faire??
Merci.
Répondre
Comme indiqué dans l'article, le fichier "_bak" est une sauvegarde du fichier original,
avant modification par l'outil. Il est donc normal que les macros vba soient toujours
verrouillées dans ce fichier. En revanche, le fichier n'ayant PAS "_bak" dans son nom
doit être déverrouillé.
Répondre
Ken-Obi-Wan 04/06/2015
J'ai fais tout en manuel selon votre tuto, et c'est magique, ça a marché du premier coup.
Encore MERCI
Répondre
pyloupylou 12/06/2015
super outil, bien pratique quand on revient sur une macro après un certain temps et que
comme un baudet moyen on a oublié de noter quelque part le mot de passe
Répondre
eno97 25/06/2015
Bonjour
Merci beaucoup pour ce tuto qui m'a été utile à plusieurs reprises.
Je viens de tomber sur un fichier qui semble un peu plus coriace que ceux que j'ai déjà
croisés.
Je fait exactement la même procédure, et j'arrive à accéder aux différents modules et
userform qui composent le code VBA du fichier. Mais là, surprise, tout le code ressemble à
ça :
eeeEeEEEEeeeeEEeEeeeEEeEEeeEEeeeeEEeeEEeEEeeEEeEeEeeEEEeEEeEeeeeeeeeeEEeeeEEeEeeeEeEeeEeeEeeeEeeeeeeeEEEE
=
.Cells(wWWwwwwwwwwwwWwwWWWWwWWwWWwwwwWwwwWwWwwWWWWwwWwWwwWWWWwWw,
1).Value Application.Proper(ttttTTtTttTTTTt.Text)
.Cells(wWWwwwwwwwwwwWwwWWWWwWWwWWwwwwWwwwWwWwwWWWWwwWwWwwWWWWwWw,
1).Value = Application.Proper(ttttTTtTttTTTTt.Text)
.Cells(wWWwwwwwwwwwwWwwWWWWwWWwWWwwwwWwwwWwWwwWWWWwwWwWwwWWWWwWw,
2).Value = Application.Proper(eEEeeEeEeEeEEeeeEeEeEEeeEee.Text)
.Cells(wWWwwwwwwwwwwWwwWWWWwWWwWWwwwwWwwwWwWwwWWWWwwWwWwwWWWWwWw,
3).Value = Application.Proper(mmmmmMmMmM.Text)
.Cells(wWWwwwwwwwwwwWwwWWWWwWWwWWwwwwWwwwWwWwwWWWWwwWwWwwWWWWwWw,
4).Value = Application.Proper(VvvvVvVVvvVVvvvVvvVvvvVv.Text)
Du coup, impossible pour moi d'analyser ce code. Mais, chose que je ne comprends pas,
c'est que lorsque je lance la macro via un bouton qui est placé sur une feuille excel, celle-ci
fonctionne parfaitement.
Est-ce que tu as une idée de comment récupérer le code qui se cache derrière ça?
Merci d'avance
Répondre
Il semblerait que le code ai été offusqué (les noms des variables ont été remplacés
par des noms inintelligibles). Je n'ai pas vraiment de solution à te proposer, si ce n'est
de faire avec ou de remplacer les noms par des noms plus court et de tenter de le
comprendre ainsi. Cela sort un peu du cadre de cet article, et, par ailleurs, tu dois
t'assurer que tu as légalement le droit d'effectuer cette analyse vu que tu ne semble
pas être l'auteur de ce code.
Je me dois de rappeler que le but de ce tuto est uniquement de pouvoir récupérer le
code dont on est l'auteur dans l'éventualité où l'on aurait perdu le mot de passe le
protégeant...
Répondre
Jon 13/10/2015
C'est un cryptage de code réalisé par un grand contributeur français sur Excel, censé
rendre très difficile la lecture du code et donc la reproduction. Si ton application
nécessite une maintenance, tu auras plus de chance en contactant le concepteur de
ton application.
Répondre
Aud 19/07/2015
Un grand MERCI !!! J'avais développé il y a quelques temps un petit programme, impossible
de me souvenir du MDP !!!!
Répondre
Répondre
Geekkech 21/07/2015
Merci bcp
Répondre
tran 30/07/2015
tout a fonctionné hormis qu'il n'y aucun code vba dans les différentes feuilles ainsi que le
worbook quand je fais alt F11.
tout est vide. c'est bizarre. ai je manqué une étape ?
c'est un fichier de type excel 2003
Répondre
JACKSPOT 06/08/2015
Bonjour,
Votre tuto semble intéréssant pour les personnels qui veulent s'accaparer d'un fichier
protégé mais vous êtes hors la loi.
Si un document est protégé par son créateur, c'est qu'il y a une raison personnelle.
Malheureusement, dans mon job, à différentes reprises, il m'a fallu réparer des fichiers a
l'origine que j'avais protégés sous VBA (afin d'éviter toutes fausses manip par autrui) ayant
les mêmes symptômes que vous énoncez ci-dessus.
C'est pourquoi, je vous conseille à l'avenir de prévenir les personnes désireuses d'effectuer
vos manipulations qu'elle s'expose à des problèmes judiciaires sur des fichiers dont elles
n'ont la propriété morale (création).
Merci d'avance
Répondre
Comme l'indique la première phrase de l'article et comme je l'ai déjà précisé dans
certains de mes commentaires (exemple ici), les informations que je donne ici ne
doivent pas être utilisées sur un fichier sur lequel on a pas les droits d'auteur. L'objectif
est avant tout d'informer de l'existence de cette "faille", et du risque que court les
auteurs en protégeant leur code VBA de la sorte, et éventuellement de récupérer un
mot de passe perdu sur ses propres fichiers (oubli, erreur, stagiaire qui part sans
donner le mot de passe )
Concernant votre problématique de sécurisation, mon article est aussi là pour vous
indiquer que vous ne devez peut-être pas compter sur cette protection. Le fait est que
cette protection par mot de passe n'est selon moi pas conçu pour être extrêmement
robuste. Si vous souhaitez réellement protéger votre code, alors il vous faudra sans
doute passer par une autre solution : application en langage compilé ou
offusqué/crypté, ou appli Web avec le code sensible coté serveur (PHP) par exemple.
Ou sinon mieux contrôler qui a accès au fichier Excel en question, avec une
journalisation au besoin, pour pouvoir taper sur les doigts de l'utilisateur un peu trop
curieux. Si on veut de la sécurité, il faut peut-être mettre plus de moyen qu'un simple
mot de passe dans un fichier Excel
Votre commentaire reste toutefois pertinent, et, comme ce n'était pas suffisamment
clair visiblement, j'ai donc complété le message de mise en garde en début d'article.
Répondre
philippe 22/08/2015
Merci pour cette super manip qui m'a permis de récupérer des process sur d'anciens
fichiers xls
Répondre
Philippe C 17/09/2015
Génial, gain de temps formidable pour corriger un bug fait par une personne partie sans
laisser les MDP... classique.... Un grand merci!
Répondre
Christophe 07/10/2015
Répondre
Emile 08/10/2015
Répondre
Ludo 03/11/2015
Répondre
Droone 19/01/2016
Répondre
Iva 20/01/2016
J'ai une question STP, si j'ai un fichier xlsx excel 2007 que je veux changer en zip, j'ai
ceci : DataSpaces,StrongEncryptionDataSpace
peux tu m'expliquer ?
Répondre
Répondre
Shaman 20/06/2016
Répondre
Marc 02/02/2016
Juste un grand merci pour cette manipulation bien documentée. J'ai retrouvé les 15 000
lignes de codes que j'avais écrites. Ouf !
Répondre
FRED 04/03/2016
Répondre
S77 18/03/2016
Répondre
WinDark 25/03/2016
Répondre
Ça ne fonctionne pas pour moi, j'obtiens toujours le message suivant: Projet verrouillé, Le
projet ne peut être affiché.
Répondre
B37 17/06/2016
Répondre
Shaman 20/06/2016
Bonjour,
est-il possible d'enlever un mot de passe qui protège le fichier .xlsx lui-même? Le mot de
passe qui est demandé avant que le fichier s'ouvre? (Excel s'ouvre et une fenêtre
demandant un mot de passe apparaît, tout est bloqué sauf la petite fenêtre du mot de
passe)
[6]DataSpaces contient:
- DataSpaceInfo (Dossier)
- TransformInfo (Dossier)
DataSpaceMap (Fichier)
Version (Fichier)
- DataSpaceInfo contient:
StrongEncryptionDataSpace (Fichier)
- TransformInfo contient:
- StrongEncryptionTransform (Dossier)
- StrongEncryptionTransform contient:
[6]Primary (Fichier)
Répondre
Répondre
Shaman 29/06/2016
Répondre
Kabil 29/06/2016
Bonjour ,
Merci pour le tuto , j'ai utilisé la 2 ème méthode et j'ai un nouveau fichier qui s'affiche avec
un nom "back", sur celui la tout le projet est bloque par contre sur le fichier sans _back le
projet est déverrouillé mais les macros vba sont toujours verrouillées, erreur 40230 en
cliquant dessus.
Que faire??
Merci.
Répondre
Didier 01/11/2016
Bonjour,
J'ai un fichier XLAM. Et apparemment, cela ne fonctionne pas.
Peux-tu m'aider ?
Merci
Répondre
Il semble qu'il y ait une autre solution (que je n'ai pas testée) pour ce type de fichier
(page en anglais).
Répondre
Laur 29/11/2016
J'ai suivie la procédure en manuel sur un fichier excel 2003-2007 dont je ne retrouvais plus
le mdp VBA = parfait !
merci
Répondre
Pmhon 02/01/2017
Répondre
Sergey Il y a 11 mois
Ben, mon coco, le script pour windows il est contrôlé positif sur virustotal. Voir
https://www.virustotal.com/fr/file/d2dd768659c3aa07763e7a068fb2a021212eb4e2f2142d75fc30e16c5c5ef449/analysis/
beurk
Répondre
Regarde bien le rapport, il n'y a qu'un seul antivirus sur 56 qui retourne un problème,
un antivirus Chinois (Jiangmin). Ce n'est pas franchement une référence... Les
antivirus principaux (Avast, BitDefender, Symantec, ...) ne constatent aucun problème.
Bref, je peux t'assurer que ce n'est qu'un faux-positif. Si vraiment tu en doutes, tu peux
toujours jeter un œil au code source que je fourni également et qui tient en 300 lignes
Répondre
George Il y a 11 mois
Merci,
fonctionne parfaitement.
pour info j'ai utilisé le petit utilitaire téléchargeable.
Répondre
Elji Il y a 10 mois
Bonjour, Merci pour cela. Mais de mon côté votre outil magique me dit "can't find the DPB
key". Y a t il une solution simple pour les ploucs en informatique comme moi??
Merci encore.
Répondre
Guylène Il y a 9 mois
Répondre
bernard Il y a 8 mois
Bonjour, votre petit outil existe t-il pour Excel 2011 Mac ?
Répondre
L'outil n'existe pas sur Mac, mais les versions Windows ou Linux fonctionnent
également pour des fichiers issus de Excel 2011 Mac.
Répondre
Curioso Il y a 8 mois
Bonjour,
Ca marche nickel ...je sais, ça n'est pas nouveau
Petite question : savez-vous quel est l'algorithme de cryptage ou plus probablement de
hashage utilisé pour transformer le mot de passe du projet VBA en hexadécimal
(DPB="XXXX...") ?
Répondre
Bonne question ! Mais je n'ai pas la réponse. Il est probable que ce soit un algorithme
propriétaire spécifique à Excel.
Répondre
Cédric Il y a 7 mois
Merci pour cet outil génial. J'ai tenté de faire la manipulation manuellement avec l'outil TXT
de Windows mais cela n'a pas fonctionné => suppression du fichier vbaProject.bin dans le
ZIP à l'ouverture du fichier EXCEL = résultat plus aucune donnée VBA ... (comme beaucoup
a priori)
Avec ton outil automatique, ça a fonctionné parfaitement et j'ai retrouvé mes macros créées
la semaine dernière. Désormais je sauvegarde mon mot de passe afin de ne plus l'oublier
Répondre
Bonjour Cédric,
Effectivement ça ne peut pas fonctionner avec un éditeur de texte comme Notepad ! Il
faut utiliser un éditeur hexadécimal comme précisé dans l'article, qui permet d'éditer
un fichier binaire. C'est pas la même chose
Mais le plus simple reste en effet le petit outil que je propose.
Répondre
Cédric Il y a 7 mois
Bonjour Kévin,
Voilà pourquoi je n'arrivais pas à modifier le fichier. En effet j'ai utilisé un éditeur
de texte au lieu d'un éditeur hexadécimal !
Cédric
Répondre
Eric Il y a 7 mois
Répondre
rayan Il y a 6 mois
Répondre
Melissa Il y a 6 mois
Répondre
yaka Il y a 6 mois
Répondre
Antoine Il y a 5 mois
Répondre
RANDON Il y a 5 mois
Merci beaucoup ! Ouf , super le petit utilitaire. ET bien indiquer un nouveau mot de passe
pour accéder aux macros.
Répondre
Mame Il y a 4 mois
Super ça fonctionne.
Merci beaucoup
Répondre
Yannick Il y a 3 mois
Bonjour, l'astuce est top surtout avec le petit programme. Cependant petite question, je suis
de plus en plus confronté à des fichier XLSB et la ton programme ne fonctionne pas, aurais
tu une solution? Je précise qu'il s'agit de fichier dont les protection mise en place m'interdise
de l'enregistrer dans un autre format.
Cordialement
Répondre
esftel Il y a 3 mois
cela fonctionne t il avec un fichier 2013 ?
je viens de faire le test sous excel 2013 et j'ai un problème pour remplacer .bin dans
l'archive (initialement .XLSM) ?
Merci pour ta réponse.
Répondre
Oui cela devrait fonctionner. N'hésite pas à utiliser le petit programme proposé pour
faire cette opération automatiquement
Répondre
Lionel Il y a 3 mois
Bonjour,
Un grand merci, ça fonctionne super bien, et notamment avec le petit fichier pour gagner du
temps sur l'étape 1.
Bonne continuation dans l'élaboration d'astuces qui sauvent la vie
Cdt,
Répondre
NONO Il y a 2 mois
Répondre
KASMI Il y a 4 semaines
Répondre
Kevin Il y a 4 semaines
Répondre
Guigui Il y a 3 jours
Répondre
Bonjour!
Svp j'ai une application nommé DSF qui comporte des macros, alors je voudrais importer
une nouvelle balance dans cette application que faire?
Répondre
ou
Commentaire *
Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code>
<del datetime=""> <em> <i> <q cite=""> <strike> <strong>
Laisser un commentaire
© Kévin Subileau 2012-2018 Accueil Informatique Photos / Vidéos Espace Pro Contact