Bandit Level 5 -> 6

ls명령어로 어떤 파일이 있는지 확인하였고 cd명령어로 inhere파일로 들어가주었다. 그리고 다시 ls명령어를 작성해주었더니 maybehere00~19파일이 있다는 것을 볼 수 있었다. 여기서 1033byte 크기를 가진 파일을 찾아주어야 하기 때문에 find 명령어로 size가 1033c인 파일을 찾도록 해주었다.

find ./* -size N : N 크기의 파일을 검색
b : 블록단위, c : byte, k : kbyte

./maybehere07/.file2가 1033byte 크기를 가진 유일한 파일임을 알아냈으므로 cat명령어로 파일의 내용을 확인해주었더니 비밀번호를 알아낼 수 있었다.

 

Bandit Level 6 -> 7

find / -user bandit7 -group bandit6 -size 33c 명령어를 작성하여 user은 bandit7이고 group은 bandit6이고 33byte 크기의 파일을 찾도록 하였다. 그랬더니 /var/lib/dpkg/info/bandit7.password 파일이 이 조건과 성립함을 알 수 있었다. 이 파일을 cat명령어로 읽었더니 비밀번호를 찾을 수 있었다.

 

Bandit Level 7 -> 8

grep 명령어를 이용해 millionth가 적힌 줄만 출력하도록 해주었다. 이 명령어를 포함하여 cat명령어로 data.txt 파일을 읽어주었더니 비밀번호를 찾을 수 있었다.

 

Bandit Level 8 -> 9

uniq : 중복된 내용이 있으면 하나만 남기고 삭제
이 명령어를 사용할 때에는 정렬 후 순차적으로 만든 뒤에 사용해야 한다. (sort명령어)
-u 옵션 : 원래 파일에서 연속으로 중복되지 않는 행만을 출력한다.
-c 옵션 : 중복발생횟수를 연속 중복 행과 함께 보여준다.

uniq 명령어를 사용하기 전 sort로 정렬을 해준 다음 uniq -u 명령어를 통해 중복되지 않는 행을 출력해주었다. 이를 통해 비밀번호를 찾을 수 있었다. 

 

Bandit Level 9 -> 10

data.txt 파일을 읽어주었더니 읽을 수 없는 문자들이 나왔다.

strings : 파일에서 출력가능한 문자열을 출력하는 명령어

strings 명령어를 이용하여 data.txt 파일에 '='이 있는 줄을 출력해주는 명령어를 작성하였다. 

이렇게 비밀번호를 찾을 수 있었다.

truKLdjsbJ5g7yyJ2X2R0o3a5HQJFuLk

Bandit Level 0

ssh 명령어는 SSH 서버 접속 인증을 위한 암호화를 제공하여 네트워크 해킹의 위험에서 안전하게 접속할 수 있다.

 

>사용법 : ssh [옵션] [주소]

 

<옵션>

-1 : ssh를 프로토콜 버전 1로 시도
-2 : ssh를 프로토콜 버전 2로 시도
-4 : IPv4 주소만 사용
-6 : IPv6 주소만 사용

-F configfile : 사용자 설정 파일(configfile)을 지정한다.
-I smartcard_device : 사용자 개인 RSA 키를 저장한 디바이스(smartcard_device)를 지정한다.
-i identity_file : RSA  DSA 인증 파일(indentity_file)을 지정한다.
-l login_name : 서버에 로그인할 사용자(login_name)를 지정한다.
-p port : 서버에 접속할 포트를 지정한다.
-q : 메시지를 출력하지 않는다.

-V : 버전 정보를 출력한다.
-v : 상세한 정보를 출력한다. 디버깅에 유용하다.
-X : X11 forwarding 기능을 활성화한다. 이는 서버에 접속하여 서버의 프로그램을 클라이언트의 화면에서 실행할 수 있다.
-x : X11 forwarding 기능을 비활성화한다.
-Y : 신뢰할만한 X11 forwarding 기능을 활성화한다.

[네이버 지식백과] ssh (유닉스 리눅스 명령어 사전, 2010. 11. 30., 우종경, 박종오)

-p 옵션을 사용해 2220 포트를 지정해주었다. ssh 명령어 사용법에 맞게  옵션을 적은 후 주소를 적어주었다. 그러고 나니 비밀번호를 요구하였고 위 문제에 써있는대로 적어주었더니 위와 같은 창이 뜨게 되었다.

 

Bandit Level 0 -> 1

file 'readme' 내에 비밀번호가 있다.

ls 명령어의 a옵션을 통해 어떤 파일이 존재하는 지 알아보았고 그 파일을 읽어보기 위해 cat명령어를 사용해주었다. 

 

Bandit Level 1 -> 2

file '-' 내에 비밀번호가 있다.

먼저 bandit1로 접속해주기 위해 ssh 명령어를 사용해주었다.

ls로 파일을 확인해 주었고 위 단계처럼 cat명령어를 통해 -파일을 열어보려고 시도하였지만 실패하였다. 이는 파일이름이 특수문자여서 그런 것으로 보여진다. 그래서 특수문자인 파일이름 '-'을 읽어주기 위해 ./을 붙여주었다. 

 

Bandit Level 2 -> 3

file 'spaces in this filename' 내에 비밀번호가 있다.

ls을 통해 파일을 확인해주었다. 파일 이름에 공백이 포함되어 있으므로 이를 표현하기 위해 역슬래시 기호를 사용해주었다. 

 

Bandit Level 3 -> 4

hidden file 'inhere' 내에 비밀번호가 있다.

ls을 통해 파일을 확인해주고 cd로 inhere파일로 들어가주었다. inhere파일에서 ls -a로 안에 .hidden파일이 있음을 확인하였다. cat 명령어로 .hidden 파일을 읽어주었더니 비밀번호가 나왔다.

 

Bandit Level 4 -> 5

cd inhere로 inhere파일로 들어가주었고 여기서 ls명령어를 통해 총 10개의 파일이 있음을 확인하였다. cat명령어로 모든 파일의 내용을 출력해보았더니 위와 같은 결과가 나왔고 비밀번호를 정확히 파악하기 어려워서 특정 파일을 열어보기로 했다.

file명령어를 통해 각 file의 속성을 출력해주었다. -file07만 ascii text로 이루어졌음을 확인하고 cat 명령어를 통해 해당 파일을 열어주었더니 비밀번호가 나왔다.

 

koReBOKuIDDepwhWk7jZC0RTdopnAYKh

+ Recent posts