힌트 진행과정 - i의 주소에 0x1234567을 넣어주고, 처리를 해야한다. 총 0x418(1048)할당을 하게되는데, i의 위치는 [ebp-12] 우리가 덮어써야할 부분은 총 1052이다. 1036을 아무값으로 채우고, 0x1234567을 넣고 나머지 12바이트를 아무거나 채우고, 환경변수의 주소로 채운다. # REF NULL
힌트 진행과정 - 우선 버퍼를 계산한다. 총 0x28(40바이트)만큼 할당 되었다. buf와 buf2를 20만큼 할당을 시도 했는데 40이 된 것은 20이 더미란 얘기다. - main+65~69부분을 보면 [ebp-24]의 주소를 eax에 넣고 strncmp하는 게 보이는데, go랑 비교하는 것이다. 즉 40 - 24인 16바이트의 값을 넣은 뒤 go를 넣으면 해결할 수 있다는 것이다. # REF NULL
힌트 진행과정 - /etc/xinetd.d/ 폴더에 가보니 backdoor파일이 disable=no상태고, 서비스 명이 finger인 것을 보고, 포트를 확인했다. 79번 포트였고, 열려있는 것도 확인을 했다. 그래서 /home/level4/tmp/backdoor에 my-pass를 읽어주는 쉘 스크립트를 작성 후 telnet으로 서비스 연결을 하여 비밀번호를 알아냈다. # REF NULL