WAR GAME

H4CKING GAME - Qualification

StudyOwl 2022. 8. 10. 23:42

TEAMH4C의 H4CKING GAME 문제입니다

 

문제 이름부터 qualification으로 pwnable을 할 수 있는지 묻는 문제인거 같습니다

일단 주어진 문제에서 welcome이라는 실행파일을 주고 flag파일의 위치를 줘서 간단하게 flag파일을 얻어내면 되는거 같습니다

 

일단 프로그램을 먼저 실행해보면

이런식으로 Do you know pwnable? 이라는 글이 출력되고 밑에 입력할 수 있도록 나와있습니다

 

그래서 gdb를 통해 메인함수를 디스어셈블하면

간단히 puts를 통해 출력하고 read를 통해 입력을 받는데 버퍼 오버플로우에 대한 보호기법인 카나리가 적용되어 있지 않고 간단한 50점 문제인걸로 봐서 스택공간을 넘어서 ret주소 공간을 덮어씌우면 문제가 해결될거 같아보입니다

 

그래서 gdb peda의 shellcode generate 기능을 통해 쉘을 만들어 보겠습니다

그리고 pwntool을 통해 간단히 익스플로잇 코드를 짜주고 실행해보면

안된다.. payload에 rbp-30을 통해 만든 공간 30바이트와 ret주소로 가기전 ebp값 8바이트를 채워서 shlle을 보냈지만 

권한을 얻을 수 없었다.. 그래서 혹시 쉘을 실행시킬 수 있는 함수가 있나 찾아봤다

win이라는 함수가 있어서 한번 확인해봤다

인자로 0x400824라는 주소가있어서 확인해봤다

/bin/sh가 있는걸 보니 이 주소를 shellcode대신 ret주소에 덮어주면 될거 같다

win함수의 주소를 shellcode대신 바이트로 변경해서 넣어줬다

해결이 되었당

TEAMH4C 규정상 전체적인 exploit코드는 공개하지 않겠습니다 

'WAR GAME' 카테고리의 다른 글

[Dreamhack] xss-2  (0) 2023.03.30
[Dreamhack] xss-1  (0) 2023.03.30
[Dreamhack] cookie  (0) 2023.03.30
[Dreamhack] session-basic  (0) 2023.03.29
HACKTHEBOX - Meow ( STARTING POINT )  (0) 2023.03.06