살려주세요
for ( i = 0; i <= 9; ++i )
*(&v17 + i - 500) = sub_401130(80LL);
sub_4010D0(v15);
sub_4010D0(v14);
sub_4010D0(v13);
이부분에 의해서 malloc이 10번 되고 그다음에 free가 3번 되서 index잘주면 free chunk에 접근 가능해져서 임의주소 쓰기 가능한것까지 확인했고 실제로 샘플 하나 가지고 로컬에서 셸도 띄웠습니다. 문제는 *(&v17 + i - 500) 이부분인데 여기서 숫자가 랜덤으로 바껴가지고 나옵니다. 결국 base64로 주는 바이너리에서 어떤 짓을 해서 저 숫자를 추출해서 최종적으로는 index를 구해내야 한다는건데 저 숫자를 어떻게 추출해야 할지를 모르겠습니다. 조금이라도 힌트 부탁드립니다...ㅠ
#pwnable
작성자 정보