• [^] # Re: Accéder à la mémoire d'un processus

    Posté par . En réponse au journal Accéder à la mémoire d'un processus. Évalué à 1.

    Oui mais en l'occurence le fichier mem n'est pas ordinaire, il correspond à l'espace mémoire du processus. On va prendre par exemple celui de mon tcsh (/proc/self/maps):
    08048000-08089000 r-xp 00000000 03:01 104219 /bin/tcsh
    08089000-0808c000 rw-p 00041000 03:01 104219 /bin/tcsh
    0808c000-08146000 rwxp 00000000 00:00 0
    40000000-40015000 r-xp 00000000 03:01 61874 /lib/ld-2.3.2.so
    ...
    Donc, d'après ce que j'ai compris, on doit faire un lseek (08048000) pour pouvoir lire le début de la mémoire avec read()... et je cherche donc un moyen de le lire avec une commande accessible depuis un shell.
    -------
    Bon en fait je viens à l'instant de faire un petit essai avec dd qui a reussi :
    dd if=/proc/self/mem ibs=1 skip=134512640 count=10

    (avec l'offset skip correspondant à une adresse de maps en décimal) ça marche mais c'est assez relou à utiliser... le problème restant est que dd ne peut lire que son propre espace mémoire... comment lire celui d'un autre process?