참고자료 : JSec님 블로그(blog.naver.com/yjw_sz/221889244689) 저번 (1)편에 이어서 32bit에서 FSB(Format String Bug)를 이해해보자. 시스템 해킹의 주된 목적은 shell을 획득하여 임의의 명령을 실행하는 것이다. 흔히 system함수에 인자를 /bin/sh로 주어서 쉘을 획득한다. system("bin/sh") 저 함수를 어떻게 이용하여 쉘을 획득할까? GOT를 overwrite하여 획득한다. 이를 위해 먼저 PLT와 GOT를 이해하여야 한다. 간단하게 설명하면 PLT는 코드고, GOT는 주소 값이 저장된 공간이다. 함수를 호출하면 PLT 코드가 실행되고 PLT 코드에서 GOT에 적힌 주소로 이동을 하는 것이다. 특정 함수의 GOT를 변경하면 해당 ..