Ich habe kürzlich mit Hilfe von OllyDbg 2.01 und crackmes ausführbaren Dateien angefangen, Cracking und Reverse-Engineering.OllyDbg 2.01 - Einen Befehl finden, der auf eine statische Zeichenkette referenziert
So in diesem speziellen Crackme, ich durch die Befehle wurde Scrollen und ein PUSH mit einem ASCII-String "& File" zur Kenntnis genommen (es ist ein Menü string):
Also dachte ich: „Wenn Ich kann diese Information durch einfaches Scrollen finden, sicherlich muss es einen automatischen Weg geben, einen Befehl zu finden, der auf eine bestimmte Zeichenkette verweist ".
Also habe ich an die Spitze des Programms erhalten, STRG + B treffen und für ASCII „Datei“ suchen hoffentlich wieder zu finden:
Nach dem Drücken auf OK, wird OllyDbg nicht finden die früher PUSH. Stattdessen habe ich diese:
Mmmh .. Okay, das ist nicht das, was ich erwartet hatte, aber mal sehen, was da drin ist. so Rechtsklick I => in Dump Folgen, und ich bekomme diese:
Also ja, wir unsere Zeichenfolge in der Müllhalde gefunden. Allerdings habe ich meinen ursprünglichen PUSH immer noch nicht gefunden. Sie können auch feststellen, dass die Adresse der Zeichenfolge die gleiche ist wie das Argument von PUSH (40512C).
Als letzten Versuch, klicken Sie mit der rechten Maustaste auf den Buchstaben unter der Adresse 40512C, wählen Sie "Find References", aber nein: keine Referenz gefunden.
Also TL; DR-Frage: Wie finde ich automatisch einen Befehl, der auf einen String verweist? Weil ich natürlich nicht den gesamten Befehlsstapel scrollen werde, wenn ich eine Zeichenfolge finden will.
PS: Die Zeichenfolge wird auch nicht in "referenzierten Textzeichenfolgen" angezeigt.
Vielen Dank im Voraus für Ihre Hilfe.
EDIT: Okay, also habe ich eine Lösung gefunden. Ich suchte den Code für "2C 51 40 00", der die Adresse rückwärts ist, und ich fand meinen PUSH wieder. Es ist ein bisschen hacky, jeder mit einer effizienteren Lösung ist willkommen zu teilen.
ich Strg + R versucht, wie in meinem Beitrag (Rechtsklick auf das erste Byte und die Auswahl von „finden Referenzen“) angegeben, aber es brachte nicht irgendein Ergebnis. Über Speicher Breakpoints: yeah Ich habe sie vor kurzem entdeckt und sie sind fantastisch :). danke für den Tipp über die Reverse Engineering Subsite, ich werde es überprüfen. – Ely