Bandit level 6→7

거대한리트리버·2023년 8월 8일
0
post-thumbnail

환경 : Linux Ubuntu 22.04

문제

The password for the next level is stored somewhere on the server and has all of the following properties:

owned by user bandit7
owned by group bandit6
33 bytes in size

풀이

풀이하는 도중 알게 된 것들을 먼저 정리해야겠다.

bandit6@bandit:~$ ls -al
bandit6@bandit:/$ ls -al

두 명령어는 $ 앞에 각각 ~/가 붙어있다.
이로 인한 차이점은 다음과 같다 :

~$ : 홈 디렉토리, /$ : 루트 디렉토리

루트 디렉토리

  • 루트 디렉토리(/)는 리눅스 파일 체제의 최상위 디렉토리로
    모든 디렉토리들의 시작점을 의미한다.

홈 디렉토리

  • 홈 디렉토리(~)는 최상위 루트 디렉토리 하위에 있는 home 디렉토리가 아닌
    그 아래의 사용자 홈 디렉토리를 의미한다.

  • 계정명으로 설정된 폴더를 말하며 리눅스에 처음 로그인하면 접속되는 위치를 말한다.
    계정명(사용자 아이디)는 5글자까지만 나타난다.
    +)루트 디렉토리 하위의 home 디렉토리는 여러 사용자의 홈 디렉토리가 모여있음.

파일 정보 확인

ls-al 명령어를 실행했을 때 각 파일 또는 디렉토리에 대한 정보가 다음과 같이 출력된다.

  • 1. Permission
    맨 앞에 나오는 알파벳과 -의 조합으로 이루어진 정보가 permission과 관련된 정보이다.

  • d디렉토리
    b블록 장치
    c문자열 장치
    -보통 파일
    l심볼릭 링크
    p / =named pipe/FIFO
    s소켓

    위의 예시에서는 d로 시작하므로 디렉토리를 의미한다는 것을 알 수 있다.

  • 이후 9자리는 rwx가 3번 반복되며, 중간중간 -가 대신 들어간 것을 볼 수 있다.
    r(readable) w(writable) x(executable)의 의미를 지니며,
    반복되는 3번의 rwx 집합은 각각 owner, group, others의 권한을 표시한다.
    알파벳이 있다면 그 권한이 있는 것이고, 없다면 -로 표시된다.

  • 2. others

  • 첫 번째 root → home 디렉토리의 실제 소유자가 root라는 것을 나타낸다.

  • 두 번째 root → home 디렉토리의 실제 소유자 그룹이 root라는 것을 나타낸다.

  • 4096 → home 디렉토리의 크기를 나타낸다.
    보통의 파일들은 파일 사이즈에 맞는 크기를 할당받으며, 위 예시의 home은
    디렉토리이기 때문에 4096바이트(=4KB)의 크기를 할당받는 것을 확인할 수 있다.

  • Apr 23 18:05 → 파일 또는 디렉토리가 생성된 시간을 의미한다.

다시 풀이로 돌아와서, 우선 ls -al 명령어를 통해 어떤 것들이 있는지부터 확인한다.

딱히 보이는 게 없으니 find 명령어를 통해 원하는 파일을 바로 찾아주자.

find / -size 33c -user bandit7 -group bandit6
숨어있는 접근 가능한 유일한 파일을 찾아냈다. 저 파일을 읽어주면 비밀번호가 나올 것이다. password : z7WtoNQU2XfjmMtWA8u5rN4vzqu4v99S
profile
강아지귀여워

0개의 댓글