golem
argv[1]의 41자를 복사해서 buffer에 넣는다. 이건 39자 A 이건 40자 A 이건 41자 A sfp가 바뀌게 되는다. 마지막에 lev ret에서 무슨 일이 이루어지나?? lev = mov ebp esp pop ebpret = pop eip esp에 바뀐 ebp가 들어가고,pop이 이루어지니 esp+4 byte가 된 다음,그 부분이 eip에 들어 가게 된다!!프로그램 실행의 흐름을 바꿀 수 있게 된 것이다. 0xbffffd74에 A가 들어가기 시작했으니,,0xbffffd70을 새로운 ebp에 넣으면,,, eip에 0xbffffd74가 들어가 쉘코드가 실행 되는것!!! 계속 바뀌는 빡치는 현상이 발생했지만,,brute forcing을 하니 뚫렸다! 기분 짱 좋다! 하핫,,,내 풀이는 이상한 풀이..
2016. 10. 30.