Ich zerlege gerade eine Mach-O-Datei (die ausführbare Datei läuft unter Mac OS X, um genau zu sein) in IDA Pro unter Windows. Ich habe eine Anweisung, die ich ändern möchte, aber es scheint nicht, dass IDA Pro allows you to do this. Also, ich habe versucht, mit otool auf OS X die Baugruppe zu entladen (was es gut geht). Nach dem Bearbeiten der Assembly in otool habe ich jedoch versucht, sie unter Verwendung von as <file name of modified otool -tV output>
wieder zusammenzusetzen. Dies begrüßt mich mit einer Reihe von Fehlern wie Junk character 43 (+)
. Was ist der einfachste Weg, um eine einzelne Anweisung in einer Mach-O-Binärdatei unter Mac OS X zu ändern?Assembly-Assembly unter Mac OS X bearbeiten
Antwort
Ich habe beide otool und otx verwendet, um verschiedene Binärdateien zu zerlegen, und ich habe den einfachsten Weg gefunden zu bearbeiten, sie ist es, herauszufinden, was die Montage des neuen Codes ich will, ist (nasm o.ä.), dann Verwenden Sie einfach einen Hex-Editor (ich bevorzuge Hex Fiend) für die Binärdatei.
Dies scheint eine schreckliche Lösung zu sein (obwohl sie für kleine Bearbeitungen tolerierbar ist), insbesondere wenn man bedenkt, dass x86 Anweisungen mit variabler Länge hat. Gibt es keine guten Werkzeuge zum Zerlegen und Zusammensetzen von Dateien unter OS X? – Mike
unfunnyunely gibt es keine Tools wie ollydbg auf OS X :( – knoopx
Ich benutze Synalize It!.
Sie können auch eine benutzerdefinierte Grammatik (Beispiel für PNG-Dateien, zeigt Header-Tags, etc ...) laden
- 1. Qt4Dotnet unter Mac OS X
- 2. Anwendungsaktualisierungen unter Mac OS X
- 3. Git core.editor unter Mac OS X
- 4. /proc/uptime unter Mac OS X
- 5. Statische Verbindung wxHaskell unter Mac OS X
- 6. Installieren Sie CLSQL unter Mac OS X
- 7. AVFoundation + GC unter Mac OS X
- 8. pygettext.py und msgfmt.py unter Mac OS X
- 9. Windows Mobile Entwicklung Unter Mac OS X
- 10. Einzigartige Hardware-ID unter Mac OS X
- 11. Sprachcodierung in Emacs unter Mac OS X
- 12. Applet 1.6 unter Mac OS X
- 13. Java System.getProperty ("user.dir") unter Mac OS X
- 14. Testen Sie IE6 unter Mac OS X
- 15. Aktualisieren Brew Fehler unter Mac OS X
- 16. Java Drag & Drop unter Mac OS X
- 17. Programmgesteuert beim Start unter Mac OS X?
- 18. Vim Insert-Modus unter Mac OS X
- 19. Java Swing GUIs unter Mac OS X
- 20. Aktualisieren von Ruby unter Mac OS X
- 21. Cocoa-Anwendungsarchitektur unter Mac OS X
- 22. OpenCV-Installation unter Mac OS X
- 23. OpenMP unter Mac OS X 10.11 installieren
- 24. auf Mac OS X
- 25. Tensorflow ImportError unter OS X
- 26. Visual Source Safe auf Mac OS X
- 27. TFS auf Mac OS X
- 28. Bearbeiten von Ressourcen forks in der Befehlszeile unter Mac OS X
- 29. InputManager unter OS X
- 30. installation openssl unter OS X
+1 Ich bin zu neugierig. –