본문 바로가기

정보보안/Wargame(Bandit)

Bandit Level 25 → Level 26

Logging in to bandit26 from bandit25 should be fairly easy… The shell for user bandit26 is not /bin/bash, but something else. Find out what it is, how it works and how to break out of it.

 

bandit26의 쉘이 배쉬쉘이 아니라 다른 것이다. 직접 찾아서 뭐 어떻게 해보란다.

 

bandit25 계정의 홈 디렉터리에 bandit26 계정에 로그인하기 위한 RSA private key가 있는데, 일단 그냥 로그인을 시도해 보면 

바로 로그아웃되는 것을 볼 수 있다. 이 방법은 아닌 것 같고..

 

일단 /etc/passwd 파일을 열어보면 각 사용자의 쉘이 무엇인지 알 수 있다.

grep을 이용해 bandit26 계정의 정보만 불러왔다.

보아하니 /usr/bin/showtext 라고 되어 있다. 바로 열어 본다.

bandit26 계정의 홈 디렉터리에 있는 text.txt를 more로 열고, exit 명령으로 빠져나간다.

따라서 이 문자열이 text.txt의 내용인 것을 알 수 있다.

more 명령은 파일을 한 화면 단위로 출력하는 것인데, 우리가 평소에 사용하는 터미널의 크기를 보면 이 문자열은 한번에 담고도 남는 수준이어서 바로 exit 명령이 실행되는 것이다.

따라서 지금 실행중인 터미널의 크기를 최소한으로 작게 하고 다시 ssh 접속을 해 보면 more이 뜨는 것을 볼 수 있다.

more이 실행중일 때 v를 누르면 vi 에디터가 실행되니, v키를 눌러주면

이런 식으로 vi에디터가 뜨게 된다. 여기부터는 그냥 다시 창 크기를 늘려도 된다.

현재 text.txt를 vi 에디터로 편집중인 것이다. (bandit26 계정으로.)

우리의 계정은 ssh 접속을 통해 현재 bandit26 계정이므로, /etc/bandit_pass/bandit26 파일을 열어볼 수 있다.

따라서 vi 에디터의 :e 옵션을 이용해 /etc/bandit_pass/bandit26 파일을 열어 준다.

:e 옵션은 vi를 종료하지 않고 다음 파일 편집 기능이다.

이런식으로 입력해 주면 비밀번호가 나온다.

'정보보안 > Wargame(Bandit)' 카테고리의 다른 글

Bandit Level 29 → Level 30  (0) 2021.12.19
Bandit Level 28 → Level 29  (0) 2021.12.19
Bandit Level 27 → Level 28  (0) 2021.12.19
Bandit Level 26 → Level 27  (0) 2021.12.19
Bandit Level 24 → Level 25  (0) 2021.12.18