Hyperpwn est un plugin Hyper pour améliorer l'affichage lors du débogage avec GDB.
Hyperpwn a besoin que GEF, pwndbg ou peda soit chargé dans GDB en tant que backend. Hyperpwn gère ses données contextuelles, les sépare en différentes fenêtres pour obtenir un affichage plus clair et peut facilement rejouer les états précédents.
Hyperpwn peut être utilisé sous Windows, Linux et macOS.
Utilisez hyperpwn sur GEF. Thème : hyper-chesterish :
Utilisez hyperpwn avec hyper-pane sur pwndbg. Thème : thème hyper-matériel :
Si vous souhaitez utiliser hyperpwn avec d'autres outils tels que pwntools et VS Code, vous pouvez consulter ce tutoriel
Tout d’abord, vous devez installer la dernière version d’Hyper sur votre ordinateur.
Hyperpwn s'appuie sur l'hyperinateur. Vous devez installer les plugins hyperinator
et hyperpwn
pour utiliser hyperpwn.
Vous pouvez les installer en ligne de commande :
$ hyper je hyperinateur $ hyper je hyperpwn
Ou éditez ~/.hyper.js
manuellement et ajoutez-les aux plugins :
plugins: [ "hyperinator", "hyperpwn" ],
Exécutez simplement gdb
dans Hyper terminal.
Si le backend est chargé, hyperpwn créera automatiquement un fichier de configuration dans ~/.hyperinator
, le chargera et le gérera avec les données de contexte.
Vous pouvez modifier le fichier de configuration pour modifier la disposition et les parties à afficher.
étape : F7
suivant: F8
afficher l'état précédent : ctrl+shift+pageup
afficher l'état suivant : ctrl+shift+pagedown
module.exports = { config : {// autres configurations...hyperpwn : { raccourcis clavier : {prev : 'ctrl+shift+pageup', suivant : 'ctrl+shift+pagedown', cmd : { stepi : 'f7', nexti : 'f8' } }, autoClean : false, autoLayout : true, showHeaders : true, headerStyle : {position : 'absolute',top : 0,right : 0,Taille de la police : '10px' }} } //...};
Si vous souhaitez utiliser hyperpwn sur peda, veuillez utiliser mon fork de peda ou peda-arm.
Assurez-vous d'avoir activé l'affichage de legend
dans le backend (ce qui est le comportement par défaut).
Vous pouvez essayer de modifier les configurations comme context.nb_lines_code
, context.nb_lines_code_prev
dans GEF ou context-code-lines
dans pwndbg, pour obtenir un meilleur affichage.