Mémoire partagée sécurisé ou pas ?

Signaler
Messages postés
223
Date d'inscription
mercredi 13 juillet 2005
Statut
Membre
Dernière intervention
8 août 2011
-
Messages postés
223
Date d'inscription
mercredi 13 juillet 2005
Statut
Membre
Dernière intervention
8 août 2011
-
Bonjour,

J'utilise la fonction CreateFileMapping pour partager des variables entre différentes applications, pour accéder aux variables de la mémoire partagée j'utilise la fonction suivante:
OpenFileMapping(FILE_MAP_ALL_ACCESS, FALSE, "nom de la mémoire");

L'accès à la mémoire partagée se faisant à l'aide de son nom, je voulais savoir si c'est possible d'y accéder sans en connaitre le nom, en d'autre terme est ce que mes variables sont protégées dans cette mémoire si j'utilise un nom complexe ?

Merci .

7 réponses

Messages postés
223
Date d'inscription
mercredi 13 juillet 2005
Statut
Membre
Dernière intervention
8 août 2011

[auteurdetail.aspx?ID=39449 BruNews] t'est la ?
Messages postés
223
Date d'inscription
mercredi 13 juillet 2005
Statut
Membre
Dernière intervention
8 août 2011

BRUNEWSSSSSSSSSSSSSSSSSSSSSS !!!!!!!!!!!!!!!!!!!!!
AU SECOURRRRR !!!
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
7
Poste un nouveau message

_____________________________________
Un éditeur de ressources gratuit pour Windows
Messages postés
223
Date d'inscription
mercredi 13 juillet 2005
Statut
Membre
Dernière intervention
8 août 2011

Pourquoi ? ta pas la réponse vecchio?
Messages postés
6535
Date d'inscription
lundi 16 décembre 2002
Statut
Modérateur
Dernière intervention
22 août 2010
7
Non, je ne sais pas. A mon avis c'est pas super comme sécurité. Je choisirais plutot d'écrire des données cryptées.
Si tu veux avoir plus de chances qu'on te réponde, poste un nouveau message

_____________________________________
Un éditeur de ressources gratuit pour Windows
Messages postés
18
Date d'inscription
dimanche 19 septembre 2004
Statut
Membre
Dernière intervention
19 mars 2009

Bonjour,

La zone de mémoire partagée obtenu via CreateFileMapping/OpenFileMapping n'est pas cryptée. Le nom passé à OpenFileMapping (en 3ième paramètre) est le nom de la zone de mémoire portant le même nom créée par CreateFileMapping. La complexité du nom ne change rien au contenu des données présentent dans la zone de mémoire. De même tu ne peut pas accéder à cette zone de données sans son nom car c'est grâce à lui que Windows peu retrouver la bonne zone de mémoire (enfin il serai possible d'utiliser une zone de mémoire non-nommée et de passer le handle retourné par CreateFileMapping aux applications intéressées [plus compliqué et je n'ai pas testé]). Sinon, comme à dit vecchio56 tu peux toi même crypter le contenu de la zone de mémoire partagée rendant ainsi "illisible" le contenue de la zone aux autres applications. Après ca dépends de la sensibilité de tes données mais normalement aucune autre application de connaissant le nom de ta zone de données, personne ne viendra les lire ou les modifier.
Messages postés
223
Date d'inscription
mercredi 13 juillet 2005
Statut
Membre
Dernière intervention
8 août 2011

Ok merci bien vecchio56 et guillaume_00, en effet c'est une bonne idée de crypter les données dans la mémoire.
"La complexité du nom ne change rien au contenu des données présentent dans la zone de mémoire."
En fait quand je parlais de mettre un nom complex de mémoire partagée, je pensais au cas ou quelqu'un tenterai d'accèder au contenu par brut force en faisant un :
OpenFileMapping(FILE_MAP_ALL_ACCESS, FALSE, "nom de la mémoire");
En testant tous les ""nom de la mémoire" jusqu'à ce que la fonction renvoi un handle vers la mémoire.
En mettant une clé de 128 bits en guise de nom ça devrait suffire pour les protéger.