zj3t

email: euntaejang@gmail.com

Latest Posts

FTZ-level15(대략적인 틀)

By 오후 5:51 ,


------------------------------------------------<핵심>-------------------------------------------




쉬운 문제일 줄 알았는데 아주 2일동안 못풀게한 문제입니다.

이 방법이 왜 틀린지만 하루종일 고민했던것 같습니다. 그러다가 생각난 이유가 그동안 왜

우리가 문제를 풀면서 NOP 썰매 즉, 'python -c 'print "\x90"*100+"\xff\xff\xff\xbf"'` 에

서 왜 앞에 NOP을 100개 넣어 주었나 하는 이유였습니다.  우리가 정의한 환경변수에는 우

리가 입력한 값말고 다른 값도 들어가있습니다. 또한 파일의 이름, 디렉토리의 위치에 따라

주소가 환경변수가 위치하는 주소가 다릅니다(그에 대한 설명이 위의 그림중 <핵심>이라

고 설명된 사진 두장입니다.)  즉 100개를 넣음으로써 대략적인 위치를 찾아 우리가 집어넣

은 데이터를 실행하도록 한 것이 NOP썰매 방법이였습니다.

따라서 이러한 이유로 저 윗방법은 틀린 것 입니다.

따라서 문제를 풀기 위해서는 두가지 크게 두가지 방법이 있는 것 같습니다.

1.변수 buf에 0xdeadbeef를 넣고 buf의 주소를 check 포인터 변수에 넣어주는 것
(이 방법은 ASLR이 적용되있다면 할 수 있을지 없을지 모르겠습니다.)

2./home/level15/attackme에서 0xdeadbeef가 들어있는 환경변수의 정확한 주소를 찾아 그 주소를 넣어 공격하는 방법

아직 못해봤지만 가능하다면 두 가지 모두 포스팅 해보겠습니다.




You Might Also Like

0 개의 댓글