Theme Layout

Boxed or Wide or Framed

Wide

Theme Translation

Display Featured Slider

Featured Slider Styles

Display Grid Slider

yes

Grid Slider Styles

Display Trending Posts

Display Author Bio

Display Instagram Footer

off

Dark or Light Style

Light
Powered by Blogger.

Wednesday, January 25, 2017

[Hacker School] FTZ Level13 ( Ver. Kor )





Level13

level13의 계정으로 접속한 후, hint를 확인해보면 다음과 같습니다.


attackme의 소스코드입니다. attackme는 setuid가 걸려있어 디버깅을 하는데 어려움이 있으므로, 이 코드를 이용해 파일을 만든 후, 그 파일을 분석하였습니다.


gdb를 이용하였습니다. 중요한 부분은 ebp-12 번째에 위치해 있는 값과 0x1234567을 비교한다는 것입니다. 이런 방식으로 BOF를 방어하는 방법을 스택가드( Stack Guard )라고 합니다. 우회하기 위해서는 ebp-12에 0x1234567의 값을 넣어주면 될 것 같습니다. main+79에 Bp를 걸고 좀더 상세하게 분석을 해보았습니다.

분석 결과, ebp-12 와 SFP 사이에는 8byte만큼의 Dummy가 존재함을 알 수 있습니다. RTL을 이용하여 우회하기 위해 system 함수의 주소, /bin/sh의 주소, libc의  ASLR 적용 여부를 확인하였습니다. 구하는 방법은 이미 level11에서 했기 때문에 생략하겠습니다. payload를 도식화해보면 다음과 같습니다.


Payload를 입력해보면, 다음과 같이 level14의 Shell이 실행됨을 알 수 있습니다.
my-pass를 이용하여 level14의 Password를 알 수 있습니다.


QuickEdit
Unknown
0 Comments
Share This Post :

You Might Also Like

No comments:

Post a Comment

Follow @SunriseSunsetBlog