처음에 ida로 열게되면 함수 이름들이 sub~어쩌구로 되어있는데 메뉴를 이용해서 복구를 시키게 되면 main은 일케 된다. 먼저 setup함수를 보면 대부분의 문제들은 setvbuf를 통해 stdin과 stdout을 버퍼링을 하지 않도록 하게 두는데 왜냐하면 버퍼링을 사용하게 되면 heap영역에 할당을 받아서 버퍼링을 하기 때문에 방해요소가 될 수 있기 때문이다. 여기서 stdout만 버퍼링을 하는 것으로 보아 stdin을 이용해야 될 것이라고 추측할 수 있다. 다음은 input()함수로 입력을 받아서 숫자로 변환시켜준다. free부분인데 여기서 ptr에 있는것을 free하는데 ptr을 초기화하지 않는다. 그래서 취약점이 발생하게 된다. 여기가 중요한데 보통의 문제에서 give_up처럼 포기하는 메뉴가..