x64 Simple_size_BOF 풀이
char형에 크기 6D30(10진수로 27,952)인 배열 v4를 선언합니다. 그리고 s를 출력합니다. main함수 안에는 s가 선언되지 않은걸 보니 전역 변수로서 bss영역에 있을 것 같네요. 그리고 v4의 주소값을 출력해준 뒤에 v4를 입력받습니다. 이렇게만 봐서는 s가 무엇을 하는 변수인지 잘 모르겠으니 직접 실행파일을 실행시켜보겠습니다. s는 필요없는 변수였습니다. 이제 어떻게 문제를 풀지 생각해보겠습니다. 먼저 v4에 쉘코드를 집어넣고 그 뒤에 있는 buf 영역은 쓰레기 값으로 채우고, sfp(long long이니까 8byte)도 쓰레기 값으로 채워줍니다. 그 뒤에 있는 ret 부분에는 아까 printf에서 출력한 buf 주소를 가져다 넣으면 쉘코드가 실행될 것 같습니다. from pwn imp..
2021.07.13