environment

ftz

[ftz] level13

문제분석 & 풀이코드 분석1) i, buf[1024]를 선언2) setreuid()를 통해 level14의 권한으로 설정3) argv[1]을 통해 입력받은 값을 buf에 복사4) 만약, i의 값이 바뀔 경우 BOF로 간주하고 프로그램 강제종료 이전 문제와 다른점은 변수 i를 통해 BOF가 발생하는지 안하는지를 체크하고 있다는 점이다. 이것을 우회하기 위해 변수 i가 바뀌지 않는 선에서 페이로드를 만들어서 BOF를 진행해야 할 것 같다. attackme를 tmp 폴더로 복사하여 GDB로 디버깅했다. main 시작 후에 0x418 만큼 스택공간을 할당한다. 0x418 = 1048임으로 [buf 1024바이트] + [더미 24바이트]가 포함됐다는 것을 알 수 있다. 그러나 더미 24바이트안에는 변수 i의 공간..

keyme
'environment' 태그의 글 목록