[DreamHack] Blue-Whale - dive imageID 못 찾음 해결

2024. 8. 30. 22:39Information Security 정보보안/DreamHack

728x90

배울내용 : 

dive imageID 못찾음 해결

docker images

sudo docker images

cannot fetch image

 

 

 

 

 

이전문제를 통과했더라면 이부분까지는 전혀 문제없이 왔을것이다 

 

chaid7@chaid7-VMware-Virtual-Platform:~/Desktop/fa75f8ae-5a42-43d2-af1f-76bf6d446ae9$ sudo docker images
REPOSITORY                     TAG       IMAGE ID       CREATED         SIZE 
dreamhackofficial/blue-whale   1         87a96c7a8db0   15 months ago   152MB

 

분명 Image Id 를 dive 해서 넣으면 보일거라는데 안된다 

 

 

chaid7@chaid7-VMware-Virtual-Platform:~/Desktop/fa75f8ae-5a42-43d2-af1f-76bf6d446ae9$ dive 87a96c7a8db0
Image Source: docker://87a96c7a8db0
Fetching image... (this can take a while for large images)
Handler not available locally. Trying to pull '87a96c7a8db0'...
cannot fetch image
cannot find docker client executable
이딴에러뜨는데 분명있는데 없다고한다 . dive 의 버전, 업데이트 다해봤지만 안됐다 
 
 
그러면서 여러방법을 하다가 해결법을 찾았다.
 

1. 경로 확인.

dive가 docker client executable을 찾을 수 없다는 오류가 계속 발생하는 것을 보면, dive가 Docker 클라이언트와 올바르게 통신하지 못하는 것 같다. 이는 dive가 Docker 클라이언트의 위치를 찾지 못하거나, dive가 Docker 데몬과 통신할 수 없는 경우에 발생할 수 있다.
 
which docker

 

우선 위와같은 명령어로 경로를 확인했을떄

 

/usr/bin/docker

 

이렇게 나와야한다 만약 안되어있다면 환경 변수를 설정해 dive 가 Docker 클라이언트를 찾게

export PATH=$PATH:/usr/bin

 

를 입력해주자 

 

 

 

2. 권한 확인 

Docker 클라이언트와 통신하려면 dive는 Docker 소켓에 접근할 수 있어야 한다. Docker 소켓에 접근 권한이 있는지 확인해 보자

ls -l /var/run/docker.sock

 

했을때 소유자가 root : docker 로 되어있으면 정상이다

이제 이 파일의 소유자가 Docker 그룹에 속해 있는지 보자 

 

groups $USER

#만약 없다면 아래를 써서 추가하자
#sudo usermod -aG docker $USER

 

 

3. 재시작

sudo systemctl restart docker

sudo apt-get update
sudo apt-get install --only-upgrade docker-ce

 

이렇게 한뒤에 로그아웃을 하고 다시 들어간뒤에 실행해보자 

 

 

 

 

4. 필살기 

이렇게 해보고도 안되면 마지막 필살기는 'dive' Docker 컨테이너를 사용하자

 

docker run --rm -it \
  -v /var/run/docker.sock:/var/run/docker.sock \
  wagoodman/dive:latest 87a96c7a8db0

 

 

 

그러면 들어와지게 된다

 

 

이렇게 되있는데 잘모르겠다 뭔지 그래서 위아래로 움직이고 텝눌러보면서 기능을 조금씩 알게 되었고

 

 

 

1. 내리다 보니깐 layers 에는 당장은 안보이지만

2. details에 print... ./flag 되있는 파일이 골라진걸 알수있엇고

3.번(TAP) 눌른뒤

4. 번을 찾았다 그런데 뒤에 내용을 볼수없어서 어떻하지 하다가 

 

 

 

view 에 zoom out 해서 (단축키 : ctrl + '+' + '-' ) 해서 줄여서 보니 DH 가 모두가 나오게 된다 

 

 

 

그리고 입력하면 성공한다 

 

728x90