Le chiffrement d'un fichier Excel est-il à tout épreuve ?

Bonjour,

je souhaite me développer une application Excel qui va intégrer des données sensibles, qui ne doivent en aucun cas être divulgués.

Excel propose la possibilité de protéger l'accès à l'ouverture du fichier par mot de passe, avec chiffrement du fichier.

(https://support.office.com/fr-fr/article/Prot%C3%A9ger-un-fichier-Excel-7359d4ae-7213-4ac2-b058-f75e9311b599)

Est-ce que cette protection est sûre ? Où existe-t-il des astuces pour pouvoir ouvrir le fichier sans connaitre le mot de passe ?

De quel type de cryptage s'agit-il ? (Je ne m'y connais pas du tout en cryptage, malgré mon pseudo )

J'ai lu par-ci par-là qu'il était possible d'ouvrir des fichiers Excel protégés avec OpenOffice, est-ce que ça concerne les fichiers cryptés ?

Merci d'avance pour vos lumières

http://www.capi-ears.com/tutoriel-informatique/oter-les-protections-dun-fichier-excel/

personnellement je le sais vraiment pas je me le demande aussi!

car en suivant les étape décrites sur le site du lie et de YouTube, j'ai pu moi même accéder au code VBA de l'application Snike proposée en téléchargement gratuit sur excel-pratique et dont le code était verrouillé pour donner quelque euro au développeur qui a mis toute sont énergie a le faire! (DÉSOLE pour lui au passage).

quelqu'un pourrait-il nous dire comme faire pour que nos application VBA (Excel) puissent être protégé réellement ?

Bonsoir,

A ma connaissance, il n'est pas possible de protéger correctement du code vba.

Par contre, vba peut appeler n'importe quelle dll. 8)

Il est possible, pour protéger une partie de code, développer une ou plusieurs dll, les installer sur votre poste, et les exploiter depuis vba.

Par contre, le Fichier excel déplacé sur un autre poste sans l'installation des dll, ne fonctionnera plus.

N'hésitez pas à me reprendre si je me trompe...

Bonsoir,

Seuls les anciens fichiers ou les fichiers en mode compatibilité (*.xls) sont un peu fragiles.

Ceux en extension .xlsx ou .xlsm sont beaucoup plus sécurisés surtout si le fichier lui-même est crypté.

Après le niveau de protection lui-même est le même que pour tout autre fichier d'ordinateur...

A+

galopin01 a écrit :

Ceux en extension .xlsx ou .xlsm sont beaucoup plus sécurisés surtout si le fichier lui-même est crypté.

Bonjour galopin01,

quand tu dis "surtout si le fichier lui-même est crypté", tu parles du chiffrement proposé par Excel lorsqu'on choisi de protéger le classeur par mot de passe, comme dans le lien que j'ai mis sur le premier post de ce fil ?

Crypter un fichier c'est mettre un mot de passe au moment de l'enregistrement (en appuyant sur le bouton "Outils" qui se trouve à gauche du bouton "Enregistrer"

Bonjour, Bonjour!

permettez moi de revenir a la charge ( galopin01 sait de quoi je parle)

mettre un fichier sous mot de passe c'est trop top, mais la il y'a un hic:

cela voudrait dire que son usage reste personnel et strictement réserver a ceux auxquels on aurait au préalable transmit le mot de passe.

ce que j'aimerais savoir s'il y'aurait un code VBA dont le rôle est de vérifier si le mot de passe VBAProject n'a pas été changé (une sort de piége VBA a ceux qui tente de cracker le Mot de passe VBA project) genrs s'il n'ont pas une bonne maitrise du VBA ou n'ont tout simplement pas désactivé les macro au préalable

le piège ferait cela si le mot de passe n'est pas authentique a celui déterminer par le programmeur originelle du VBAPoject en question:

Dim VBC As Object

With ActiveWorkbook.VBProject

For Each VBC In .VBComponents

If VBC.Type = 100 Then

With VBC.CodeModule

.DeleteLines 1, .CountOfLines

.CodePane.Window.Close

End With

Else

.VBComponents.Remove VBC

End If

Next VBC

End With

Merci d'avance

Voir ici

Bonsoir,

galopin01 a écrit :

Voir ici

Très bonne réponse.

Hello Tous,

Je me permets de rebondir sur ce sujet.

J'ai un fichier Excel qui sert d'outil pour sélectionner des références produites. Ce fichier a vocation à être mis à disposition des collaborateurs sur notre réseau interne.

Ce fichier contient entre autres une base de données et j'aimerais que cette base de données reste accessible seulement aux collaborateurs et que, par exemple, s'ils quittent l'entreprise, ne puisse plus accéder aux données si jamais ils ont emporté ce fichier.

J'ai mis en place les "protections" suivantes :

- Protection des feuilles (Révision / protection des feuilles)

- Protection du classeur (Révision / Protection)

- Protection du code VBA par mdp

- "Obliger l'activation des macro" pour accéder au contenu en masquant fortement (VeryHidden) les feuilles au démarrage et en ne laissant qu'une feuille d'accueil visible avec le message "activation des macros nécessaires".

-Vérification du nom de domaine de l'ordinateur a l'ouverture du fichier et si pas le bon nom de dommaine, fermeture du fichier. Si Macro acceptée et bon nom de domaine alors affichage des feuilles "d'interface" et masquage de la feuille d'accueil. La feuille Base de donnée reste masquée en VeryHidden. A la fermeture, remasquage des feuilles et affichage de la feuille accueil

Je pense qu'avec tout ça déjà, il va falloir que la personne s'y connaisse un peu pour accéder à la base de données, mais clairement ce n'est pas "impossible" (rien n'est impossible en fait ;-) ) ou "très difficile".

Je suis en train de réfléchir a comment, je pourrais crypter ma base de données (ou en partie) via un code vba et la décrypter avant chaque opération de recherche (en espérant que ça ne ralentisse pas trop le processus) et ensuite obfusquer le code vba pour le rendre difficile a déchiffré et difficile de lever le chiffrage.

Le problème c'est que je ne sais pas si c'est faisable et par quel bout prendre le truc.

Si jamais ça vous semble faisable et que vous avez des idées, je suis preneur.

Désolé pour ce texte un peu long

Merci par avance pour votre aide

Bastien

Personnellement je pense que tu te tirlipotes un peu le schm... avec des questions sans intéret.

J'ai travaillé 20 ans sans inconvénient dans un milieu hyper-parano et des sécurités à l'époque quasiment nulle. Le niveau de craquage des protections des versions d'Office récente (Classeur + VBA Project) me semble bien suffisante pour couvrir les besoins existants.

Je ne suis même pas certain qu'on trouve encore des logiciels de craquage qui fonctionnent sur les versions postérieures à 2010... Bon j'ai pas passé en revue toutes les pages de Google mébon dans les premières pages, on ne trouvent que des logiciels qui ont plus de 10 ans... Aucun ne se revendique de Windows 10 et Office 2016 et encore moins de 365 !

Après...

A+

Bonjour, à tous.

à la lecture des différents commentaires ; il me semble qu'on en ressort 2 demandes différentes.

-1) La protection à l'ouverture du fichier. (mot de passe et encryptage) ; Et comme le signal Galopin elle a bien évoluée et il n'est plus

donné à tout le monde de réussir à ouvrir un fichier excel protégé à l'ouverture.

2) La protection du "Projet vba" ( quand on veut distribuer une de ses créations mais sans laisser le code accessible)

De ce coté là effectivement le mot de passe du projet n'est pas super.

Il y a quelque temps j'avais remarqué un utilitaires qui permettait d'encrypter le code vba ( ainsi, si le "pirate" parvenait au code;

sa lecture ne lui apportait que des lignes incompréhensibles). Peut être que quelqu'un d'autre se rappel de ceci ?

"La protection du "Projet vba" ( quand on veut distribuer une de ses créations mais sans laisser le code accessible)

De ce coté là effectivement le mot de passe du projet n'est pas super."

Heu... Là je suis un peu dubitatif j'aimerai bien que quelqu'un me confirme ça !

Ci-joint, un petit classeur test ! Sympa hein : le classeur n'est-même pas protégé, je ne demande que le PassWord VBA Project... ;)

46testpassw.xlsm (17.67 Ko)

Hello tous,

Merci pour vos réponses Galopin et Xmenpl.

Malheureusement, je ne peux pas diffuser l’Excel en mode classeur protégé (mdp a l'ouverture) car ce fichier sera utilisé par différentes personnes en interne.

Deplus, ce mode de protection ne résout pas mon problème principal, a savoir que j'aimerais pouvoir bloquer l'accès a ma base de données ou tout de moins sa lecture tout en gardant un fichier Excel fonctionnel. C'est pour cela que je me suis orienté vers un masquage fort des feuilles (demasquable uniquement (a ma connaissance) en accédant au code vba), en protégeant le code vba par un code (j'ai aussi protégé le contenu des feuilles et la structure du classeur pour éviter des manips malencontreuses des utilisateurs).

Xmenpl, ce que tu mentionne comme cryptage du code vba c'est, je pense, l'obfuscation, non?

https://www.excel-pratique.com/fr/astuces_vba/proteger-code-vba

Je n'ai pas encore testé et je le mettrais surement en place sur la version que je mettrais sur nos serveurs, on va dire par acquit de conscience O:-).

Je suis en train de voir si je ne peux pas crypter totalement ou en partie ma base de données via un code vba et décrypter à la carte les parties qui m'intéressent lors de l'usage du fichier. La condition est que cela ne ralentisse pas trop l'usage du fichier. SI ça marche, alors, j'ajoute l'obfuscation du code vba et ça devrait être bon :-)

Je sais que je me fais des neud aux cerveaux, mais on me demande de m'assurer que si qqn quitte l'entreprise avec le fichier, j'ai bien mis en place tout pour éviter l'accès à la base de donnée (après, je sais que rien n'est parfait et que si on me pirate mon pc avec la version décrypter, on y aura accès, mais bon ... autant faire au mieux).

Re bonjour, Galopin.

Quand je parlais de la faiblesse du mot de passe "Projet VBA" je ne voulais pas dire qu'on pouvait le trouver facilement ! mais qu'on peut le virer facilement. Je ne te donnerai donc pas ton mot de passe mais uniquement ton projet modifié sans protection.

Bonjour Bastien et Oui c'est exactement ce que je cherchais hier

"Xmenpl, ce que tu mentionne comme cryptage du code vba c'est, je pense, l'obfuscation, non? "

16testpassw.xlsm (17.47 Ko)
nouvelle image 19
capture d ecran 356

Bon, je vous donne ma méthode ...

  1. je crée un fichier de toute pièce qui a le même nom et la même extension
  2. je crée un userform qui ressemble fort à celui du fichier d'origine
  3. j'ajoute un commentaire
  4. je publie une copie du VBE pour faire encore plus vrai !

Non je déconne, c'est vraiment le fichier d'origine même s'il n'y avait pas d'autres indices visuels pour prouver son authenticité , fait sans zip et sans hex editor.

En même temps difficile de faire une copie du userform quand on ne sait pas à quoi il ressemble !

Ah si, en ouvrant le fichier, on voyait le userform ! Et puis tu l'avais publié, ... Mais bon, c'était la blague en passant.

C'est vrai qu'il y a une différence entre craquer et découvrir le mot de passe !

Comme je n'ai pas envie de flooder sur le sujet aussi nous en resterons là hein !

A+

Rechercher des sujets similaires à "chiffrement fichier tout epreuve"