off_by_one_000에서 반드시 쉘을 딸 수 밖에 없는 방법이 궁금합니다.
off_by_one_000을 풀기는 했지만, 버퍼를 전부 get_shell의 주소로 채워 풀었기 때문에 주소가 4byte라 1/4 확률로 공격에 성공합니다. 반대로 말하면 3/4 확률로 쉘을 얻지 못한다는 얘기인데, 이를 무조건 성공시키는 방법이 따로 있는지 궁금합니다.
#pwnable
#off_by_one_000
작성자 정보
답변
1
wyv3rn
무플 방지 위원회장
입력 받는 함수에서 마지막 1바이트가 항상 0으로 채워지기 때문에 버퍼를 가득 채우면 그 다음 1바이트가 0이 되며 이로인해 21바이트의 값을 쓸 수 있는 모양이 됩니다. 즉 age가 0이 됩니다.