x64
[Hack CTF – x64 Simple_size_BOF]
Hack CTF – x64 Simple_size_BOF Execute 먼저 문제 파일을 실행 하면 특정 address값을 leak해조고 문자열을 입력받는다. 실행시마다 leak되는 값이 달라지는 것을 확인 할 수 있다. Analyze 아무런 보호기법도 걸려있지 않은 것을 확인할 수 있다. 특히 nxbit가 풀려있으므로 shellcode를 올려서 shell을 얻을 수 있다. Main Line 6 : s변수의 내용을 puts함수를 통해 출력한다. Line 7: printf함수를 통해 v4변수의 address를 leak해준다. Line 8 : gets함수를 통해 v4변수에 입력을 받는다. gets함수는 입력값의 길이를 검증하지 않기 때문에 buffer overflow를 발생 시킬 수 있을 것이다. Solve ..
[Hack CTF – x64 Buffer Overflow]
Execute 문제로 주어진 64bof_basic파일을 실행시키면 입력을 받고 hello라는 문자열과 앞서 내가 입력한 문자열을 출력해준다. 이외에는 특별히 address를 leak하거나 다른 동작은 하지 않는다. 프로그램의 동작을 파악하기 위해 IDA를 통해 확인해보자. Analyze 보호기법을 확인해보면 nxbit만 활성화 되어있다. 따라서 이번문제는 shellcode를 직접 올리는것이 아니라 단순이 ret변조를 통해 프로그램 실행 흐름을 변경해서 shell을 얻는 문제인 것 같다는 생각을 하였다. Main Line 6 : scanf함수를 통해 문자열 형태로 s변수를 입력받는다. Line 7 :strlen함수로 앞서 입력한 문자열의 개수를 v5에 대입한다. Line 8 : hello문자열과 함께 s변..