pwnbuntu

c0wb3ll ㅣ 2021. 12. 23. 07:45

주의...

젠장 세팅 다하고 문제 좀 푸려고 하니까 gdb를 사용할수가 없다..... qemu환경에서는 gdb를 사용할 수 없다고 하는데 docker에서 qemu를 이용해 x86_64환경을 에뮬레이팅해주는 것으로 보인다... 어떻게.... 어떻게 안될까....? ㅠㅠㅠ 결국 다시 맥북은 들고다니면서 윈도우에 원격 붙어쓰는 스타벅스 입장권이 될 것 같다.....

Reference

https://velog.io/@m0ai/M1-%EB%A7%A5%EC%97%90%EC%84%9C-x8664-%EB%8F%84%EC%BB%A4-%EC%9D%B4%EB%AF%B8%EC%A7%80-%EB%B9%8C%EB%93%9C-%EC%84%A4%EC%A0%95%ED%95%98%EA%B8%B0

개요

BoB10기 2차 프로젝트기간이 끝나고 드디어 Wargame과 CTF를 할 수 있는 자유시간이 주어졌다.

그렇게 Pwnable문제를 풀려던 찰나 밥트북을 받고 썩혀지고 있던 Macbook Air M1이 생각나 초기화를 하면서 환경구성을 했다.

그리고 그렇게 M1 맥북으로 포너블을 하겠다는 집념이 생기고 말았다.

암튼

그래서 도커에 aarch64 ubuntu를 설치하고 qemu를 이용하여 x86 architecture를 돌릴 생각이었는데 어머나 세상에 그 사이 도커에서 amd64 image를 그냥 에뮬레이터로 돌려주는 기능이 나왔다고 하는게 아닌가?!!?!?! (사실 리퍼런스 글이 3월인걸 보면 거의 1년이 지나 나온지 엄청 오래되었는데..... 3월부터는 인턴하느라 정신 없었고 6월부터는 BoB한다고 이제서야 2월에 산 M1 맥북을 만져본다...)

 

그래서 이전에 heap공부를 위해 ubuntu버전별로 올려두었던 이미지를 pull로 땡겨와 돌려봤더니 너무너무너무너무 예쁘게 잘 돌아갔다.

그리하여 급하게 ubuntu:20.04 amd64 이미지를 받아 gdb-peda, pwntools, ropper를 설치한 이미지를 구축하여 push로 밀어두었다. 앞으로 계속 추가할 예정이긴 한데 혹시라도 환경 구성하기 귀찮은 사람들은 아래 명령어로 끌어다 쓰면 된다.

docker pull c0wb3ll/pwnbuntu:20.04
docker run --platform linux/amd64 -it c0wb3ll/pwnbuntu:20.04 /bin/zsh

넘모 아름답다.....

코드 수정은 vscode를 통해 docker에 붙어서 하고 있긴 한데 정작 docker cli내에서 code명령어가 안먹어서 불편함을 겪고 있다. 이것도 해결해야한다.

생각해보니 heap을 위한 pwngdb를 안깔았다.... 뭐 나중에 풀 일 있으면 추가하겠지...