Gate
-
[LOB] gate > gremlinWargame/Lord of Buffer Overflow 2021. 5. 22. 17:35
[LOB] gate > gremlin 주어진 c코드를 보면 strcpy(buffer, argv[1])로 argv[1]을 buffer로 복사하는데 이 과정에서 strcpy() 함수가 복사하는 문자열 길이 검사를 하지않아 Buffer Overflow 취약점이 발생한다. buffer에 쉘 코드를 넣고 ret를 쉘 코드 주소로 변조시켜 공격하면 될 것 같다. gdb로 buffer의 위치를 구해보자. 권한 문제로 복사해서 진행 intel 문법으로 바꾸어 확인하였다. 해당 부분을 보면 buffer의 크기만큼 256byte의 공간이 스택에 생긴 것을 확인할 수 있다. buffer [256] | sfp [4] | ret [4] buffer의 위치는 0xbffff908이다. 이제 쉘 코드를 넣고 ret에 0xbffff9..