본문 바로가기
Linux/bandit

Level 6 -> Level 7

by ㅇㅅㅇ.. 2023. 12. 28.

 

 

  • login PW: P4L4vucdmLnm8I7Vl7jG1ApGSfjYKqJU
  • 문제설명: 서버 어딘가에 다음 PW가 있고 파일은 다음 속성을 가진다.

[ user 이름: bandit7 / group 이름: bandit6 / size: 33byte ]

 

 

이전 단계와 마찬가지로 find 명령어를 사용하는데 -user 옵션과 -group 옵션을 사용하겠습니다.

# find / -user bandit7 -group bandit6 -size 33c

 

Permission denied 를 제외하면 맨 아래 PW가 있을 것 같은 경로가 하나 있습니다.

하지만 출력값이 많을 경우 하나하나 확인하기 어려우기에 File descriptor를 이용해보겠습니다.

 


< File descriptor >

: 파일이나 입출력 장치와 상호 작용하기 위한 추상화된 개념으로 정수 값으로 표현 한다.

 

  • 표준 입력(Standard Input, stdin): 0으로 표시되며, 프로세스로부터 데이터를 읽는데 사용됨. 보통 키보드의 입력이 stdin으로 전달된다.
  • 표준 출력(Standard Output, stdout): 1로 표시되며, 프로세스가 데이터를 출력하는데 사용됨. 보통 화면에 출력된다.
  • 표준 오류(Standard Error, stderr): 2로 표시되며, 프로세스가 오류 및 디버깅 정보를 출력하는데 사용됨. stdout과 달리 화면에 나타나지 않을 수 있음.

 

- Permission denied 의 경우 표준 오류( 2 ) 에 해당합니다.

- 리눅스에서는 특별한 파일로 사용되는 디바이스 파일로 데이터를 무시하거나 폐기하는데 사용되는 경로로 /dec/null 이 있습니다. (이 경로로 옮겨지는 데이터는 디스크에 따로 저장이 되지 않습니다)

 

# find / -user bandit7 -group bandit6 -size 33c 2>/dev/null

조건에 맞는 파일 하나만 출력되는 것을 확인할 수 있습니다.

'Linux > bandit' 카테고리의 다른 글

Level 8 -> Level 9  (0) 2024.01.01
Level 7 -> Level 8  (0) 2023.12.28
Level 5 -> Level 6  (0) 2023.12.28
Level 4 -> Level 5  (0) 2023.12.28
Level 3 -> Level 4  (0) 2023.12.28