콘텐츠로 건너뛰기

pwnable.kr

uaf

UAF 취약점이란 메모리를 해제하고나서,이전의 똑같은 크기로 할당했던 메모리 영역을 할당해서 참조하는 취약점. 예제 코드: 결과: 보다시피 free(ptr)로 ptr을 메모리 할당을 해제 후, ptr2에 이전 ptr1과… 더 보기 »uaf

random

Daddy, teach me how to use random value in programming! ssh [email protected] -p2222 (pw:guest) 문제의 소스코드는 위와 같다.rand() 함수로 받은 random 값과 사용자로부터 받은 key… 더 보기 »random

bof

풀이 gets 함수 = 사용자로부터 입력받을 때 크기가 지정되있지 않아 버퍼플로우 발생하기 취약한 함수 func 함수를 call해서 진입하면 ebp는 main()의 base pointer를 가지게 된다. overflowme[32]… 더 보기 »bof

flag

x86-64 아키텍처로 컴파일된 리눅스에서 돌아가는 바이너리다. 실행하면 매개변수 받는거 상관없이 “I will malloc() and strcpy the flag there. take it.”를 출력하고 종료한다. 풀이 strings [옵션]… 더 보기 »flag

cmd1

풀이 PATH라는 실행 파일 탐색 경로인 환경변수에 있는 값을 /thankyouverymuch로 변경한다. 따라서 프로그램을 실행시킬때 절대 경로로 프로그램을 실행시켜야 될 것이다. filter 함수에 argv[1]이 flag, sh,… 더 보기 »cmd1

fd

풀이 매개변수에 넘기는 값이 하나라도 없으면, pass argv[1] a number 메시지를 출력한다. 일반적으로 매개변수 없이 바이너리만 실행했을 때 발생한다. atoi는 10진수 정수 문자열을 정수값으로 변환한다.… 더 보기 »fd