이번 문제의 해결 관건은 주어진 조건들을 잘 활용해서
수많은 디렉터리와 파일 중 원하는 데이터만 추려내는 것이다.
위에 나온 조건들을 보자
1. 닝겐이 읽을 수 있는 파일
2. 1033바이트 크기인 파일
3. 실행할 수 있는 파일
(사실 꿀팁 하나 알려주자면, 1033바이트 크기의 파일을 찾는 조건 명령문만 으로도 password를 찾을 수 있다.)
인간이 읽을 수 있다는 건???
파일이 txt 파일이 거나 ASCII코드로 이루어져 있다는 의미!
그럼 조건에 맞게
find 명령어로 찾아주자.
우선 txt 파일이다?
현재 디렉터리에서 찾고 싶으면
find -name '*.txt'
를 입력하자.
다음은 아스키코드 입력된 파일을 찾아보자.
find ./* grep ASCII
아스키코드로 입력된 elgo라는 파일과 test.txt라는 파일이 나온다.
다음은 1033바이트 크기인 파일 찾기
보통 사이즈 찾는 find 명령어는 다음과 같다.
find ./* -size [사이즈 값]
여기서 주의할 점이 있다!!!!11!!!!
보통 byte를 표현할 때 앞 글자를 따서 b라고 쳐서 검색하는데
find ./* -size 1033b
(요롷게)
그럼 기준을 512 바이트 단위로 끊기 때문에 우리가 찾으려 하는 정확한 1033 바이트를 찾을 수가 없다.
해결 책으로는 b대신에 c를 사용해야 한다.
find ./* -size 1033c
다음은 exe 파일이 아닌 것을 찾기
간단하다. 그냥
find ./* -not -executable
직관적으로 명령어의 의미를 파악할 수 있다.
결과는?
여기까지가 이번 문제에서 필요한 개념의 끝이다.
조건들을 잘 조합해서 명령문을 완성하면 딱 한 가지의 파일이 검색될 것이다.
그럼 거기에 입력돼있는 값이 정답이다.
(도저히 못 찾겠다 싶으면 ㅋㅋ 위에 올린 꿀팁 참조. 1초 만에 찾을 수 있다.)
주의!!!!notice!!!!!
OTW의 공식 문서에 따르면
OTW는 정답 유출을 금지한다. 때문에 나는 힌트만 올릴 것이다. 나머지는 알아서.
I post only hints for solving problems,
NOT WRITENUPS OF ANY SOLUTIONS.
つづく...
'Hacking > war-game' 카테고리의 다른 글
root-me @ HTML - Source code (힌트) (0) | 2021.07.25 |
---|---|
root-me(루트-미) IRC 프로토콜 환경 구축 하기 (리눅스 기준) (4) | 2021.07.24 |
OTW: Bandit level 4 -> level 5 (힌트) (0) | 2021.07.24 |
OTW: Bandit level 3 -> level 4 (힌트) (0) | 2021.07.24 |
OTW: Bandit level 2 -> level 3 (힌트) (0) | 2021.07.24 |