Return Buf 시 필요 없는 값에 대해서 어떻게 처리 되는 것인지 궁금합니다.

payload = sh.ljust(buf2cnry, b"A") + p64(cnry) + b"B"*0x8 + p64(buf) 로 쉘 값을 buf에 넣고 다시 ret을 buf로 할 때 sh.ljust(buf2cnry, b"A") 에서 필요 없는 A는 어떻게 처리하기에 쉘 접근이 가능한지 궁금합니다.

#pwnable
작성자 정보
답변 2
avatar
wyv3rn
무플 방지 위원회장

ljust에 대해서 검색해보시면 한방에 이해되실겁니다 ㅎㅎ
해당 길이만큼 공간을 A로 채워줍니다

2022.09.01. 16:16
avatar
wyv3rn
무플 방지 위원회장

약간 동문서답같은 느낌이 들어서 다시 답변을 답니다.

셀코드 이후의 값은 일단은 무시됩니다.

비유하자면 프로그램1 내부에서 프로그램2가 실행되었고 그 이후 코드는 프로그램 2 종료 후 1로 돌아오며 실행됩니다.

2022.09.01. 22:49
질문에 대한 답을 알고 계신가요?
지식을 나누고 포인트를 획득해보세요.
답변하고 포인트 받기