succubus
-
[LOB] succubus > nightmareWargame/Lord of Buffer Overflow 2021. 7. 16. 10:59
[LOB] succubus > nightmare PLT Return Address에 strcpy가 들어가야 한다. 그리고 27번 줄에서 Return Address다음 4Byte를 A로 바꾸는데 RTL Chaning을 방지하는 것 같다. Return Address에 strcpy를 넣고 이를 통해 A로 바뀐 4Byte를 원하는 주소로 바꿔서 RTL Chaning을 할 수 있다. gdb로 메인 함수를 살펴보면 이렇게 친절하게 strcpy의 PLT가 보인다. 0x8048410 이제 core dumped를 일으켜 strcpy의 Return Address의 주소와 쉘 코드가 들어갈 주소를 찾아보자 A가 들어간 0xbffffad0가 strcpy의 첫 번째 인자가 되고 두 번째 인자인 다음 4Byte(0xbffffad..
-
[LOB] zombie_assassin > succubusWargame/Lord of Buffer Overflow 2021. 7. 15. 17:53
[LOB] zombie_assassin > succubus 이번 문제는 소스 코드가 엄청 길다. 문제에 핵심은 11줄에 있는 MO 함수 속 system을 이용하는 것 같다. MO 함수를 실행시키기 위해서는 코드 속 함수들을 차례대로 실행해야 하는데 RTL Chaning을 이용하면 된다. 우선 함수들의 주소를 구하고 system("/bin/sh")을 위해 "/bin/sh"도 구해준다. 도개걸윷모 ㅋㅋ; 이제 주소는 찾았고 payload만 짜면 된다. 다시 보니까 라이브러리에 존재하는 "/bin/sh"을 못쓴다. (코드 잘 보자 ㅎㅎ) 이렇게 "/bin/sh"을 넣을 주소를 찾았다. (0xbffffa78) succubus / here to stay