콘텐츠로 건너뛰기

rev-basic-4

rev-basic-4 문제도 마찬가지로 문자열을 역참조해서 문자열을 암호화시키는 함수를 찾을 수 있다. 위 링크 참조하기 바람. 암호화시키는 함수만 들여다보면 아래와 같다. 받은 문자열 중 0번째 문자에… 더 보기 »rev-basic-4

rev-basic-3

이번 문제는 입력값이 FLAG가 되는 문제이다. 아무 문자열이나 입력하면 Wrong을 반환하는데,“Wrong” 문자열을 역참조하면 FUN_140001120 함수에서 사용되는걸 알 수 있다. 문자열에서 Correct가 출력되기 위해서는 FUN_140001000 함수가… 더 보기 »rev-basic-3

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