Hyperpwn ist ein Hyper-Plugin zur Verbesserung der Darstellung beim Debuggen mit GDB.
Hyperpwn benötigt GEF, pwndbg oder peda, um als Backend in GDB geladen zu werden. Hyperpwn verarbeitet seine Kontextdaten, teilt sie auf verschiedene Fenster auf, um eine klarere Darstellung zu erhalten, und kann frühere Zustände problemlos wiedergeben.
Hyperpwn kann unter Windows, Linux und macOS verwendet werden.
Verwenden Sie Hyperpwn für GEF. Thema: hyper-chesterisch:
Verwenden Sie hyperpwn zusammen mit hyper-pane auf pwndbg. Thema: Hyper-Material-Thema:
Wenn Sie hyperpwn zusammen mit anderen Tools wie pwntools und VS Code verwenden möchten, können Sie sich dieses Tutorial ansehen
Zunächst müssen Sie die neueste Version von Hyper auf Ihrem Computer installieren.
Hyperpwn setzt auf Hyperinator. Sie müssen sowohl hyperinator
als auch hyperpwn
-Plugins installieren, um Hyperpwn verwenden zu können.
Sie können sie über die Befehlszeile installieren:
$ hyper i hyperinator $ hyper i hyperpwn
Oder bearbeiten Sie ~/.hyper.js
manuell und fügen Sie sie zu Plugins hinzu:
plugins: [ "hyperinator", "hyperpwn" ],
Führen Sie einfach gdb
im Hyper-Terminal aus.
Wenn das Backend geladen ist, erstellt hyperpwn automatisch eine Konfigurationsdatei in ~/.hyperinator
, lädt sie und verarbeitet die Kontextdaten.
Sie können die Konfigurationsdatei bearbeiten, um das Layout und die anzuzeigenden Teile zu ändern.
Schritt: F7
Weiter: F8
Vorherigen Status anzeigen: ctrl+shift+pageup
nach oben
Nächsten Status anzeigen: ctrl+shift+pagedown
module.exports = { config: {// andere Konfigurationen...hyperpwn: { Hotkeys: {prev: 'ctrl+shift+pageup',next: 'ctrl+shift+pagedown',cmd: { stepi: 'f7', nexti: 'f8' } }, autoClean: false, autoLayout: true, showHeaders: true, headerStyle: {position: 'absolute',top: 0,right: 0,fontSize: '10px' }} } //...};
Wenn Sie Hyperpwn auf Peda verwenden möchten, verwenden Sie bitte meinen Peda-Fork oder Peda-Arm.
Stellen Sie sicher, dass Sie die Anzeige der legend
im Backend aktiviert haben (dies ist das Standardverhalten).
Sie können versuchen, Konfigurationen wie context.nb_lines_code
, context.nb_lines_code_prev
in GEF oder context-code-lines
in pwndbg zu ändern, um eine bessere Anzeige zu erhalten.