22018, 1/1101 회원가입  로그인  
   benkim
   pass.exe (262.9 KB), Download : 214     [오른쪽 버튼 눌러 다운 받기]
   버퍼 오버플로우 질문

http://www.hackerschool.org/HS_Boards/zboard.php?AllArticle=true&no=30788 [복사]


안녕하세요!!
제가 이코드를 오버플로우를 하려는데 안되네요 ㅠㅠ

int main(int argc, char *argv[]) {
        
        char pass[20];
        
        printf("enter a password");
        gets(pass);
        
        if(!strcmp(pass,"hacker"))
        {
                printf("congraturation!!!");
                system("pause");
        }
        else
        {
                printf("failed");
        }
                
        return 0;
}

제가 이프로그램을 오버 플로우로 만들면 congraturation이라는 문자가 나와야 하는데 게속 failed라고 나오네요. ㅠㅠ

  Hit : 10707     Date : 2013/04/23 10:43



    
cd80 오버플로우가 일어나는 프로그램은 맞지만 단순히 오버플로우를 일으킨다고해서 congratulation이 나오는 프로그램은 아닙니다
리턴어드레스를 조작해 printf("congraturation!!!"); 부분으로 리턴하시거나
만약 튜토리얼에서 나온 소스라면 다시한번 튜토리얼을 읽어보시는게 좋을것같습니다
2013/04/24  
benkim 감사합니다 ^^! 2013/04/24