[Bandit] Level 32 → Level 33

우주먼지·2024년 5월 1일
1

[War Game]Bandit

목록 보기
34/34

Bandit Level 32 → Level 33
After all this git stuff its time for another escape. Good luck!

Sol)
마지막 문제인 듯 하다. bandit32 계정으로 접속하면 'UPPERCASE SHELL'이라고 나온다.
명령어를 입력해보면 전부 대문자로 입력된다.

그럼 대,소문자가 안되는 특수문자와 숫자를 써야 할 듯하다. 입력해보면

특수문자랑 숫자는 입력되는 것을 봐선 uppercase shell 이라는 것이 문자인 것만 대문자로 바꿔서 동작하도록 되어 있는 듯하다. 그래서 특수문자가 있는 건 다 실행해 보도록 한다.

  • 특수문자(리눅스 환경변수)
  1. $$ : 쉘스크립트 PID 확인
    -> 동작하는데 Permission denied 된다.
  2. $? : 이전 실행한 함수의 종료 스테이터스(return value 인 듯)를 출력
    -> 이것도 결과는 나오나 Permission denied.
  3. $_ : 이전 실행에서 마지막 인수를 출력
    -> 그냥 newline이 생긴다.
  4. $0 : 현재 실행중인 쉘스크립트의 이름 출력
    -> uppercase shell가 끝나고 일반적인 쉘을 쓸 수 있다!

왜 '$0'을 쓰면 나오나 싶었다. 아마 '$0'을 입력했을 때 uppercase shell이 종료되게 했거나 쉘스크립트의 파일명이 출력되면(아마 소문자로) 종료되게 한 것 같다.

이렇게 bandit은 끝났다.

profile
오늘보다 내일 더 문제가 많았으면 좋겠다.

0개의 댓글