Question:
Existe-t-il un système de fichiers qui ne prend pas en charge le chiffrement?
Thomas Roy
2017-05-15 00:06:37 UTC
view on stackexchange narkive permalink

Je préférerais que personne, même moi, ne puisse crypter mes fichiers. Je n'en ai aucune utilité et je n'en veux pas.

Existe-t-il un moyen de désactiver définitivement tout type de chiffrement au niveau du système d'exploitation?

Sinon, est-ce un amélioration possible qu'un futur système de fichiers pourrait intégrer? Ou est-ce fondamentalement impossible à empêcher?

Pourquoi préféreriez-vous cela?
Est-ce vraiment * "Comment éviter les ransomwares?" *
Même si une telle chose était possible, ce qui n'est pas le cas, cela ne protégerait pas vos fichiers contre les ransomwares.Les pirates de ransomware supprimeraient simplement irrémédiablement vos fichiers à la place, puis _siraient_ qu'ils étaient cryptés et pourraient être récupérés si vous payiez la rançon.Certaines personnes désespérées paieraient, elles ne récupéreraient tout simplement pas leurs fichiers.
Cela ressemble à un cas de problème XY (https://meta.stackexchange.com/a/66378).Quoi qu'il en soit: le blocage du cryptage n'arrêtera pas les ransomwares en premier lieu, et il n'est pas vraiment possible de bloquer tout le cryptage * de toute façon * sur un appareil informatique à usage général.
Vous n'avez peut-être aucune utilisation personnelle, mais votre système d'exploitation et de nombreux programmes que vous exécutez le font.
Ce devrait être un système de fichiers qui ne prend pas en charge le contenu.
Vous demandez effectivement si vous pouvez acheter un journal qui vous empêche d'écrire des entrées en français.Un système de fichiers, tout comme un journal, contient précisément ce que vous y écrivez.
Je suppose que si l'objectif est de rendre le ransomware inefficace par votre choix de système de fichiers, vous en voulez un qui ne prend pas en charge la suppression (ni l'écrasement), peu importe qu'il prenne en charge le cryptage.
Merci tout le monde.Pour une raison quelconque, je pensais au cryptage comme un mécanisme de la partition / FS / OS / drivers.Je réalise maintenant que le ransomware crypte simplement les octets du fichier et les écrit sur le disque.C'est plus simple que ce que j'imaginais.
utiliser btrfs + snapper
Les instantanés en lecture seule btrfs sont une approche du ransomware de-fang.Une fois l'instantané créé, seul l'utilisateur racine du système peut supprimer l'instantané ou le rendre accessible en écriture pour chiffrer son contenu.La surcharge des instantanés fréquents est assez faible.zfs a des installations similaires.
Les systèmes de fichiers structurés en journaux sont une autre approche.L'idée de base est qu'une fois que les données sont écrites, elles ne sont pas écrasables dans une fenêtre de temps définie, vous pouvez donc ramener le système de fichiers à la manière dont il était à tout moment dans la fenêtre, pas seulement en un instantané.Un processus séparé récupère l'espace représentant des données plus anciennes que la fenêtre.Le plus gros problème avec de tels systèmes de fichiers est que l'écrasement répété du même fichier remplira le système de fichiers, et la récupération à partir de cette situation peut être un problème sérieux.Mais peut-être que les disques deviennent de plus en plus grands, cette idée sera-t-elle enfin celle dont le temps est venu?
@nigel222 Au fur et à mesure que les disques grossissent, les gens penseront qu'avoir leurs films en Ultra-Ultra-Ultra-Ultra HD est une idée encore meilleure: P Et si vous autorisez un moyen de purger les journaux, ce serait ce que le ransomware utiliserait ...
Neuf réponses:
Peter
2017-05-15 00:11:48 UTC
view on stackexchange narkive permalink

Non, c'est impossible, sauf si vous changez la définition d'un fichier.

Un fichier est une donnée arbitraire. Les données arbitraires peuvent être des données cryptées.

Même si nous n'autorisons que les données structurées, les données structurées peuvent - si nous ne supposons aucune contrainte d'espace - être abusées pour stocker toutes les données arbitraires * (citation nécessaire). Ce qui nous amène au point de départ.


Vous pouvez avoir un succès partiel, si nous introduisons des restrictions. Par exemple, si vous ne voulez pas que les fichiers soient chiffrés après leur écriture, vous pouvez utiliser un système write once (ou même write only). Ou si vous voulez lutter contre les attaques de ransomwares, vous pouvez avoir un système de fichiers qui conserve les copies originales des fichiers modifiés pendant un certain temps.


* Par exemple, un format de texte restrictif qui n'autorise que les mots "Fizz" et "Buzz" peuvent représenter toutes les données binaires en remplaçant 0 par "Fizz" et 1 par "Buzz".

désolé les gens, c'est ridicule
Que diriez-vous d'un système de fichiers qui comprend de nombreuses extensions de format plausibles et qui valide les données enregistrées par rapport au format, refusant d'écrire le fichier s'il n'est pas extrait?PAR EXEMPLE.Si vous ouvrez un `.jpeg` dans un éditeur hexadécimal et modifiez quelques octets _ (dans une tentative de créer kewl glitch art) _, lorsque vous enregistrez le système d'exploitation vous donne une erreur **" le fichier n'a pas pu être enregistré;les données n'ont pas pu être validées par rapport aux spécifications JPEG / JFIF ”**.Bien sûr, ce type de système de fichiers imposerait aux développeurs d'applications de n'utiliser que les formats pris en charge et de demander que leurs formats soient ajoutés au système d'exploitation… mais théoriquement cela pourrait fonctionner.
@SlippD.Thompson Non seulement vous auriez besoin d'avoir une telle validation spécifique de type de fichier, mais vous devriez également valider que chaque .jpeg est une image réelle, plutôt qu'un tas de pixels qui peuvent être interprétés comme des données cryptées.Vous devez également vous assurer que les images ne contiennent aucun contenu sténographique.
@CortAmmon Bien sûr, si vous voulez avoir un système de fichiers entièrement anti-cryptage / données obscurcies.Je tournais davantage pour un système de fichiers anti-cryptage de contenu existant en place.
@Peter Je sais que ce n'est pas un commentaire utile, mais votre déclaration est géniale.Je pense également que des données structurées de longueur arbitraire pourraient être utilisées pour stocker chaque fichier.
@Slipp Cela pourrait offrir une certaine protection contre les changements aléatoires.Les attaques de ransomwares sont des changements délibérés et ciblés.La connaissance d'une telle vérification rend le contournement facile sinon trivial.Gardez à l'esprit que le nombre de types de fichiers que les ransomwares réussis doivent affecter est petit (je suppose que docx et jp (e) g seuls suffisent pour obtenir 95% des «clients» privés).
@Peter Eh bien oui, toute amélioration de la sûreté et de la sécurité finira par être rompue - il n'existe pas de système parfait.La sécurité de la vérification du format de fichier serait contre les attaques qui reposent sur _un fichier étant des données arbitraires_— attaques sans connaissance de ce processus de vérification.Et bien sûr, toutes les données ne peuvent pas être vérifiées et donc si une attaque était conçue pour, par exemple, chiffrer tout le texte lisible par l'homme dans un ".doc", cela fonctionnerait toujours.
@SlippD.Thompson Donc je veux crypter votre jpeg.Je l'ai lu, l'ai exécuté via un algorithme de cryptage et converti la sortie en octal ou hexadécimal.Je l'enregistre ensuite sous forme de fichier txt.Il est parfaitement valable pour un fichier txt de contenir les caractères "01234567".Mon code supprime ensuite votre fichier d'origine et met en place la demande aléatoire.La vérification du format de fichier ne fait absolument rien.
@Murphy Cet exemple inclut la suppression du fichier original, donc tous les paris sont désactivés.Un système de fichiers magique à l'épreuve du cryptage ne sert à rien si la suppression pure et simple des fichiers est votre stratégie.Il convient de noter que la récupération des données du système de fichiers est beaucoup plus facile sur les fichiers carrément supprimés _ (la modification des fichiers peut être des opérations atomiques ou non atomiques, mais la copie de contenu dans de nouveaux fichiers est toujours atomique sur la plupart des systèmes de fichiers) _, et la récupération des sauvegardes de fichiers supprimés est beaucoup plus facileque les fichiers qui ont changé - depuis un certain temps, les fichiers modifiés peuvent remplacer la ou les versions sauvegardées légitimes.
Si vous faites soudainement comprendre au système de fichiers la sémantique des types de fichiers et pour effectuer la validation, vous rencontrez maintenant plus de problèmes: 1. Une validation stricte peut empêcher l'écriture de fichiers partiels.2. Vous avez considérablement augmenté votre surface d'attaque: il est maintenant possible qu'un fichier mal formé cible des bogues dans le code d'analyse de format du système de fichiers.
@SlippD.Thompson Un ransomeware existant effectue régulièrement une copie cryptée, puis supprime l'ancien fichier de manière irrécupérable.Si les fichiers ne peuvent pas être corrompus (par exemple en rendant les images toutes noires, les fichiers texte tous les zéros, etc.), après avoir supprimé les anciens fichiers, créez simplement un seul grand fichier texte aussi grand que l'espace non alloué dans le système de fichiers qui est une chaîne aléatoirecaractères de texte.Plus besoin de récupérer des fichiers pour vous, sauf si vous disposez d'un système de sauvegarde séparé.si vous avez en fait un système de sauvegarde séparé, vous n'avez pas besoin de votre système de fichiers extrêmement complexe.
l0b0
2017-05-15 16:58:54 UTC
view on stackexchange narkive permalink
Les systèmes de fichiers en lecture seule ne peuvent, par définition, pas être écrits (du moins pas numériquement. Ce que vous faites avec un perforateur et un aimant en néodyme est votre propre affaire). Exemples:
  • Live CD, à partir desquels vous pouvez démarrer dans un système d'exploitation qui aura le même aspect à chaque démarrage.
  • Périphériques WORM (Write Once Read Many), utilisés par exemple par des institutions financières qui doivent enregistrer des transactions pendant de nombreuses années sans aucun moyen de les modifier ou de les supprimer numériquement.
  • Partitions inscriptibles montées en lecture seule. Cela peut bien sûr être contourné par un programme avec un accès root.

Le contrôle des versions des systèmes de fichiers serait plus pratique, mais n'est pas courant . De tels systèmes peuvent facilement inclure des options pour écrire de manière transparente chaque version d'un fichier (ou sa différence avec la version précédente) sur un périphérique WORM ou un stockage autrement protégé.

Ces deux solutions résolvent le problème sous-jacent: ne pas perdre le données d'origine en cas de cryptage par un logiciel malveillant.

Il serait plus exact de dire que les systèmes de fichiers de contrôle de version ne sont pas * actuellement * courants.VMS avait un tel système de fichiers, et il était relativement courant avant que les PC ne deviennent omniprésents.
Bonne réponse.C'est la réponse la plus proche d'une réponse pratiquement utilisable.J'adorerais avoir un verrou physique sur mon lecteur de données qui empêche toute écriture.
Vous pourrez peut-être trouver une clé USB avec un commutateur de protection en écriture matérielle http://www.fencepost.net/2010/03/usb-flash-drives-with-hardware-write-protection/
Ce qui manque à cette réponse, c'est que les périphériques en lecture seule «artificiels» peuvent être montés ou physiquement modifiés (via un commutateur) pour permettre les écritures.Les CD et DVD deviennent impraticables si vous souhaitez graver continuellement des modifications.Le contrôle de version des systèmes de fichiers ne peut garantir qu'une version précédente sera disponible et "intacte".
Même un support en lecture seule comme un CD-ROM n'est pas à l'abri d'une attaque contre une victime naïve - l'attaquant pourrait utiliser un module de noyau qui fait apparaître qu'un disque particulier est chiffré ou autrement modifié, incitant la victime à payerde l'argent pour «décrypter» les fichiers, même si les fichiers n'étaient pas du tout modifiés, et seraient facilement récupérés sur un ordinateur différent, non infecté.
@Johnny un simple redémarrage éliminerait toute attaque et ramènerait le système à ce qu'il était en ce qui concerne les CD en direct.À moins que vous n'utilisiez généreusement le terme naïf :)
"J'adorerais avoir un verrou physique sur mon lecteur de données qui empêche toute écriture."Oh, ceux-ci existent déjà.Le bouton d'alimentation.
@Shane Pour un lecteur système, les deux seraient presque équivalents, oui.Mais Thomas parlait spécifiquement de son lecteur de données :)
@ThomasRoy Eh bien, il existe des moyens d'obtenir des effets similaires.Par exemple, Windows Embedded a une option qui autorise les écritures, mais ne les écrit pas réellement sur le disque - lorsque vous redémarrez l'ordinateur, vous êtes de retour là où vous avez commencé.Si vous exécutez votre ordinateur virtualisé, vous pouvez monter votre système utilisateur sur des lecteurs qui utilisent des instantanés, des journaux, empêcher tout écrire ensemble ... il y a beaucoup d'options.Bien sûr, cela ne fonctionne toujours pas très bien pour les jeux, mais sinon, ce n'est pas si difficile à configurer et à maintenir.
NTFS (et btrfs et HFS +) prennent en charge le contrôle des versions;mais ils ne protègent pas contre les programmes dotés de privilèges d'administrateur.
Alexander O'Mara
2017-05-15 00:11:17 UTC
view on stackexchange narkive permalink

De nombreux systèmes de fichiers ne prennent pas en charge le chiffrement au niveau du système de fichiers natif. Les fichiers cryptés par logiciel peuvent être stockés sur n'importe quel système de fichiers, comme n'importe quel autre fichier. Le système de fichiers ne peut pas faire la différence entre les données aléatoires et les données cryptées.

Existe-t-il un moyen de désactiver définitivement tout type de cryptage au niveau du système d'exploitation?

Pas tant que le code peut exécuter et écrire des fichiers sur le disque.

Ou est-ce fondamentalement impossible à empêcher?

Sans sacrifier les fonctionnalités de base, oui.


Vous avez cependant tagué votre question ransomware. Vous recherchez peut-être des informations sur le sandboxing des applications ou la détection heuristique des ransomwares.

dark_st3alth
2017-05-15 00:22:18 UTC
view on stackexchange narkive permalink

Il semble y avoir une idée fausse entre le chiffrement et les systèmes de fichiers.

Les deux sont indépendants, on peut faire du chiffrement sans avoir de système de fichiers, et on peut avoir un système de fichiers sans faire de chiffrement.

Par exemple, les systèmes de fichiers FAT16 / FAT32 traditionnels ne "supportent" pas le cryptage natif comme NTFS le fait avec son sous-composant EFS. Cela ne signifie pas pour autant que vous ne pouvez pas modifier les données déjà validées, ni écrire des données dans le système de fichiers qui est chiffré.

Il est tout à fait possible d'avoir un Système de fichiers "écriture seule" ou lecteur "lecture seule", mais cela n'empêche toujours pas quelqu'un de copier les données, de les chiffrer, puis de les conserver ailleurs. Vous pouvez certainement empêcher la suppression et l'écriture de données déjà sur le disque (les fichiers sous Windows peuvent être verrouillés par un processus actif).

Out of Band
2017-05-15 00:26:05 UTC
view on stackexchange narkive permalink

Un système de fichiers est essentiellement un fournisseur de services pour le système d'exploitation (par exemple, il fournit un moyen de stocker et de récupérer de manière permanente des données sur un support de stockage sous-jacent), et le système d'exploitation propose ce service à tout programme exécuté sur l'ordinateur.

Ce n'est pas dans la description de travail de base d'un système de fichiers de s'occuper du chiffrement, et bien que certains systèmes de fichiers offrent un chiffrement natif, ce sont généralement d'autres couches qui s'en chargent.

Ransomware ne se soucie de rien de tout cela, cependant. Même si vous avez un système de fichiers qui n'effectue pas de cryptage natif, et même si vous avez supprimé tout logiciel supplémentaire fournissant une couche de cryptage (comme Truecrypt, Veracrypt, etc.), le code du ransomware lui-même utilisera l'interface fournie par le système d'exploitation. pour accéder aux fichiers du système de fichiers et les crypter. Il n'y a rien qui vous protégera de manière fiable contre cela, sauf une sauvegarde diligente de vos données, afin que vous puissiez récupérer si nécessaire.

Attention: les ransomwares particulièrement méchants viseront également à crypter votre sauvegarde.
Oui, vous devrez mettre en œuvre un schéma de sauvegarde générationnel et ne pas conserver toutes vos générations sur le même support de sauvegarde.En outre, il serait avantageux d'effectuer des vérifications statistiques faciles lors de la sauvegarde de vos données;s'il semble complètement aléatoire (ce qui signifie qu'il est crypté), vous devez immédiatement arrêter la sauvegarde et restaurer à la place votre système dans un état de sécurité connu.
@Pascal, vos vérifications devront peut-être rechercher spécifiquement les en-têtes de gros fichiers compressés car ceux-ci contiendront une grande proportion de données apparemment aléatoires.Mais bien sûr, les ransomwares peuvent bien écrire des en-têtes dans les fichiers cryptés.Et le hasard est difficile à mesurer dans le meilleur des cas.
L'aléatoire est assez facile à mesurer: envoyez des données via une bibliothèque de compression de données et si elle ne se compresse pas du tout, c'est un bon signe d'aléa.Un autre serait une distribution égale de toutes les valeurs d'octet.Une autre heuristique qui pourrait provoquer une alerte serait une baisse des fichiers identifiés comme des fichiers texte par rapport à un histogramme plus ancien.Quant aux fichiers compressés: vous pouvez simplement les décompresser et vérifier le contenu, tout comme les antivirus.Mais vous avez raison de dire que si vous traitez avec des données principalement constituées de données compressées, vous devez faire attention.
The Spooniest
2017-05-15 18:43:52 UTC
view on stackexchange narkive permalink

Idéalement, les données chiffrées ne doivent pas être distinguées des données aléatoires . Il ne s'agit pas de "cacher" si des données cryptées sont présentes ou non (c'est la stéganographie; plus à ce sujet plus tard) mais de s'assurer qu'un attaquant ne peut pas trouver de modèles dans les données qui pourraient, à leur tour, être utilisés pour trouver la clé pour le déchiffrer.

Cela pose un problème pour le système souhaité, car les données aléatoires pourraient, en théorie, contenir n'importe quelle séquence de bits . Il n'est pas nécessairement probable qu'une chaîne aléatoire de bits se révèle être, par exemple, un JPEG aléatoire, mais c'est arrivé. Combinez cela avec la stéganographie, où les données sont cachées dans d'autres données (souvent utilisées pour cacher des données chiffrées dans d'autres données non chiffrées), et la situation semble plus sombre pour votre scénario.

Pour cette raison, là n'est pas vraiment un moyen de savoir si une donnée donnée est chiffrée ou non, ou contient une autre donnée qui pourrait être chiffrée . Le plus proche que vous puissiez obtenir d'un système de fichiers qui ne peut absolument pas contenir de données chiffrées est celui qui ne peut contenir aucune donnée, et il y a très peu d'utilisations pour un système de fichiers comme celui-là.

_Il n'est pas [...] probable qu'une chaîne aléatoire de bits se révèle être [...] un JPEG aléatoire, [mais c'est arrivé] (http://riii.me/5knk0) ._ Pour un ** définition très ** large de «aléatoire», oui.Le processus réel était un peu plus compliqué et a été «poussé» vers un fichier JPEG valide.Il y a toujours une chance très, très, très mince pour toute séquence aléatoire de bits d'être un JPEG valide (où cela dépend de ce que vous définissez une `` chance très, très, très mince '' d'être) mais en tirant des bits aléatoires de rien sanscette «aide» supplémentaire n'aurait pas abouti à des JPEG _que_ rapidement.
+1 une chose à ajouter est que les fichiers compressés ressemblent également à des données aléatoires, tout comme les fichiers cryptés (surtout si le lecteur ne connaît pas l'algorithme de compression).
Karl Bielefeldt
2017-05-16 07:41:47 UTC
view on stackexchange narkive permalink

Comme d'autres l'ont dit, vous ne pouvez pas empêcher le chiffrement au niveau du système de fichiers, mais l'alternative la plus proche que je n'ai pas encore vue mentionnée est le Contrôle d'accès obligatoire.

Fondamentalement, vous pouvez définir des autorisations supplémentaires afin que vos applications qui ont accès à Internet aient un accès extrêmement limité à votre disque. Votre navigateur Web, par exemple, pourrait être configuré pour ne pouvoir écrire que dans ses paramètres, son cache et un répertoire de téléchargements. Toute tentative par ce processus d'écrire en dehors de ces dossiers serait refusée par le système d'exploitation.

Donc, que se passe-t-il si une vulnérabilité est exploitée au lieu de chiffrer l'intégralité de votre disque, seul votre répertoire de téléchargements peut être chiffré. Bien sûr, ce n'est pas sûr à 100% (rien ne l'est), mais c'est une autre couche à laquelle les attaquants ne s'attendent généralement pas.

L'inconvénient est qu'il est difficile à configurer et peu pratique à maintenir, et se sent inutile après un certain temps lorsque les attaques très médiatisées laissent les yeux du public.

Thomas Carlisle
2017-05-15 03:55:13 UTC
view on stackexchange narkive permalink

Je suppose que votre raisonnement est dû au souci d'être vulnérable aux ransomwares. Si ce n'est pas le cas, ma réponse devient également «pourquoi»? Tous les systèmes de fichiers prenant en charge le chiffrement offrent la possibilité de ne pas l'utiliser. Ainsi, vous n'avez pas la surcharge qui ralentit vos accès aux fichiers, et vous n'avez pas à vous soucier de la corruption du disque qui rend l'ensemble de votre système de fichiers illisible.

Je ne pense pas qu'aucune des variétés de ransomwares n'utilise les capacités de chiffrement des systèmes de fichiers. Ils font les leurs, donc la désactivation du chiffrement au niveau du système de fichiers n'aidera pas.

Pour empêcher les ransomwares de crypter les fichiers, vous devez rendre votre système de fichiers en lecture seule ou manipuler les autorisations. Vous pouvez vous priver de la capacité d'écrire / modifier / supprimer vos fichiers de données, et de vous accorder ces droits uniquement lorsque vous souhaitez mettre à jour un fichier. Pas très faisable. J'ai récemment fait une petite preuve de concept avec une application de type lockbox, qui supprimerait toutes les autorisations de modification d'un dossier en le rendant en lecture seule pour vous, les administrateurs, etc. le dossier.

Je ne suis pas vraiment allé plus loin avec cela parce que je ne vois toujours pas que cela soit faisable du point de vue de l'utilisateur.

La meilleure protection contre les ransomwares reste de faire des sauvegardes fréquentes de vos fichiers. Windows 7/10 a la fonctionnalité "versions précédentes" qui est agréable car elle conserve un historique des fichiers au fur et à mesure qu'ils changent. Donc, si vos fichiers sont chiffrés, supprimés, etc. il y a une semaine, mais que vous ne l'avez pas remarqué jusqu'à aujourd'hui, vous trouverez toujours les versions non endommagées.

Vous pouvez configurer Windows 7/10 pour déclencher l'UAC lorsque vos fichiers de données sont modifiés si vous placez ces fichiers dans le dossier "Program Files".

rackandboneman
2017-05-17 11:55:32 UTC
view on stackexchange narkive permalink

Si le problème consiste à empêcher les fichiers d'être rendus inaccessibles, un système de fichiers versionné (comme VMS l'avait fait), configuré de manière à ce que la suppression des anciennes versions ne soit pas trivialement possible, fait probablement partie de votre meilleur pari.

n'est-ce pas couvert par la réponse acceptée?ressemble plus à un commentaire car il n'aborde pas la partie cryptage mais pointe vers la tangente


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...