일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 알고리즘
- OS
- JUCE라이브러리
- tour of go
- 프로그래밍
- vim-go
- JUCE library
- JUCE 튜토리얼
- 연결리스트
- C++
- 공룡책
- 자료구조
- BOJ
- C언어
- JUCE
- C++ gui 라이브러리
- 운영체제
- 백준
- a tour of go
- c++ heap
- Docker
- gui
- Nebula
- 코딩
- go
- 리듬게임
- C++ library
- C++ gui
- go channel
- LOB
Archives
- Today
- Total
CafeM0ca
level7 orge 본문
반응형
입장 ID:orge
입장 PW:timewalker
레벨이 올라갈때 마다 무언가 하나씩 추가되고 있다.
인자는 2개이어야하며 환경변수 사용불가,argv[1][47]은 \xbf, argv[1]의 길이는 48이하, 버퍼 0으로 초기화, argv[1]초기화 된다.
인자가 2개이고 argv[1]과 버퍼가 초기화 되므로 argv[0]을 사용하자.
복사본을 만들고 심볼릭 링크를 걸어주자.
main+317부분에 브레이크 포인트를 잡자.
스택 구조는 아래와 같다.
i 4 | buffer 40 | SFP 4 | RET 4
argv[0]의 주소를 0xbffff944에서 한번 더 들어가서 x/s 0xbffffa3f로 보면 argv[0]의 주소가 나온다.
주소를 구했으니 페이로드를 작성하자.
복사본의 심볼릭링킹된 파일을 삭제하고 원본파일에 심볼릭을 걸어준 후
nop이 있는 곳을 리턴주소로 작성하자.
paylaod
./심볼릭파일 `python -c 'print "A"*44+"&(argv[0] nop)"'`
다음 ID:troll
다음 PW:aspirin
반응형
'Hacking > LOB(Red Hat)' 카테고리의 다른 글
level9 vampire (0) | 2017.09.14 |
---|---|
level8 troll (0) | 2017.09.14 |
level6 darkelf (0) | 2017.09.14 |
level5 wolfman (0) | 2017.09.14 |
level4 orc (0) | 2017.09.14 |
Comments