Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 15/03/2013, à 12:07

ZarLate

[RESOLU] Afficher le contenu de la mémoire vive

Bonjour à toutes et tous,

Dans le cadre d'un projet informatique, je souhaiterais vérifier que mon programme est sûre.

Je m'explique, j'ai créé un système de chiffrement en C++ ressemblant à OpenSsl.
Afin de respecter des contraintes de sécurité, je me dois de vérifier qu'il est impossible
à un quelconque utilisateur de retrouver la clé de chiffrement utilisée (c'est surtout pour le
déchiffrement rsa). Car je me doute qu'il est possible durant l'exécution de mon programme
de retrouver la valeur de cette clé qui est contenue dans la mémoire vive (ou peut-être
ailleurs) de mon PC.

C'est là que je quémande votre aide, savez vous s'il existe des programmes sous ubuntu
qui permettent d'afficher le contenu de la mémoire vive ? Et cela au format d'un texte (le binaire
c'est pas ma tasse de thé) ?

Pour information j'ai déjà effectué un memdump, mais sans résultats compromettant pour mon application.

Merci d'avance pour l'aide que vous pourrez m'apporter !

Dernière modification par ZarLate (Le 15/03/2013, à 16:44)


Ne pas être pressé est la dynamique de création de microsoft

Hors ligne

#2 Le 15/03/2013, à 13:59

aglesia

Re : [RESOLU] Afficher le contenu de la mémoire vive

Il me semble que tu ne peux pas (théoriquement) car le système tue un programme dès qu'il essaie d'accéder à une variable qui ne lui appartient pas. Il le tue en envoyant un sigfault (erreur de segmentation dans ce cas).

Après, j'ai un ami qui m'a dit qu'il a vu sur internet un logiciel qui lit des variables RAM de jeux, et les modifie (ex : ajout de vies, modification du nombre de munitions, etc...), mais impossible de retrouver le nom...


L'erreur est humaine...
Si votre PC plante, c'est qu'il est humain :D

Hors ligne

#3 Le 15/03/2013, à 16:42

ZarLate

Re : [RESOLU] Afficher le contenu de la mémoire vive

aglesia tu es mon sauveur !

aglesia a écrit :

un logiciel qui lit des variables RAM de jeux, et les modifie

Ces quelques mots mon donnés la puce à l'oreille, et je suis tombé sur scanmem !

Du coup mon système de chiffrement il est pas encore au point ...

Merci.


Ne pas être pressé est la dynamique de création de microsoft

Hors ligne

#4 Le 15/03/2013, à 16:52

tiramiseb

Re : [RESOLU] Afficher le contenu de la mémoire vive

Sinon si tu veux un accès à la mémoire en direct, c'est dans le fichier /proc/kcore que ça se passe...

Hors ligne

#5 Le 15/03/2013, à 17:50

ZarLate

Re : [RESOLU] Afficher le contenu de la mémoire vive

merci tiramiseb,

mais ce n'est pas ce que fait memdump par hasard ?

De plus scanmem me permet de retrouver la zone mémoire où ma clé de déchiffrement
(et surtout dans le cadre du rsa) est placée en se basant sur la recherche de l'en-tête de la clé.

Bon ok, c'est a quelque chose près ça, si j'ai l'en-tête de clé je n'ai que la zone mémoire où se trouve cet en-tête
mais sachant que je suis capable de connaître la taille en octets d'une clé privée (un petit wc -c sur un fichier de
clé privée, à vérifier pour des tailles de 512, 1024 et 2048 bits).

Ainsi on peut dump la valeur de la zone mémoire à partir de l'adresse de départ de l'en-tête et selon la taille obtenu par wc.
Si le dernier octet ne vaut pas 00 (correspondant à '\0' pour les programmeurs) on peut tester avec une taille de clé plus grande.
Sinon on a la clé !

Dernière modification par ZarLate (Le 15/03/2013, à 17:51)


Ne pas être pressé est la dynamique de création de microsoft

Hors ligne

#6 Le 16/03/2013, à 09:19

serged

Re : [RESOLU] Afficher le contenu de la mémoire vive

tiramiseb a écrit :

Sinon si tu veux un accès à la mémoire en direct, c'est dans le fichier /proc/kcore que ça se passe...

... Mais il faut chercher... Surtout que kcore, dans un système 64 bits, il fait 128To..

$ ls -lh kcore
-r-------- 1 root root 128T mars  16 09:19 kcore

Dernière modification par serged (Le 16/03/2013, à 09:19)


LinuxMint Vera Cinnamon et d'autres machines en MATE, XFCE... 20.x , 21.x ou 19.x
Tour : Asus F2A55 / AMD A8-5600K APU 3,6GHz / RAM 16Go / Nvidia GeForce GT610 / LM21.1 Cinnamon
Portable : LDLC Mercure MH : Celeron N3450 /RAM 4Go / Intel HD graphics 500 i915 / biboot Win 10 (sur SSD) - LM21.1 MATE (sur HDD)

Hors ligne