Question

J'essaie de créer un moyen d'empêcher l'accès à certaines partitions de disque dur / lecteurs USB pour des raisons de sécurité (protection de la propriété intellectuelle). Je pensais que lorsque Windows tente d'accéder au "lecteur verrouillé / usb" la tentative est interrompue et renvoie quelque chose du type "lecteur inaccessible". ou quelque chose. C'est juste une idée, n'importe qui est-il plausible / possible? Si oui, des indications?

C / C ++

-Merci

Était-ce utile?

La solution

Vous devrez écrire un pilote de filtre pour atteindre votre objectif. Vous devrez placer votre pilote quelque part dans la pile de pilotes de disque et échouer avec IRP_MN_START_DEVICE pour le lecteur / la partition que vous souhaitez bloquer.

Vous aurez besoin du du Kit de pilotes Windows pour écrire des pilotes. Il existe un exemple de pilote de filtre dans le WDK. Cette liste de diffusion est très utile et si vous va rechercher dans les archives vous trouverez beaucoup d'informations sur les pilotes de filtre de disque.
Un bon article sur l'écriture de pilotes de filtres est ici , je pense que vous devrez en faire autant. inscrivez-vous pour lire, mais si vous voulez écrire un pilote, vous devez être inscrit sur ce site.
La liste de livres pertinente est disponible ici .

Autres conseils

Le problème des partitions est facile. Il vous suffit d'utiliser les listes de contrôle d'accès pour empêcher l'accès de certains utilisateurs.

Pour l’accès aux lecteurs, il existe probablement un paramètre quelque part dans Windows pour le désactiver. Dans le pire des cas, vous pouvez essayer de supprimer de force les pilotes (et donc la capacité de Windows à lire le lecteur / la clé).

Pour les lecteurs USB, vous pouvez les chiffrer.

Au travail, nous utilisons le fournisseur Pointsec , qui vous permet d'accéder au lecteur. sur n'importe quel ordinateur uniquement si vous avez un mot de passe.

Je suis sûr qu'il existe des produits de chiffrement gratuits

.

Vous pouvez probablement aussi chiffrer les partitions.

(en gros, je ne sais pas pourquoi vous voudriez écrire du code c / c ++ pour quelque chose qui pourrait être géré de manière adéquate par d'autres méthodes)

Vous devez chiffrer les lecteurs. Toute autre option permettrait aux attaquants de simplement connecter le lecteur à un autre ordinateur et d'extraire le contenu.

Vous ne devez pas implémenter le cryptage vous-même - il est préférable de compter sur le code révisé de quelqu'un d'autre. Je suggère TrueCrypt de crypter vos lecteurs.

Ensuite, vous voudrez peut-être mettre un crochet dans votre application pour demander le mot de passe lorsqu'il souhaite accéder aux données cryptées. Vous pouvez également installer TrueCrypt sur la machine et obliger l'utilisateur à connecter le disque lorsqu'il souhaite accéder aux données, en fonction de la méthode de travail précise utilisée.

Soyez conscient. Tout ce qui implique un travail au noyau, si vous n’êtes pas déjà expérimenté dans ce domaine, a un temps de développement mesuré en années.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top