App - Système

mardi 3 mars 2020, 09:20  #1
App - Système PE32 - Stack buffer overflow basic
aelk
  • 10 posts

bonjour,

comment débugger le binaire sachant qu’il ne contient pas de symboles, j’essaye de placer un breakpoint avec gdb mais j’arrive pas.

merci

vendredi 20 mars 2020, 14:30  #2
App - Système PE32 - Stack buffer overflow basic
rakahanga
  • 1 posts

Moi perso, j’ai plutôt installé une vm windows, récupéré le binaire via scp et debuggé avec immunity debugger.
Une fois que tu as ta solution, il faut l’utiliser sur le wrapper.sh.

Bon courage,

dimanche 12 avril 2020, 19:28  #3
App - Système PE32 - Stack buffer overflow basic
truff
  • 3 posts

Salut Aelk,

je suis dessus moi aussi. Tu peux trouver l’addresse de main avec objdump sur le .obj :
$ objdump.exe -x -D ch72.obj | grep "<_main>"
00000020 <_main> :

C’est une adresse relative. Tu peux trouver le début de la section text avec le .exe :
objdump.exe -x -D ch72.exe | grep "<.text>"
00401000 <.text> :

Donc en principe main est à 0x00401020 et tu peux setter un break point avec : b *0x00401020

Le problème est que le gdb qui est fourni est un gdb 64 bits et qu’il part en vrille. Il faudrait gdb32.exe. Si un admin lis ce message, ce serait sympa d’installer gdb32.exe dans la jail. Merci :)

lundi 13 avril 2020, 01:34  #4
App - Système PE32 - Stack buffer overflow basic
Ech0
  • 328 posts

Bonjour,

Il n’est pas prévu d’installer gdb 32 bits sur la machine.
Par contre, vous avez cdb.exe :

C:/Program Files (x86)/Windows Kits/10/Debuggers/x86/cdb.exe
C:/Program Files (x86)/Windows Kits/10/Debuggers/x64/cdb.exe

Bon courage

mardi 14 avril 2020, 17:50  #5
App - Système PE32 - Stack buffer overflow basic
truff
  • 3 posts

Merci echo. Pour ma part, je suis habitué à gdb donc je travaille en local pour le moment.

mardi 14 avril 2020, 18:22  #6
App - Système PE32 - Stack buffer overflow basic
und3ath
  • 7 posts

On utilise les outils adaptés, c’est mieux, habitude ou pas . Debuggé un PE avec gdb n’a aucun sens.

vendredi 17 avril 2020, 23:54  #7
App - Système PE32 - Stack buffer overflow basic
alfost
  • 4 posts

je butte sur le même problème de débugger : gdb bof ici...
qd on se connecte, un message liste bien cdb dans les outils à disposition...
mais qd je fais cdb ou même cdb.exe... inconnu au bataillon !

samedi 18 avril 2020, 07:16  #8
App - Système PE32 - Stack buffer overflow basic
Ech0
  • 328 posts

Salut,

J’ai créé deux liens symboliques :

# ls -l /usr/bin/cdb32.exe /usr/bin/cdb64.exe
lrwxrwxrwx 1 root Administrators 69 Apr 18 07:13 /usr/bin/cdb32.exe -> /cygdrive/c/Program Files (x86)/Windows Kits/10/Debuggers/x86/cdb.exe
lrwxrwxrwx 1 root Administrators 69 Apr 18 07:12 /usr/bin/cdb64.exe -> /cygdrive/c/Program Files (x86)/Windows Kits/10/Debuggers/x64/cdb.exe

Tu peux donc utiliser cdb32.exe et cdb64.exe directement via le PATH.
Mais dans tous les cas, tu pouvais utiliser les full path que j’ai donné plus haut :

C:/Program Files (x86)/Windows Kits/10/Debuggers/x86/cdb.exe
C:/Program Files (x86)/Windows Kits/10/Debuggers/x64/cdb.exe
samedi 18 avril 2020, 18:05  #9
App - Système PE32 - Stack buffer overflow basic
alfost
  • 4 posts

merci
effectivement avec cdb c’est plus facile de manipuler le .exe !
et une fois qu’on a compris comment utiliser le wrapper.sh...
ça marche !!
 🙂