728x90
반응형
* QEMU
보통 vmware로 제공되는데, phoenix의 경우 QEMU로 실행되기 때문에 처음 접하면 초기 셋업이 다소 생소하다.
1. linux
우선 터미널에서 qemu 설치한다.
sudo apt update
sudo apt install qemu
sudo apt install qemu-system
아래 site에서 이미지를 다운 받고
Downloads :: Andrew Griffiths' Exploit Education
압축을 풀어주고, 실행하면 된다.
tar xJf exploit-education-phoenix-amd64-v1.0.0-alpha-3.tar.xz
cd exploit-education-phoenix-amd64/
./boot-exploit-education-phoenix-amd64.sh
이후 부터는 아래와 같이 ssh로 접속하면 된다.
ssh -p2222 user@localhost
2. windows
우선 동일하게 windows용 QEMU를 다운받아 설치해두고 ps1 확장자의 파일을 생성하자.
예를 들면 phoenix.ps1 과 같은 식이다.
이후 메모장 등으로 열어 아래를 붙여넣는다.
\Program` Files\qemu\qemu-system-x86_64.exe `
-kernel vmlinuz-4.9.0-8-amd64 `
-initrd initrd.img-4.9.0-8-amd64 `
-append "root=/dev/vda1" `
-m 1024M `
-netdev user,id=unet,hostfwd=tcp:127.0.0.1:2222-:22 `
-device virtio-net,netdev=unet `
-drive file=exploit-education-phoenix-amd64.qcow2,if=virtio,format=qcow2,index=0
만일 qemu 설치 폴더가 다르다면 위의 경로만 바꿔주면 된다.
이후 실행을 위해서는 phoenix.ps1 파일을 오른쪽 클릭 -> "PowerShell에서 실행"을 선택하면 된다.
접속은 별도 터미널을 사용하던지, powershell을 사용하던지 취향껏.
* gef error
초기 설정 오류로 gef가 실행되지 않으며, 아래와 같은 메시지가 출력된다.
user@phoenix-amd64:~$ gdb
...
Python Exception <class 'UnicodeEncodeError'> 'ascii' codec can't encode charer '\u27a4' in position 12: ordinal not in range(128):
(gdb)
수정을 위해서는 아래와 같이 실행해주면 된다.
user@phoenix-amd64:~$ sudo sed -i 's/\\u27a4 />/g' /etc/gdb/gef.py
We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:
#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.
[sudo] password for user:
user@phoenix-amd64:~$ gdb
...
gef>
* 문제 접근과 풀이.
권한을 얻어 다음 레벨로 이동하는 방식이 아닌, user 계정 (password : user)으로 모든 문제를 풀 수 있게 되어있으며, 해당 문제는 아래 경로에 있다.
user@phoenix-amd64:/opt/phoenix$ ls
amd64 i486 i486-linux-musl x86_64-linux-musl
특이한 부분은 여러가지 환경이 준비되어있다는 점과 더불어 '풀었다'라는 개념이 권한 탈취가 아닌 특정 메시지 출력이라는 점이 다소 생소하다.
개인적으로 amd64 버전의 문제를 풀 예정이다.
728x90
반응형
'Wargame > Exploit Education' 카테고리의 다른 글
[Phoenix] Stack four (0) | 2022.09.27 |
---|---|
[Phoenix] Stack three (0) | 2022.09.27 |
[phoenix] Stack Two (0) | 2022.09.26 |
[Phoenix] Stack One (0) | 2022.09.26 |
[Phoenix] Stack Zero (0) | 2022.09.26 |