Wargame 8

내 버퍼가 흘러 넘친다!!! Write-Up

1. 내 버퍼가 흘러 넘친다!!! 1.1 파일 분석 - file 명령어로 prob1 파일의 종류를 확인해보니 32bit ELF 파일임 - prob1 파일을 실행해보니 Name, input을 2번에 걸쳐 값을 입력받음 - ida로 코드를 디컴파일하여 확인해보니 2가지 포인트를 알 수 있었음 point 1. read함수를 통해 name에 0x32(50bytes)만큼 값을 입력받을 수 있음 point 2. get함수를 통해 s에 20bytes보다 많은 값을 입력받을 수 있음 - ida에서 Name 변수를 확인해보니 bss영역에 위치한 것으로 보아 전역변수임을 알 수 있음. 이를 통해 ASLR이 적용되어 있는 스택영역이 아닌 bss영역에 shellcode를 삽입하여 RTS(Return To Shellcode) ..

Wargame/HackCTF 2021.09.16

x64 Buffer Overflow Write-Up

1. x64 Buffer Overflow 1.1 파일 분석 - file 명령어로 64bof_basic2 파일의 종류를 확인해보니 64bit ELF 파일임 - 64bof_basic 파일을 실행해보니 값을 입력하면 'hello + 입력한 값'이 출력됨 - ida에서 함수목록을 확인해보니 callMeMaybe 함수가 존재하는 걸 확인할 수 있음 - callMeMaybe 함수를 ida로 확인해보니 /bin/bash를 실행해주는 함수이며 callMeMaybe 함수를 실행시키는 것이 이 문제의 목표임 - main 함수에서 문자형으로 268bytes를 s함수에 할당해주고 v5변수는 int형으로 선언하는 코드가 보임 1.2 poc - 5번째 줄 : remote로 워게임 서버에 접속하기 위한 코드 - 7번째 줄 : 해당..

Wargame/HackCTF 2021.09.08

Basic_BOF#2 Write-Up

1. Basic_BOF#2 1.1 파일 분석 - file 명령어로 bof_basic2 파일의 종류를 확인해보니 32bit ELF 파일임 - bof_basic2 파일을 실행해보니 어떤 값을 입력하던 하아아아아아아아아앙 을 출력함 - ida에서 함수목록을 확인해보니 shell 함수가 존재하는 걸 확인할 수 있음 - shell 함수를 ida로 확인해보니 /bin/bash를 실행해주는 함수이며 shell 함수를 실행시키는 것이 이 문제의 목표임 - main 함수에서 문자형으로 128bytes를 s함수에 할당해주었지만 fgets함수에서 128을 넘어선 133의 크기를 입력할 수 있는 버퍼오버플로우 취약점으로 보이는 코드가 존재함 1.2 poc - 5번째 줄 : remote로 워게임 서버에 접속하기 위한 코드 - ..

Wargame/HackCTF 2021.09.08