Ich benutze eine Ubuntu 14.04 Maschine mit binären Auswertungsübungen (lernen, wie man Pufferüberläufe verwendet, Shellcodes schreibt, usw.). Bisher konnte ich diese Programme, die ausschließlich in C geschrieben und mit gcc kompiliert wurden, über gdbserver ausführen und mit IDA Pro 6.8 remote verbinden.Ich kann keine Breakpoints in gdbserver über IDA setzen
Allerdings gibt es jetzt ein Programm, das ich versuche zu laufen und es nicht bricht, die in IDA gesetzt werden. Es gibt eine klare Kommunikation zwischen den beiden, und ich kann das Programm über IDA ausführen, aber es stoppt nicht an irgendwelchen Breakpoints, die ich gesetzt habe, einschließlich derjenigen, die im Ausführungsablauf des Programms definitiv getroffen wurden. Ich setze Haltepunkte auf Adressen, so dass nicht verfügbar Debugging-Informationen nicht der Grund sein kann. Es funktioniert auch einwandfrei, wenn ich es mit gdb debuggen. Ich dachte, es war, weil ich ASLR eingeschaltet hatte, aber als ich es wieder ausschaltete, funktionierte es immer noch nicht. Was könnte der Grund sein?
Das Programm wurde wie folgt aus (nur eine Datei) zusammengestellt:
gcc -gehen -fPIE -fno-stack-Schutz -o prog prog.c
Oder -ggdb, die Debugging-Informationen speziell für gdb generieren soll. – jforberg
Ich setze einen Haltepunkt auf eine Speicheradresse, es hat vorher auf Programmen gearbeitet, die nicht mit -g Flag kompiliert wurden. Siehe die Bearbeiten-PLZ. – duliba