Question:
Dossier de protection par mot de passe dans Windows en utilisant un fichier .bat / .exe: est-ce une si mauvaise pratique?
Peanuts
2018-02-14 07:13:35 UTC
view on stackexchange narkive permalink

J'ai navigué sur Internet à la recherche de moyens simples de protéger par mot de passe un dossier dans Windows 7 sans aucun logiciel supplémentaire ni BitLocker.

J'ai trouvé plusieurs endroits indiquant que l'utilisation d'un fichier .bat (et puis le convertir en fichier .exe pour éviter que les gens ne l'ouvrent dans un éditeur de texte et ne le comprennent) permettrait cela.

Cependant, quelque chose me dit que ce système n'est pas très sécurisé.

Je partage ici une partie du code de fichier .bat typique qu'ils prétendent fonctionner et un mot de passe protège le dossier:

  @ECHO OFFif EXIST "Panneau de configuration. {21EC2020-3AEA-1069-A2DD -08002B30309D} "goto UNLOCKif NOT EXIST Private goto MDPrivate: CONFIRMecho Êtes-vous sûr de verrouiller ce dossier? (O / N) set / p "cho = >" if% cho% == Y goto LOCKif% cho% == y goto LOCKif% cho% == n goto ENDif% cho% == N goto ENDecho Choix invalide.goto CONFIRMER: VERROUILLER Panneau de configuration privé ". {21EC2020-3AEA-1069-A2DD-08002B30309D} Panneau de configuration" attrib + h + s ". {21EC2020-3AEA-1069-A2DD-08002B30309D}" echo Dossier verrouillé vers Fin: DÉVERROUILLER Déverrouillez votre ensemble de dossiers sécurisé / p "pass = >" si NOT% pass% == wonderhowtogoto FAILattrib -h -s "Panneau de configuration. {21EC2020-3AEA-1069-A2DD-08002B30309D} Panneau de configuration" ren ". {21EC2020-3AEA- 1069-A2DD-08002B30309D} "Dossier Privateecho déverrouillé avec succèsgoto End: FAILecho Mot de passe invalidegoto end: MDPrivatemd Privateecho Private créé avec succèsGoto End: End  

Ce serait facile à craquer après l'avoir exporté dans un fichier. fichier exe? Et si je crypte le fichier .exe pour plus de sécurité?

Et aussi, le dossier doit-il être caché pour que cette "astuce" fonctionne? Quelles sont ces clés comme 21EC2020-3AEA-1069 -A2DD-08002B30309D ?

Merci beaucoup d'avoir jeté un peu de lumière ici.

Juste des trucs bon marché qui n'apportent rien.Utile pour s'amuser un peu sur les ordinateurs de l'école à un jeune âge peut-être.Quelles étaient vos sources?Avons-nous besoin de les corriger ou étaient-ils simplement «pour le plaisir»?
"(et ensuite le convertir en fichier .exe pour éviter que les gens ne l'ouvrent dans un éditeur de texte et ne le comprennent)" Cela n'empêchera pas les gens de le regarder.Au moment où ils réalisent que l'exe ne fonctionne pas correctement, ils l'ouvriront dans un éditeur de texte pour découvrir pourquoi et voir qu'il s'agit d'un fichier batch renommé.
Nitpick: `if NOT% pass% == wonderhowtogoto FAIL` ->` if NOT% pass% == wonderhowto goto FAIL`
@Pharap convertissant sans renommer, il crée probablement simplement un fichier de commandes dans% temp%, puis l'exécute.
@immibis Dans ce cas, les poteaux de but se déplacent légèrement - le texte brut du fichier de commandes est récupérable avec le bon outil.
@Pharap: Là où je pense que "Bloc-notes" correspond à la définition de "bon outil" (il y aura aussi beaucoup de merde, mais le texte devrait être directement visible) - à moins bien sûr que le "Convertir en exe" ROT13 encode le texte.
@MartinBonner Ensuite, nous revenons à mon point précédent de le regarder avec un éditeur de texte.(Je trouve Notepad ++ plus facile pour cela car il peut rendre les caractères non imprimables, bien qu'apparemment Linux ait [`strings`] (https://stackoverflow.com/a/2497183/1377706) qui devrait également faire le travail.)
@jakekimdsΨ pour être parfaitement honnête, tout cela pourrait se résumer à `goto FAIL`
êtes-vous le seul à utiliser votre compte sur votre machine?(les autres utilisateurs ont-ils leur propre compte?) Si c'est le cas, vous pouvez simplement restreindre le dossier à vous-même
J'ai en fait rencontré cela dans la nature une fois et il était très facile de comprendre ce qui se passait et d'exfiltrer les données.Utilisez simplement un volume VeraCrypt avec un nom intelligent, comme `thumbs.db` ou` .DS_Store`, et vous excluerez tout le monde sauf les acteurs parrainés par l'État.
Belle astuce .DS_Store.(:
`c: \ cygwin64 \ bin \ find.-nom '* .txt' -print0 |c: \ cygwin64 \ bin \ xargs -0 c: \ cygwin64 \ bin \ grep "motif intéressant" / dev / null` ne se soucie pas de votre nom de fantaisie.Et ce n'est que l'outil de premier passage.
Mis à part l'inefficacité du script, une telle chose est-elle même nécessaire?Windows 7 ne peut-il pas effectuer le chiffrement des dossiers directement à partir des options de dossier, même sans Bitlocker?Je pense que même Windows XP pourrait déjà le faire même si je ne l'ai jamais utilisé ...
Il semble que ce soit la source d'OP: https://operating-systems.wonderhowto.com/how-to/lock-folder-without-any-software-with-password-0150639/
Cinq réponses:
Out of Band
2018-02-14 07:38:23 UTC
view on stackexchange narkive permalink

Ce script batch ne protège rien du tout. Il renomme simplement le dossier en question et définit le système et les attributs cachés, ce qui rend le dossier un peu plus difficile à trouver et pourrait empêcher votre enfant de dix ans de le voir, mais il a gagné » N'arrêtez personne d'autre.

Tout au plus, nous pourrions appeler cela «la sécurité par l'obscurité», mais j'hésite même à l'appeler ainsi, car en réalité, définir les attributs cachés et système ne masque pas

Il n'y a pas du tout de chiffrement en cours - le dossier n'est pas protégé par mot de passe, le mot de passe n'est utilisé que dans le fichier de commandes pour empêcher quelqu'un d'utiliser le fichier de commandes pour supprimer automatiquement le cachés et les attributs système et renommez le dossier en quelque chose de sain.

Serait-ce facile à déchiffrer après l'avoir exporté dans un fichier .exe ?

Oui. Extrayez simplement toutes les chaînes du fichier .exe et vous trouverez le "mot de passe".

Et si je crypte le .exe fichier pour plus de sécurité?

Encore une fois, le script ne fournit aucune sécurité du tout. Si vous cryptez le fichier batch / .exe , vous le rendez plus difficile à utiliser, mais vous ne sécurisez pas réellement le dossier en question.

Que sont ces touches comme 21EC2020-3AEA-1069-A2DD-08002B30309D?

Ceux-ci ne signifient rien en eux-mêmes (modifier: voir les commentaires de Bob et Danny sur les points de jonction pour une explication de leur signification). Ils peuvent faire partie d'un système plus grand dont le fichier de commandes fait partie, mais ils n'ajoutent rien à la sécurité du dossier réel - il fait simplement partie du nouveau nom du dossier tant qu'il est "masqué ".

Que faire à la place

Vous l'avez déjà dit: utilisez BitLocker ou VeraCrypt. Veracrypt peut travailler avec des fichiers conteneurs qui contiendront toute une arborescence de dossiers et il offre une réelle sécurité, tout comme BitLocker.

Si vous ne voulez pas utiliser de logiciel supplémentaire, faites ce que Mike suggère et fermez le dossier en le protégeant avec un mot de passe. Cela ne vous offre cependant pas la sécurité de BitLocker, VeraCrypt et de ses compatriotes.

Il semble que, au moins sur certaines versions de Windows, les dossiers qui suivent un modèle de dénomination spécifique (`Panneau de configuration. {GUID}`) ouvriront une applet spécifique du Panneau de configuration plutôt que d'afficher le contenu.Bien sûr, cela est trivialement vaincu en renommant le dossier (aucun mot de passe requis), en naviguant avec autre chose que Explorer (cmd, powershell, diable même votre navigateur Web ...), etc.
Il existe également une solution de contournement pour utiliser [fichiers conteneurs avec BitLocker] (https://www.howtogeek.com/193013/how-to-create-an-encrypted-container-file-with-bitlocker-on-windows/)
Pourquoi dites-vous que la compression du dossier avec un mot de passe n'offre nulle part la sécurité de BitLocker?Winzip propose un choix d'AES-128 et d'AES-256.
Parce que la sécurité ne concerne pas seulement la force d'un algorithme de chiffrement, elle concerne l'ensemble du système.Ainsi, même si le cryptage zip est fort (il était auparavant très faible, d'ailleurs), les programmeurs voulaient développer un système capable de compresser les fichiers et de crypter le résultat, sans fournir un stockage sécurisé.Ils n'ont donc probablement pas pensé à des choses telles que les données sensibles, y compris les clés de chiffrement, à être paginées sur le disque, ou au système enregistrant des informations sensibles dans le journal système, ou à l'écrasement des données sensibles avec des octets aléatoires, etc.le stockage crypté sécurisé est difficile.
@MartinBonner "sans aucun logiciel supplémentaire".Le zip Windows par défaut ne prend en charge que ZipCrypto.
@MartinBonner car lors de la visualisation de fichiers à partir d'un zip protégé par mot de passe, les textes en clair sont copiés dans% tmp% sur le disque dur;ils sont supprimés plus tard, mais en utilisant la suppression normale au lieu d'un effacement sécurisé.
Cela me rappelle les anciennes versions de Windows où vous pouviez renommer un dossier de manière à ce que vous ne puissiez pas y accéder.Vous pouvez renommer le dossier en quelque chose d'autre, puis vous pouvez y accéder.
L'utilisation d'un nom suivi d'un point et d'un GUID crée une sorte de lien symbolique du système de fichiers vers un objet Shell qui est créé en créant une instance de la classe avec ce GUID à l'aide de COM, qui doit implémenter l'interface appropriée (IIRC [IShellItem] (https://msdn.microsoft.com/en-us/library/windows/desktop/bb761144 (v = vs.85) .aspx)).Ceci est principalement utilisé pour créer des raccourcis vers des éléments virtuels tels que "Poste de travail" ou des applications individuelles du Panneau de configuration.
_ "Ces [chaînes hexadécimales] ne signifient rien par elles-mêmes" _ - c'est incorrect, ce sont des [points de jonction] (https://superuser.com/questions/993121/what-is-the-significance-of-windows-noms-de-fichiers-qui-ont-des-nombres-hexadécimaux-en-eux-lik / 993179 # 993179).Même si vous pouvez voir des dossiers cachés, si vous essayez d'ouvrir ce dossier, il ouvrira le Panneau de configuration à la place.Vous devrez renommer le dossier pour l'ouvrir réellement.
Bob l'a déjà souligné, mais je vais mettre à jour la réponse pour y faire référence.
La sécurité du cryptage Zip n'est pas bonne ... mais elle est probablement adéquate pour les besoins des OP, et elle atteint son objectif avec les outils existants sur le système d'une manière qui s'intègre bien avec le système d'exploitation.Zip répond efficacement à la question posée car il est jusqu'à présent supérieur à la méthode proposée par l'OP: plus sécurisée et moins compliquée.
@Joel - bien sûr, c'est probablement assez bien - mais voici comment Bruce Schneier le dit: il existe des systèmes qui gardent votre petite sœur hors de vos affaires privées, et d'autres qui empêchent tout le monde d'entrer.Ces derniers sont appelés «sécurisés», les premiers ne le sont pas.Donc, si vous ne vous souciez que de votre petite sœur, Zip est une option.Si vous vous inquiétez pour quelqu'un prêt à dépenser quelques centaines de dollars pour embaucher un expert, ce n'est pas le cas.Et il ne faut pas beaucoup d'expert: Ratchet freak souligne une faiblesse très facilement exploitable de la solution zip.
Mike Ounsworth
2018-02-14 07:27:42 UTC
view on stackexchange narkive permalink

Tout d'abord, vous devriez lire le Principe de Kerchoff:

Un cryptosystème doit être sécurisé même si tout ce qui concerne le système, à l'exception de la clé, est de notoriété publique.

Le système que vous proposez ne fonctionne (même si je n'utiliserais pas le mot «sécurisé») tant que le code reste secret. Même si vous avez "caché" le code .bat en le renommant en .exe et donné ce fichier à n'importe quel hacker moyennement qualifié, ils l'ouvriront dans un éditeur de texte plus sophistiqué que le bloc-notes et découvrez ce que vous avez fait en moins de 30 secondes.

À la place, essayez de le transformer en un système basé sur des clés où vous n'avez pas besoin de cacher le code. Par exemple, compressez le dossier dans un ZIP protégé par mot de passe et accédez-y uniquement en mémoire (c'est-à-dire dans un programme de visualisation zip) plutôt que de l'extraire sur le disque.

Ce n'est pas sécurisé même si le code reste secret - cette "protection" peut être interrompue même accidentellement, car toute analyse / recherche complète du disque trouvera les documents correspondants s'ils sont stockés dans ce dossier "caché".
@Peteris Disons que cela fonctionne tant que l'existence du dossier et son nom brouillé restent secrets, ce qui semble être des objectifs du système.Il utilise juste une très mauvaise implémentation pour essayer de les atteindre.
@jpmc26 non, cela ne fonctionne pas - l'analyse de * tous * les dossiers fonctionne même si "l'existence du dossier et son nom brouillé restent secrets";les fichiers à l'intérieur et leur contenu sont consultables, trouvables et apparaîtront même accidentellement si l'utilisateur lance une recherche de quelque chose et que la recherche (comme il se doit) analyse tous les dossiers sur le lecteur, ou (plus probablement) utilise un index calculé à partir de tousdossiers sur le lecteur.Y compris ceux que l'utilisateur ne connaissait pas ou qui avaient des noms bizarres et déformés.
@Peteris Si vous scannez tout et trouvez le nom du dossier, vous savez qu'il existe et en connaissez le nom et ils ne sont plus secrets.Le fait que l'implémentation repose sur le fait qu'ils restent secrets (ce qui ne se produirait pas lors d'une attaque ou peut-être même par accident, comme vous le démontrez) est pourquoi c'est mauvais.C'est ainsi que le principe de Kerchoff s'applique ici;ce sont des informations autres que la clé.
gronostaj
2018-02-14 15:39:21 UTC
view on stackexchange narkive permalink

Est-ce une si mauvaise pratique?

Oui.

Le fichier batch n'utilise pas le mot de passe pour un-hide votre dossier, il le compare simplement et s'il s'avère correct, exécute les commandes de "déverrouillage". Et rien ne vous empêche d'exécuter ces commandes sans vérifier le mot de passe :

  attrib -h -s "Panneau de configuration. {21EC2020-3AEA-1069-A2DD-08002B30309D } Panneau de configuration "ren". {21EC2020-3AEA-1069-A2DD-08002B30309D} "Privé  

Boum, le dossier secret est" déverrouillé ". Aucune fissure nécessaire.

ZOMVID-20
2018-02-14 17:40:31 UTC
view on stackexchange narkive permalink

Cela ne fournit même pas d'obscurité - la recherche Windows régulière cherchera toujours les fichiers dans un dossier renommé et caché. Je viens de le tester par curiosité.

Inutile même d'ouvrir le fichier exe; faites simplement la recherche habituelle des fichiers du bon type - ce qui est exactement ce par quoi quelqu'un essayant de voler vos fichiers commencerait (enfin, peut-être juste après vos documents), et cela apparaîtra.

Ce n'est même pas bon pour un .bat. Si l'objectif était d'obscurcir un fichier d'invités analphabètes, mais de le garder visible pour tous les utilisateurs expérimentés, vous pouvez le déplacer vers une partition sans lettre qui lui est attribuée, en l'appelant par GUID.

Il y a aussi des astuces plus sophistiquées pour obscurcir une chauve-souris que de la transformer en un exe, comme la rendre auto-modifiable, mais rien qui assure la sécurité sans chiffrement.

FrankPl
2018-02-15 01:23:50 UTC
view on stackexchange narkive permalink

Ce script définit simplement le système et les indicateurs masqués du dossier "Private" ( attrib + h + s ), ce qui le masque de l'affichage normal dans l'Explorateur Windows et de une liste par défaut sur la ligne de commande en utilisant dir , et en outre renomme le dossier de sorte que (si le premier changement n'empêche pas l'utilisateur de le voir), il ne soit pas affiché comme un dossier dans Windows Explorer, mais en tant que panneau de configuration, qui est le but de la partie drôle de nom "{21EC2020-3AEA-1069-A2DD-08002B30309D}".

Cependant, le premier changement peut être facilement contourné en changeant l'option de l'Explorateur définie sur «afficher les fichiers, dossiers et lecteurs cachés». En fait, c'est le réglage sur mon ordinateur. Pour la commande DIR , il vous suffirait d'utiliser DIR / a: HS au lieu de purement DIR pour afficher le dossier.

Et le deuxième changement ne s'applique qu'à l'Explorateur Windows, pas à la ligne de commande ou à tout programme qui répertorie simplement les fichiers sans utiliser l'Explorateur Windows. Notez, cependant, que la boîte de dialogue d'ouverture ou d'enregistrement de fichier affichée dans de nombreuses applications est également une variante de l'Explorateur Windows, se comportant essentiellement de la même manière.

En fait, vous pouvez faire le changement d'attribut vous-même en utilisant l'attribut , et pour l'attribut "hidden", mais pas l'attribut "system", également dans la boîte de dialogue des propriétés du dossier dans l'Explorateur Windows. Et le changement de nom, bien sûr, vous pouvez le faire aussi sur la ligne de commande. Et comme vous pouvez faire les modifications, vous pouvez également les annuler sur la ligne de commande sans avoir besoin de connaître de mot de passe.

Donc, à la fin, ce script ne masque que le dossier de l'Explorateur Windows ou la liste des fichiers en mode par défaut. Mais les utilisateurs ayant des connaissances techniques peuvent le contourner. En fait, le mot de passe n'est nécessaire que si vous souhaitez utiliser ce fichier de commandes pour afficher le dossier, mais pas si vous le faites simplement en ligne de commande ou dans des outils tels que des gestionnaires de fichiers tiers vous-même, ce qui est totalement inutile. Et d'où la discussion sur la façon de le cacher est sans objet.



Ce Q&R a été automatiquement traduit de la langue anglaise.Le contenu original est disponible sur stackexchange, que nous remercions pour la licence cc by-sa 3.0 sous laquelle il est distribué.
Loading...