본문 바로가기
Pwnable/Bandit

[Bandit Level 29->30] git 활용하기 (3)

by secumark 2022. 2. 14.
728x90

 

git을 활용하는 3번째 문제다. 

 

일단 현재 접속한 위치에 쓰기 권한이 없어서 /tmp/git이라는 폴더를 생성해서 git clone을 진행해보도록 하겠다.

 

 

비밀번호는 bandit29로 가기 위해 사용했던 그 비밀번호를 사용해주면 됨.

 

 

 

repo 디렉터리가 보인다.

 

 

폴더 안에 README.md 파일이 보여서 읽어봤는데, bandit28 문제처럼 패스워드가 지워져있다. 그럼 bandit28을 풀 때 사용했던 명령어들을 써봤다.

 

git show를 사용했을 때

 

username을 bandit29에서 30으로 수정했다는 내용밖에 안보임.

 

 

log -p 옵션을 줬을 때도 

 

여기서 사용할 수 있는 방법은 바로 branch 옵션을 주는 것이다. 원격 저장소에 있는 branch를 로컬 저장소로 가져오게 해서 숨겨져 있는 파일도 모두 볼 수 있게 된다.

 

 

사실 나도 branch 사용 방법은 잘 몰라서 일단 아는 옵션들을 다 사용해봤다. -r 옵션은 원격 저장소의 branch 리스트들을 볼 수 있고, -a 옵션은 원격과 로컬 저장소에 있는 branch 리스트를 모두 볼 수 있음. 현재는 HEAD로 설정되어 있다는 뜻임.

 

 

dev라는 branch를 보고 싶은데, 그냥 가져올 순 없고, 브랜치를 사용하겠다는 명시적인 명령어를 작성해줘야만 한다! 바로 checkout.

 

 

git checkout ~ 이렇게만 써주면 됨.

만약 브랜치 작성과 체크아웃을 동시에 해주려면 -b 옵션을 같이 써주면 된다.

 

 

 

음.. 근데 나는 간단하게 git checkout dev라고 적었는데 왜 README.md 파일밖에 보이지 않을까...!!

 

 

 

origin/dev라고 입력해주니까 정상적으로 swtich가 됐다.

 

 

이 상태에서 다시 README.md 파일을 읽어주면 비밀번호가 정상적으로 보이는 것을 확인할 수 있다.

 

 

 

 

핵심; git, branch, checkout 명령어

 

 

 

728x90

댓글