2017-05-12 11 views
2

共有ライブラリをデバッグしています。 LinuxホストでASLRを有効にすると、バグが発生する可能性がありますが、ASLRが無効になっているとバグは消えます。ランダムなアドレスに共有ライブラリをロードするようにgdbに指示する

gdbで共有ライブラリをさらにデバッグします。しかし、共有されたライブラリを常に固定アドレスにロードしていることがわかったので、バグは消えました。

このgdbの機能を無効にする方法はありますか?

答えて

3

このgdbの機能を無効にする方法はありますか?

はい、プログラムを実行する前にset disable-randomization offとすることができます。開始実行変わらずの行動を残す

オフ

設定を無効に無作為化: gdb documentationのこの部分を参照してください。いくつかのバグは、特定の アドレスでプログラムがロードされた場合にのみ、醜いヘッドを後退させます。 GDBの下でプログラムを実行するときにバグが消えたら、デフォルトでGDBが のランダム化をGNU/Linuxなどのランダム化のアドレス で無効にしているので、 スタンドアロンプ​​ログラムのバグがあります。 set disable-randomization offを使用して、 にそのような難解なバグを再現させてください。

関連する問題