아임노드

[OverTheWire Bandit] Bandit Level 26 -> Level 27 문제풀이 (+특정 파일 활용 in shell) 본문

[SK shieldus Rookies 23기] 공부 노트/OverTheWire Bandit 문제풀이

[OverTheWire Bandit] Bandit Level 26 -> Level 27 문제풀이 (+특정 파일 활용 in shell)

Noody 2024. 12. 22.

OverTheWire Bandit

Level 26 -> Level 27

 

 

목표 : bandit26 쉘에 접근한 상태에서 bandit27 패스워드 찾기

 

  • 특정 파일 확인 후 패스워드 출력

 

풀이 방법

 

1. bandit26 서버 접속

이번 문제는 bandit 25->26에 이어서 진행되므로 접속 방법은 아래 포스팅을 참고하자.

 

[OverTheWire Bandit] Bandit Level 25 -> Level 26 문제풀이 (+more)

OverTheWire BanditLevel 25 -> Level 26  목표 : /usr/bin/showtext의 동작을 확인하고 패스워드 얻기 특정 파일의 동작을 분석하여 접속 시도more 명령어에 대한 이해 풀이 방법  1. bandit25 서버 접속ssh bandit25@

imnode.tistory.com

 

여기서부터 시작!

 

 

2. 파일 리스트 확인

역시나 처음은 파일 목록을 확인하는 것부터 시작한다.

빨간색으로 되어있는 파일이 눈에 띈다.

file 명령어로 파일을 확인해본다.

 

 

3. 파일 정보 확인

file bandit27-do
file [파일명]

간단하게 일부만 살펴보겠다.

ELF(Executable and Linkable Format) 형식의 실행 파일
not stripped : 이 실행 파일은 디버깅 심볼이 제거되지 않았다.
 ㄴ 디버깅 심볼이 포함되어 있어 프로그램의 내부 구조(함수 이름, 변수 이름 등)를 분석할 수 있다.
 ㄴ 보안적으로 민감한 경우 실행 파일을 "strip"하여 디버깅 정보를 제거하는 것이 일반적이다.

 

이 파일을 실행하면 Bandit27 권한으로 특정 작업을 수행할 수 있다.

bandit27-do 파일을 실행하여 특정 명령(cat /etc/bandit_pass/bandit27)을 전달하면

Bandit27의 패스워드를 출력할 가능성이 높아 보인다.

 

 

4. 패스워드 출력

./bandit27-do cat /etc/bandit_pass/bandit27

해당 명령어를 실행시키면 다음 레벨의 패스워드를 확인할 수 있다.