반응형
에버노트 정리하다가 끄적여논거 대충 써서 올려본다.
파일에 symbol이 존재하는 경우 디버깅시 매우 행복함을 느낄 수 있다.
(gdb) x/x &변수명
같이 사용가능.
메모리 볼 때, vmmap 처럼
(gdb) info proc mappings
비슷하게 바이너리에 존재하는 함수 목록을 보고 싶으면 `info functions`을 이용해서 확인할 수도 있다.
gdb.attach(r, 'b* 0x40~') 꼴로 중간에 gdb 디버깅을 사용하면, 브포를 특정 함수에 걸었을 때, 해당 함수 중간에 브포가 걸릴 수 있기 때문에 그럴 경우 finish를 사용해서 함수를 모두 실행시키면 깔끔하다.
(gdb) finish
일반 gdb에서 heap 보려고 할 때, p main_arena.* 로 확인 가능.
(gdb) p main_arena.fastbinsY # fastbin
(gdb p main_arena.top # top chunk
(gdb) p main_arena.bins # bins
위의 데이터뿐만 아니라, 다음 malloc_state struct 등을 확인할 수 있다.
멈췄을 때 자동으로 스크립트를 실행하게 하는 방법이 있음. gdb 상에서 다음과 같이 등록
(gdb) b* main+241
(gdb) define hook-stop
> x/10gx $rip
> x/10gx $rsp
> end
(gdb) c
반응형
'Information* > 알면도움됨' 카테고리의 다른 글
Bruteforce (0) | 2020.08.31 |
---|---|
메모리 배열 조정하기 (0) | 2020.07.17 |
linux include 파일 찾기 (0) | 2020.06.26 |
gif 편집할 때 (0) | 2020.06.24 |
nasm을 이용한 asm 코딩 (0) | 2020.05.26 |