bandit

[Overthewire] level 23 -> level 24

Ron Weasley 2022. 6. 10. 13:57

문제를 보겠습니다.

해석을 해보면, 이전 문제와 동일하게 /etc/cron.d를 확인하고, Note은 스크립트를 직접 작성해라, Note2는 실행되면 만든 스크립트가 제거되므로 사본을 미리 준비해둘 것!!

 

풀이를 하겠습니다.

기본적으로 스크립트를 보기 위한 과정은 생략하겠습니다.

스크립트까지 출력을 했습니다.

코드 부분을 읽어보니 echo는 스크립트가 실행되고 /var/spool/ 경로 안에서 뭔가 사라진다는 것으로 추정됩니다.

밑에 for 문을 읽어보니, 모든 파일에 대해서 파일 이름이 현재 디렉터리 또는 상위 디렉터리가 아니면 timeout > 60초 이내에 실행해라.

아니면 rm -f > 이유를 불문하고 삭제하겠다. 라고 쓰여있네요!!

 

결국엔 스크립트를 하나 작성해서 /var/spool 경로에 복사하고 조금있다가 파일이 삭제된다 이말인것이네요!!

 

스크립트를 작성하기 위해 임시 디렉터리를 생성 해줍시다.

생성이 완료 되었으면 스크립트를 하나 작성해야 되는데, 코드는 다음과 같다.

bandit24의 패스워드 파일 내용을 토대로 파일을 생성하라는 스크립트입니다.

그래서 만들었던 weasley1의 디렉터리와 flag.sh에 퍼미션을 777로 주고, echo에 적힌대로 /var/spool/에 파일을 복사합니다.

 

그럼 password 파일이 생성되었음을 알 수 있었다. 출력을 해보니 답을 얻을 수 있었다.

'bandit' 카테고리의 다른 글

[Overthewire] level 25 -> level 26  (0) 2022.06.12
[Overthewire] level24 -> level25  (0) 2022.06.12
[Overthewire] level 22 -> level 23  (0) 2022.06.10
[Overthewire] level 21 -> level 22  (0) 2022.06.10
[Overthewire] level 20 -> level 21  (0) 2022.06.10