사용 툴: cygwin
1) 문제
ssh://bandit28-git@localhost/home/bandit28-git/repo에 git 저장소가 있다. 사용자 bandit28-git의 암호는 사용자 bandit28과 동일하다.
저장소를 복제하고 다음 수준의 암호를 찾아라.
이전 문제랑 문제가 똑같다.
2) 문제풀이
bandit28@bandit:~$ ls -al
total 20
drwxr-xr-x 2 root root 4096 Oct 16 2018 .
drwxr-xr-x 41 root root 4096 Oct 16 2018 ..
-rw-r--r-- 1 root root 220 May 15 2017 .bash_logout
-rw-r--r-- 1 root root 3526 May 15 2017 .bashrc
-rw-r--r-- 1 root root 675 May 15 2017 .profile
bandit28@bandit:~$ cd /tmp
bandit28@bandit:/tmp$ mkdir ./mybandit28
bandit28@bandit:/tmp$ cd ./mybandit28
bandit28@bandit:/tmp/mybandit28$ ls -al
total 305924
drwxr-sr-x 2 bandit28 root 4096 Mar 9 08:27 .
drwxrws-wt 1 root root 313204736 Mar 9 08:27 ..
bandit28@bandit:/tmp/mybandit28$ git clone ssh://bandit28-git@localhost/home/bandit28-git/repo
Cloning into 'repo'...
Could not create directory '/home/bandit28/.ssh'.
The authenticity of host 'localhost (127.0.0.1)' can't be established.
ECDSA key fingerprint is SHA256:98UL0ZWr85496EtCRkKlo20X3OPnyPSB5tB5RPbhczc.
Are you sure you want to continue connecting (yes/no)? yes
Failed to add the host to the list of known hosts (/home/bandit28/.ssh/known_hosts).
This is a OverTheWire game server. More information on http://www.overthewire.org/wargames
bandit28-git@localhost's password:
remote: Counting objects: 9, done.
remote: Compressing objects: 100% (6/6), done.
remote: Total 9 (delta 2), reused 0 (delta 0)
Receiving objects: 100% (9/9), done.
Resolving deltas: 100% (2/2), done.
bandit28@bandit:/tmp/mybandit28$
bandit28@bandit:/tmp/mybandit28$
전 문제랑 똑같이 진행한다.
git clone 명령어를 이용하여 명령어를 복제하였다.
bandit28@bandit:/tmp/mybandit28$ ls -al
total 305928
drwxr-sr-x 3 bandit28 root 4096 Mar 9 08:27 .
drwxrws-wt 1 root root 313204736 Mar 9 08:28 ..
drwxr-sr-x 3 bandit28 root 4096 Mar 9 08:27 repo
bandit28@bandit:/tmp/mybandit28$ cd ./repo
bandit28@bandit:/tmp/mybandit28/repo$ ls -al
total 16
drwxr-sr-x 3 bandit28 root 4096 Mar 9 08:27 .
drwxr-sr-x 3 bandit28 root 4096 Mar 9 08:27 ..
drwxr-sr-x 8 bandit28 root 4096 Mar 9 08:27 .git
-rw-r--r-- 1 bandit28 root 111 Mar 9 08:27 README.md
bandit28@bandit:/tmp/mybandit28/repo$ file README.md
README.md: ASCII text
bandit28@bandit:/tmp/mybandit28/repo$ cat README.md
# Bandit Notes
Some notes for level29 of bandit.
## credentials
- username: bandit29
- password: xxxxxxxxxx
bandit28@bandit:/tmp/mybandit28/repo$
repo 디렉터리 안에 README.md 파일을 읽어보았다.
bandit level29에 대한 것이 적혀있다.
username은 bandit29이고 password도 적혀있는데 xxxx라고 적혀있다...
password는 어떻게 확인할 수 있을까?
bandit28@bandit:/tmp/mybandit28/repo$ git log
commit 073c27c130e6ee407e12faad1dd3848a110c4f95
Author: Morla Porla <morla@overthewire.org>
Date: Tue Oct 16 14:00:39 2018 +0200
fix info leak
commit 186a1038cc54d1358d42d468cdc8e3cc28a93fcb
Author: Morla Porla <morla@overthewire.org>
Date: Tue Oct 16 14:00:39 2018 +0200
add missing data
commit b67405defc6ef44210c53345fc953e6a21338cc7
Author: Ben Dover <noone@overthewire.org>
Date: Tue Oct 16 14:00:39 2018 +0200
initial commit of README.md
bandit28@bandit:/tmp/mybandit28/repo$
git log 명령어를 이용해야한다.
git log라고 치면 저렇게 commit이 뜨게 된다.
commit이란 변경사항을 서버에 반영하기 위한 절차 중 하나인데, 쉽게 말해서 임시저장 비슷한 것이다.
제일 위에가 최신의 commit(임시저장)이다.
fix info leak이라고 적혀있는데, 뭘 자세히 고쳤는지 보기 위해 git show 명령을 보도록 하겠다.
bandit28@bandit:/tmp/mybandit28/repo$ git show 073c27c130e6ee407e12faad1dd3848a110c4f95
commit 073c27c130e6ee407e12faad1dd3848a110c4f95
Author: Morla Porla <morla@overthewire.org>
Date: Tue Oct 16 14:00:39 2018 +0200
fix info leak
diff --git a/README.md b/README.md
index 3f7cee8..5c6457b 100644
--- a/README.md
+++ b/README.md
@@ -4,5 +4,5 @@ Some notes for level29 of bandit.
## credentials
- username: bandit29
-- password: bbc96594b4e001778eee9975372716b2
+- password: xxxxxxxxxx
bandit28@bandit:/tmp/mybandit28/repo$
git show [commit]
해당 commit의 자세한 내용을 볼 수 있다.
저기 보면 -라고 passwordpassword: bbc96594b4e001778eee9975372716b2를 지우고 +로 password: xxxxxxxxxx를 추가시킨 것을 볼 수 있다.
저 password가 bandit29의 password인 것 같다.
bandit28@bandit:/tmp/mybandit28/repo$ ssh bandit29@localhost
bandit29@bandit:~$ id
uid=11029(bandit29) gid=11029(bandit29) groups=11029(bandit29)
bandit29@bandit:~$
인증 완료!
'WAR GAME > Bandit' 카테고리의 다른 글
[OverTheWire: Bandit] level30 -> level31 (0) | 2020.03.09 |
---|---|
[OverTheWire: Bandit] level29 -> level30 (0) | 2020.03.09 |
[OverTheWire: Bandit] level27 -> level28 (0) | 2020.03.09 |
[OverTheWire: Bandit] level26 -> level27 (0) | 2020.03.07 |
[OverTheWire: Bandit] level25 -> level26 (0) | 2020.03.07 |