Strings im Speicher suchen?



  • Hallo,
    wie kann ich nach bestimmten Strings im Speicher suchen?
    Und wie kann ich diese Strings dann einem Prozess zuordnen?



  • Hallo Martin.
    Es ist so das jeder Prozess einen eigenen Adressraum (virtuel) besitzt. Als erstes könntest du dir als erst einmal alle momentan laufenden Prozesse anzeigen lassen, gind irgendwie mit ProcessSnapshoot oder so. Nun könntest du dir entweder für alle Prozesse oder halt fuer den einen bestimmten Prozess über das Prozesshandle und den VirtualAlloc/Query Funkitonen und wie sie alle hiessen den Speicherbereich ausgeben lassen.
    Dann könntest du - dir wird auch nichts anderes übrig bleiben - mit Brute Force KPM oder sonst einer String-Such-Methode den Speicher Byte fuer Byte durchforsten.

    Schau dir einfach mal die Funktion hier an:
    VirtualAllocEx
    VirtualFree
    VirtualLock
    VirtualProtect
    VirtualQuery

    Sollte denk ich für deine Zwecke reichen.

    Lg Tobi


Anmelden zum Antworten