이번에는 무슨 서버 어딘가에 있다고 하고
bandit7이라는 유저의 소유, bandit6 그룹에 속해있고, 33 byte라고 한다.
이번에도 find 명령어를 사용해볼 수 있을 것 같다. 그런데...
애초에 홈디렉토리에 아무것도 존재하지 않는다..
그런데 문제의 발문을 다시한번 살펴보면 홈디렉토리가 아닌 "서버 어딘가" 에 있다고 했으니깐
루트 디렉토리에서 살펴보면 되지 않을까 싶다.
find 명령어를 이용해서 user, group, size 옵션을 이용해서 찾아봤는데도 뭐가 엄청 많이 나온다.
이렇게 해서는 뭘 찾기가 힘들어보인다.
우선 해결방법이다.
이렇게 하면 permission denied가 뜬 행들을 다 지워버리고 우리가 찾는 결과만 남길 수 있는데,
설명
2>/dev/null
1. 파일 디스크립터
자세한 내용은 생략하고 여기에 필요한 정보만 가져오자면,
파일 디스크립터는 파일의 실행 등등을 관리하는 일종의 flag라고 볼 수 있을 것 같다.
0,1,2는 각각이 고유의 의미를 가지고 있고, 3부터는 파일이나 프로그램실행시마다 임의로 부여되는데,
0 : 표준 입력
1 : 표준 출력
2 : 표준 에러
라는 의미를 가지고 있다.
우리가 본 결과에서 Permission denied는 에러가 표시되었다는 뜻이므로 2 가 될 것이다.
이제 이녀석들이 출력되지 않도록 관리해야겠지?
2. redirection
A > B : A의 결과를 B로 보냄
A >> B : A 결과를 B 데이터에 추가
A < B : B의 데이터를 A에 입력
라는 뜻을 가지고 있다.
3. /dev/null
리눅스에서 쓰이는 일종의 쓰레기통같은거다.
이런 개념을 이용해서 에러가 난 (권한 문제 등) 파일들을 버려버리면,
정답을 찾을 수 있다.
끗
'wargames > bandit' 카테고리의 다른 글
bandit Overthewire | level 8 -> level 9 (0) | 2023.07.17 |
---|---|
bandit Overthewire | level 7 -> level 8 (0) | 2023.07.17 |
bandit Overthewire | level 5 -> level 6 (0) | 2023.07.12 |
bandit Overthewire | level 4 -> level 5 (0) | 2023.07.12 |
bandit Overthewire | level 3 -> level 4 (0) | 2023.07.12 |