WAR GAME/Bandit 35

[OverTheWire: Bandit] level12 -> level13

사용 툴: cygwin 1) 문제 패스워드는 data.txt파일에 있고, 헥스 덤프파일이다. 이 레벨을 위해서는 mkdir명령어를 사용하여 디렉터티를 /tmp 밑에 만들고 cp와 mv 명령어도 이용한다. 2) 문제풀이 bandit12로 로그인 후 홈디렉터리의 data.txt파일을 열어보았다 위에 보이는 내용 형식이 헥스 덤프파일이다. - rw- r-- --- data.txt의 permission을 살펴보면 소유자만 읽고쓰기가 가능하고 같은 그룹은 읽기 권한, 그 외는 아무 권한이 없다. 결론은 우리가 이 파일을 만지기 위해서는 여기가 아니라 문제에서 알려줬듯이 /tmp 에 저 파일을 복사하여 만져야한다. 참고로 /tmp는 임시로 파일을 저장하는 디렉토리로, 권한에 상관없이 누구나 이 디렉토리에 파일을 생..

WAR GAME/Bandit 2020.02.26

[OverTheWire: Bandit] level11 -> level12

사용 툴: cygwin 1) 문제 패스워드는 data.txt 에 있다. 소문자 a-z와 대문자 A-Z는 모든 대문자 및 소문자는 위치상으로 13번 이동되어 있다. 위치상으로 13번 이동되어 있다는 게 무슨 뜻일까? -> 카이사르 암호 2) 문제풀이 A를 기준으로 설명해 보겠다. A가 위치상으로 13번 이동되어 있다. -> N의 자리로 갔다. 한마디로 A라고 했을 때 카이사르 암호로 해독해보면 N이라고 해석할 수 있다. 마찬가지로 B는 O가 된다. 소문자도 똑같이 생각하면 된다. data.txt 내용도 똑같다. 위의 설명처럼 저렇게 다 치환되어 있는 것이다. A-Z를 N-ZA-M a-z를 n-za-m 으로 치환시켜주면 암호를 해석할 수 있을 것 같다. 마침 이때 사용하는 명령어가 tr이다. tr [치환 전..

WAR GAME/Bandit 2020.02.25

[OverTheWire: Bandit] level10 -> level11

사용 툴: cygwin 1) 문제 패스워드는 data.txt에 있고 base64 인코딩 되어있다. 참고로 Base64 Encoding은 Binary Data를 Text로 변경하는 Encoding이다. 2) 문제풀이 bandit10으로 로그인하여 홈디렉터리의 data.txt 를 살펴보았다. 정체모를 문자들(?)이 나열되어있고 맨 마지막에 ==로 끝난다. 이것은 base64 인코딩의 특징인데 맨 마지막에 패딩문자인 =가 붙는다. 저걸 디코딩하면 bandit11의 패스워드가 나오지 않을까 싶다. 방법은 구글링하니까 금방 나왔다. cat data.txt | base64 --decode bandit11의 패스워드로 추정되는 문자열이 나왔다. bandit11로 로그인에 성공해 확인해보니 저 문자열이 bandit11..

WAR GAME/Bandit 2020.02.25

[OverTheWire: Bandit] level9 -> level10

사용 툴: cygwin 1) 문제 패스워드는 data.txt 파일에 있고 그 중에서도 사람이 읽을 수 있는 문자이다. 몇 개의 '=' 문자로 시작한다. 2) 문제풀이 bandit9로 로그인 해 준 다음 홈 디렉터리의 data.txt가 무슨 파일인 지 확인해 보았다. data.txt는 바이너리 파일이라서 이렇게 사람이 읽을 수 없는 언어와 부분적으로 문자 또는 숫자로 저장된 ASCII 문자들은 확인이 가능하게 되어있다. bandit10의 패스워드는 이 중에서 사람이 읽을 수 있는 언어로 되어 있고 그 앞에 몇개의 '=' 문자가 있다고 한다. strings 명령어를 사용해보도록 하겠다. strings 명령어는 바이너리 파일에서 문자열을 추출하는 역할을 한다. strings ./data.txt | grep =..

WAR GAME/Bandit 2020.02.25

[OverTheWire: Bandit] level8 -> level9

사용 툴: cygwin 1) 문제 패스워드는 data.txt 파일에 저장되어 있고, 오직 한 번만 발생하는 텍스트 라인에 있다? 오직 한 번만 발생한다는게 무슨 뜻인지 생각 해보자. 2) 문제풀이 bandit8로 로그인하고 홈디렉터리를 살펴보니 data.txt가 있었다. cat 명령으로 일단 열어보았다. 조금 당황스러웠다. 내가 여기서 처음에 헷갈렸던게 저걸 뭉텅이(?)로 보면 안된다. 한 line씩 살펴보아야 한다. 그래서 일단 sort명령을 사용해 오름차순으로 정렬해보기로 하였다. cat data.txt | sort sort 명령은 오름차순으로 문자들을 정렬한다. 자세히(?) 보면 저렇게 중복된 line들이 있다. 문제에서 오직 한 번만 발생하는 텍스트라고 했으니 중복되지 않고 분명 한 번만 적힌 텍..

WAR GAME/Bandit 2020.02.23

[OverTheWire: Bandit] level7 -> level8

사용 툴: cygwin 1) 문제 패스워드는 data.txt 파일 안에 있고 millionth 단어 옆에 있다. 단어 옆에 있다는 뜻이... 같은 행에 있다는 뜻 같다. 2) 문제 풀이 bandit6로 로그인해주고 ls -al 명령어를 이용하여 홈 디렉터리를 살펴본다. 홈 디렉터리에 data.txt가 있고, cat 명령어를 통해 data.txt를 열어보려고 했다. 꽤 오랫동안... 내용을 출력해냈다. 다시 확인해보니까 4메가였다. 아무튼 캡쳐본을 살펴보면 내가 생각하기에 웬지 왼쪽의 노란색 박스에 millionth 단어가 있을 거 같고 오른쪽 빨간색 박스에 패스워드로 추정되는 문자열이 있을 것 같다. 특정 문자열을 찾고자 할 때 사용하는 명령어인 grep 명령어를 사용 해 보자. cat data.txt ..

WAR GAME/Bandit 2020.02.23

[OverTheWire: Bandit] level6 -> level7

사용 툴: cygwin 1) 문제 패스워드는 서버 어디엔가에 저장되어 있고, 세가지 특징이 있다. 소유자는 bandit7 그룹은 bandit6 사이즈는 33bytes 2) 문제풀이 일단 bandit6으로 로그인 해 준 후 홈 디렉터리를 살펴보았다. 음 딱히 도움되는 정보는 보이지 않는 것 같다. 문제로 돌아가서 패스워드가 가진 특징 3가지를 보겠다. 소유자는 bandit7 그룹은 bandit6 사이즈는 33bytes 앞의 문제에서처럼 특징에 해당하는 파일을 루트에서 찾으면 나오지 않을까? find / -user bandit7 -group bandit6 -size 33c 해당 명령을 실행시켜 보겠다. 아,,, 에러메시지가 어마어마하다. 물론 여기서 스크롤바를 움직이면서 에러메시지가 없는 파일을 찾으면 된다..

WAR GAME/Bandit 2020.02.23

[OverTheWire: Bandit] level5 -> level6

사용 툴: cygwin 1) 문제 패스워드는 inhere 디렉터리 어딘가에 있고, 패스워드 파일의 특징이 세가지 나열되어 있다. 사람이 읽을 수 있다. 1033 바이트 이다. 실행할 수 없다. 2) 문제풀이 저 보라색? 글자의 의미는 디렉터리이다. 설마 저기 디렉터리 안에 들어가서 하나하나 1033바이트인 파일을 찾아서 문서를 열어서 확인해야하나? 라고 생각을 했다. 몇개 디렉터리를 들어가다가 조금 아닌 것 같다는 것을 깨달았다.... 구글링을 열심히 해본 결과 find라는 명령어를 찾았다. find -size 1033c find의 -size 옵션을 사용하여 1033 바이트에 해당하는 파일을 찾아보았다. 참고로 1033 뒤의 c는 바이트를 뜻한다. 파일을 찾고 cat 명령어를 이용하여 파일을 열어주면 b..

WAR GAME/Bandit 2020.02.22

[OverTheWire: Bandit] level4 -> level5

사용 툴: cygwin 1) 문제 패스워드는 inhere 디렉터리 안에 인간이 읽을 수 있는 파일에 있다. 팁: 터미널이 지저분하다면 reset 명령어를 이용해라 2) 문제풀이 level3 -> level4의 문제와 동일하게 inhere 디렉터리에 들어와서 ls -al 명령어를 입력해보았다. 뭔소린지 모르겠다면 level3 -> level4 풀이를 다시 보러 가보자 더보기 https://jiravvit.tistory.com/entry/OverTheWire-Bandit-level3-level4 [OverTheWire: Bandit] level3 -> level4 사용 툴: cygwin 1) 문제 패스워드는 inhere 디렉터리의 hidden 파일에 있다고 한다. 2) 문제풀이 저번 게시글에서 얻은 band..

WAR GAME/Bandit 2020.02.22

[OverTheWire: Bandit] level3 -> level4

사용 툴: cygwin 1) 문제 패스워드는 inhere 디렉터리의 hidden 파일에 있다고 한다. 2) 문제풀이 저번 게시글에서 얻은 bandit3의 패스워드를 가지고 bandit3 계정으로 로그인을 해준다. 그리고 홈디렉터리의 파일을 보기 위해 ls -al 명령어를 입력한다. 여기서 볼 게 있다. 보라색으로 표시된 것들이 디렉터리를 의미한다. 어떻게 알 수 있느냐, 맨 앞에 - 대신 d라고 적혀져 있으면 디렉터리를 의미한다. 그리고 파일 명에 . 이 있으면 숨겨진 파일을 의미한다. 한 마디로 ls 명령어로는 보이지 않는 다는 뜻이다. ls -al 옵션까지 입력해야 숨겨진 파일이 보인다. 아무튼 cd 명령어를 이용하여 inhere 디렉터리로 이동하였다. ls -al 명령어를 입력하니 바로 hidden..

WAR GAME/Bandit 2020.02.22