argv[1]인자에서 ret주소 두개를 맞춰줘야겠다.

 

인자를 엄청 많이 넣어주니 argv[2]의 주소가 바뀌었다.

가볍게 해결~

'war game > LOB' 카테고리의 다른 글

LOB-level11(stack destroyer)  (0) 2019.06.30
LOB-level10(argv hunter)  (0) 2019.06.30
LOB-level8(check argc)  (0) 2019.06.28
LOB-level7(check argv[0])  (0) 2019.06.28
LOB-level6(check length of argv[1] + egghunter + bufferhunter)  (0) 2019.06.28

이번에는 받는 인자가 두개로 제한되어있고 거기에 argv[1]까지 제한해준다. 다만 argv[0]의 길이는 검사하지 않음으로, 아무래도 심볼릭링크에 쉘코드를 삽입하고 권한을 따줘야 할듯 싶다...

안되서 찾아보니 \x2f가 '/'여서 안된다더라

쉘코드를 다시 만들어야겠지만..귀찮음으로...

\xeb\x11\x5e\x31\xc9\xb1\x32\x80\x6c\x0e\xff\x01\x80\xe9\x01\x75\xf6\xeb\x05\xe8\xea\xff\xff\xff\x32\xc1\x51\x69\x30\x30\x74\x69\x69\x30\x63\x6a\x6f\x8a\xe4\x51\x54\x8a\xe2\x9a\xb1\x0c\xce\x81
https://d4m0n.tistory.com/62

 

[Linux/x86] Shellcode without 0x2f

Shellcode without 0x2f 이번 글에서는 0x2f가 없는 쉘코드를 만들어 볼 것이다. 0x2f는 문자로 '/'이며 이 문자는 리눅스에서 경로를 구분할 때 쓰인다. 간혹 argv[0]. 즉, 파일 이름에 쉘코드를 사용해야 할 때..

d4m0n.tistory.com

해당 블로그를 참고해 다음에 만들어 보자.

주소를 찾아주고.

생각보다 쉽게 땄다.

'war game > LOB' 카테고리의 다른 글

LOB-level10(argv hunter)  (0) 2019.06.30
LOB-level9(check 0xbfff)  (0) 2019.06.29
LOB-level7(check argv[0])  (0) 2019.06.28
LOB-level6(check length of argv[1] + egghunter + bufferhunter)  (0) 2019.06.28
LOB-level5(egghunter + bufferhunter)  (0) 2019.06.24

문제를 보면 level6과 유사하지만 argv[0]의 길이가 77이 되어야 한다. 심볼릭링크를 이용하면 되겠다.

심볼릭링크 명령어는 ln -s [원본] [링크명] 이다.

분석하기 위해 파일을 만들고

두번째 인자의 주소도 알아낸다.

해결했다.

'war game > LOB' 카테고리의 다른 글

LOB-level9(check 0xbfff)  (0) 2019.06.29
LOB-level8(check argc)  (0) 2019.06.28
LOB-level6(check length of argv[1] + egghunter + bufferhunter)  (0) 2019.06.28
LOB-level5(egghunter + bufferhunter)  (0) 2019.06.24
LOB-level4(egghunter)  (0) 2019.06.13

+ Recent posts