Ye0ngJae

[pwnable.kr] BOF 문제풀이 본문

정보보안/워게임

[pwnable.kr] BOF 문제풀이

Ye0ngJae 2022. 9. 20. 01:26
728x90

문제

 

 

 

 

풀이

더보기

우선 문제를 까줬다. main 함수부터 살펴보면

0xdeadbeef를 인자로 func함수를 호출하는 것을 볼 수 있다. 이제는 func 함수를 까보자. 

위 어셈블리와 다른 정보를 섞어서 c언어로 바꾸어 보면 

void func(??){    
	char overflowme[32];    
	printf("overflow me : ");                                                           
	gets(overflowme);     
	if(key == 0xcafebabe){        
		system("/bin/sh");    
	}    
	else{        
		printf("Nah..");    
	}
}

 대충 이렇다고 볼 수 있다. 따라서 그냥 위 코드대로 익스 코드를 짜주면 될 것 같다. 

Flag 값이 정상적으로 확인된다. 

728x90