해킹/시스템
[bof 원정대] skeleton -> golem (stack destroyer)
jmkim87
2012. 3. 22. 14:08
728x90
반응형
다음 문제 소스입니다.
[그림 1] golem.c
소스분석
1. buffer의 크기 40
2. 인자값은 적어도 하나 이상
3. 첫번째 인자값의 48번째값은 \xbf
4. 버퍼의 리턴값을 제외한 버퍼부터 끝까지 초기화
문제를 풀 과정입니다.
1. shared library 만들고 환경변수 등록하기
[그림 2] 임의의 소스 만든후 shared library로 컴파일 후 LD_PRELOAD 환경변수에 등록
공유라이브러리를 만든 후에 LD_PRELOAD 환경변수에 등록을 하면 프로그램이 시작시 적재가 된다.
2. bof 공격
[그림 3] bof 공격
주소값은 buffer 주소보다 낮아야 하며 \x90값이 많이 넣었기 때문에 주소값을 딱 맞출 필요는 없습니다.
소스분석
1. buffer의 크기 40
2. 인자값은 적어도 하나 이상
3. 첫번째 인자값의 48번째값은 \xbf
4. 버퍼의 리턴값을 제외한 버퍼부터 끝까지 초기화
문제를 풀 과정입니다.
0. bash2
1. shared library 만들고 환경변수 등록하기
2. bof 공격
1. shared library 만들고 환경변수 등록하기
공유라이브러리를 만든 후에 LD_PRELOAD 환경변수에 등록을 하면 프로그램이 시작시 적재가 된다.
2. bof 공격
주소값은 buffer 주소보다 낮아야 하며 \x90값이 많이 넣었기 때문에 주소값을 딱 맞출 필요는 없습니다.
반응형