시스템

·System Hacking
Q. 어떤 웹 서버에 공개된 프로그램 assignment는 buffer overflow 공격에 취약한 것으로 알려져 있다.해당 프로그램을 다운로드 후 분석하여 print_password() 함수를 호출하고 비밀번호를 획득하라! 일단 해당 프로그램을 다운로드 후 다음과 같이 실행해보았다. A를 5번 입력하니 위와 같이 그대로 입력값을 출력해주는 프로그램인 것 같은데,이번엔 A를 많이 입력하니까 위와 같이 core dumped가 나오면서 버퍼 오버플로우가 발생한 것을 볼 수 있다.참고로 BOF 취약점을 분석할 때 주요 관심사는 "버퍼의 크기"와 "외부 입력"이다. 이제 gdb를 통해 어셈블리 코드를 확인해보도록 하자. 코드 분석 우선 목표로 하는 print_password 함수의 시작 주소값을 확보해놓음시작..
·System Hacking
다음 C프로그램은 그냥 stdin으로 입력된 값을 stdout으로 출력하는 간단한 echo 프로그램이다.그러나 이 프로그램에는 버퍼 오버플로우를 일으킬 수 있는 취약점이 존재한다. 코드를 수정하지 않고 해당 파일을 컴파일한 프로그램을 실행해서 do_something() 함수를 호출하는 것이 목표! #include #include #include void do_something(){ setreuid(0, 0); system("whoami"); printf("Congratulation!\n");}int main(){ int tmp = 0xFFFFFFFF; char buffer[20] = "AAAABBBBCCCCDDDDEEE"; fgets(buffer, 80, stdin); fputs(buffer, stdou..
여백 ::
'시스템' 태그의 글 목록