728x90
반응형
코드
코드의 동작을 살펴보면, 이전 문제들과 거의 유사하다. 하지만 here is changed! 라는 이름으로 argv[0]을 검사하는 부분이 추가되었다.
argv[0]은 시작하고자 하는 프로그램명이기 때문에, ./orge 로 실행할 경우는 길이가 6인 argv[0] 을 갖는다.
이를 77의 길이로 맞춘후 이전 문제와 같이 BOF 공격을 수행하면 된다.
공격
취약한점을 찾고 buffer over flow임을 알았고, 우회해야 되는 조건들을 알았으니 공격을 시작한다.
1. 77길이의 이름을 갖는 프로그램 생성하기
심볼릭 링크를 통해 77 길이를 갖는 argv[0] 조건을 맞추어 주도록 한다.
./ 까지 포함하기 때문에 75개의 c로 된 orge 심볼릭 링크 파일을 생성한다.
2. 이후의 공격
이후의 공격은 buffer의 크기를 확보하고, argv[1]에 dummy, argv[2]에 공격 코드를 적재하는 식으로 동일하게 구성한다.
결과
쉘 획득
728x90
반응형
'system' 카테고리의 다른 글
[LOB] vampire (0) | 2016.09.27 |
---|---|
[LOB] troll (0) | 2016.09.27 |
[LOB] darkelf (0) | 2016.09.27 |
[LOB] wolfman (0) | 2016.09.27 |
[LOB] orc (0) | 2016.09.27 |
댓글