본문 바로가기

System Hacking

[드림핵] basic_exploitation_001 풀이 - 티스토리

 

32비트 환경이다

 

 

다른 보호기법들은 아직 안 배워서 잘 모르겠다 (찾아보니까 NX는 쉘코드를 실행 못하게 하는 보호기법인듯)

 

 

 

 

문제 코드이다

 

 

buf를 gets함수로 입력 받는 부분에서 BOF가 발생할 수 있기 때문에 이를 이용해서 read_flag함수의 주소로 덮어 씌우면 된다

 

 

필요한 정보 buf위치, read_flag 주소값

 

buf위치 : ebp-0x80

 

read_flag 주소값 : 0x080485b9

 

 

페이로드

: "A" * 132 + "read_flag주소값"

 

 

 

 

 

 

read_flag도 payload변수에 더해서 전달하려하면 바이트값이라 오류 나는데 원래 안되는건가.. 다른 분들 잘 하시던데

 

 

 

 

 

* alarm함수는 해당 시간이 지나면 SIGALRM 신호를 발생시키면서 프로그램에 전달한다

 

  signal함수는 지정 신호를 감지하면 원하는 동작을 하는 함수를 실행시킨다

 


basic_exploitation_000 보다 쉬워서 바로 풀었다