카테고리 없음

[11월 14일] CTF_Bluemoon

ljm 2025. 11. 14. 10:02

ip 확인
포트 스캐닝

 

http 접속
하위 디렉토리 검색
hidden_text 접속
view-source 에서 QR code 이미지 발견
wget으로 이미지 다운로드 후 이름변경
qrcode scanner에서 온라인 스캔 가능
파일 디코딩 사이트

 

qr 코드 디코딩
얻은 정보로 ftp 접속
information.txt와 p_lists.txt 파일 Kali로 가져오기
파일을 읽어본 결과 robin의 비밀번호가 취약하므로 패스워드 리스트를 받은걸로 보여짐
robin 계정으로 받은 패스워드 리스트로 무차별 공격 결과 > 'k4rv3ndh4nh4ck3r' 패스워드 획득

 

SSH 접속
user_flag 획득
feedback.sh 내용 확인
sudo 를 사용해서 실행할 수 있는 목록 확인 > feedback.sh 가 jerry 권한으로 실행 시 패스워드가 필요없음
jerry 입력 후 /bin/bash 실행
pty 모듈 가져와서 새로운 pseudo 터미널에 연결하여 /bin/bash 실행

 

docker의 정보를 확인한 결과 alpine이라는 것을 확인

 

 

docker run -v /:/mnt --rm -it alpine chroot /mnt sh

→ docker 그룹 사용자는 sudo를 사용하지 않고도 Docker 명령을 실행할 수 있다. 
  이로 인해 호스트 시스템에 대한 모든 권한을 갖게 된다.
docker run 새 컨테이너를 실행합니다. "Docker, 새로운 컨테이너를 시작해!"
-v /:/mnt 볼륨 마운트(Volume Mount) 옵션입니다. "호스트(내 컴퓨터)의 **루트 디렉터리(/)**를 컨테이너의 /mnt 디렉터리에 연결해."
--rm 컨테이너가 종료될 때 자동으로 삭제합니다. "작업 끝나면 이 컨테이너는 깔끔하게 치워줘."
-it 대화형(Interactive, -i) 모드와 **TTY(가상 터미널, -t)**를 할당합니다. "컨테이너랑 키보드로 대화할 수 있게 연결해줘."
alpine 사용할 Docker 이미지 이름입니다. (매우 가벼운 Alpine Linux) "베이스는 가벼운 Alpine Linux 이미지를 쓸 거야."
chroot /mnt sh 컨테이너 내에서 실행할 최종 명령어입니다. "이제 **/mnt`` (즉, 호스트의 루트)**를 새로운 루트 디렉터리로 삼고 sh 쉘을 실행해!"

 

root_flag 획득