환경세팅
intel컴퓨터라서 Qemu로 하면 디버깅이 너무 어려워 AWS EC2로 arm64인스턴스 하나 만들고 로컬에서 해보려고 합니다.
apt install musl:arm64
해주고 바이너리 실행시켜보려고 했는데
아래 사진과 같은 에러가 뜹니다.
구글링해서 웬만한건 다 깔아봤는데 안되더라구요 ㅠㅠ
혹시 이거 해결법이나 도커파일로 제공받을 수 있나요?
#pwnable
작성자 정보
답변
3
Dreamhack
대표 업적 없음
sudo apt update
sudo apt install libstdc++6 -y
sudo apt install gcc-multilib -y
해보시겠나요~!?
sangjun
공부벌레
QEMU를 쓰라는 신의 뜻인가
sangjun
공부벌레
문제 푸시는 분들에게 제가 한 환경세팅 알려드립니다~
환경세팅 삽질 후기: AWS, AZURE, Naver cloud다 찾아봤는데 위의 문제 해결방법을 찾을 수가 없었습니다.
qemu
를 이용해서 파일시스템에 바이너리 넣은 다음에 일반 gdb
로 디버깅했습니다.
qemu
이용 전에 sudo apt-get install qemu qemu-kvm cpio -y
해주시고 ./run.sh
돌리니까 됐습니다.
아래는 바이너리를 파일시스템에 넣는 방법입니다.
unzip.sh를 실행한 뒤에 ./temp디렉토리에 바이너리 넣고 zip.sh.하시면 됩니다.
unzip.sh
#!/bin/sh
mkdir temp
cp rootfs ./temp
cd ./temp
mv rootfs rootfs.gz
gzip -d ./rootfs.gz
mv rootfs rootfs.cpio
cpio -id < rootfs.cpio
echo "[+] Extraction Completed"
zip.sh
#!/bin/sh
cd ./temp
find ./ -print0 | cpio --owner root --null -o --format=newc > ./rootfs.cpio
gzip -f ./rootfs.cpio
mv ./rootfs.cpio.gz ../rootfs
chmod 777 ../rootfs
cd ../
echo "[+] Zip Completed"