본문 바로가기

System

(7)
[OverTheWire Bandit] Level 5 → 6 문제 풀이 Level 5 → 6 문제 풀이 드가자. 문제를 보면, inhere 디렉토리 하위 어딘가에 다음 레벨로 갈 수 있는 패스워드가 적힌 파일이 저장되어 있다. 그리고 그 파일은 아래 3가지 특징을 가지고 있다. 사람이 읽을 수 있는 형태이다. 크기가 1033byte 이다. 실행할 수 없다 즉 주어진 조건 3개를 이용하여 파일을 찾으면 된다. ls를 통해 inhere 디렉토리는 홈디렉토리 하위에 있음을 확인했고, inhere 디렉토리 하위에는 20개의 디렉토리가 존재하고 있다. 모든 디렉토리에 전부 들어가서 일일히 파일을 열고 확인하는 방법도 있겠지만, 문제풀이의 의미가 없어지기 때문에명령어를 통해 문제를 풀어보도록 하겠다. 우선 find의 -size 옵션을 이용하여 inhere 디렉토리 내 1033byte인..
[OverTheWire Bandit] Level 4 → 5 문제 풀이 Level 4 → 5 문제 풀이 드가자. 문제를 보면 inhere 디렉토리 하위에 사람이 읽을 수 있는 파일이 1개 있다고 한다. 이 파일에 다음레벨로 갈 수 있는 패스워드가 있다. ls를 통해 inhere 디렉토리는 홈디렉토리 밑에 있음을 확인하였고, inhere 디렉토리 하위에는 10개의 파일이 존재했다. 물론 일일히 다 열어봐도 문제는 풀리겠지만, 문제의 취지에 맞지않기 때문에 명령어를 통해 풀어보도록 하겠다. 우선 inhere 디렉토리 안에 있는 파일들의 종류를 확인하기 위해 find와 file 명령어를 사용하였다. find의 -exec 옵션을 이용하여 file 명령어를 실행시켰고, 그 결과 -file07만 ASCII문자로 된 텍스트 파일임을 확인할 수 있었다. 즉 -file07 파일만이 사람이 ..
[OverTheWire Bandit] Level 3 → 4 문제 풀이 Level 3 → 4 문제 풀이 드가자 문제를 보면 inhere 디레고리 안에 숨겨진 파일을 보면 다음 레벨로 갈 수 있는 패스워드를 알 수 있다고 한다. ls를 통해 inhere 디렉토리는 홈디렉토리 하위에 있음을 확인할 수 있다. inhere 디렉토리 내 숨김파일까지 확인하기 위해 ls에 -a 옵션을 붙여 명령을 실행한다. ls -a 명령을 통해 hidden 파일이 숨겨져 있음을 확인할 수 있다. 읽어보자 패스워드를 확인할 수 있다. 끝!
[OverTheWire Bandit] Level 2 → 3 문제 풀이] Level 2 → 3 풀이 드가자 문제를 보면 홈디렉토리에 있는 'spaces in this filename'이라는 파일에 다음 레벨로 갈 수 있는 패스워드가 있다는 것을 알 수 있다. 근데 명령어는 공백을 기준으로 명령어, 옵션, 인자 등을 구분하기 때문에 파일 이름을 그대로 입력할 경우 정상적으로 읽히지 않는다. 즉 이문제의 핵심은 공백이 포함된 파일이름을 하나의 문자열로 사용할 수 있도록 하는것에 있다. 방법은 크게 2가지가 있다. 따옴표를 이용하여 문자열임을 표현한다. 역슬래쉬를 이용하여 공백을 구분자가 아닌 일반 문자로 처리한다. 우선 ls를 통해 파일을 확인해보면 파일이름에 공백이 포함되어 있음을 확인할 수 있다. 첫번째 방법은 따옴표를 이용해서 파일명을 감싸는 것이다. 따옴표로 깜싸진 문자열..
[OverTheWire Bandit] Level 1 → 2 문제 풀이 Level 1 → 2 풀이 드가자. 다음 레벨로 가기위한 패스워드는 홈디렉토리에 있는 -라는 이름을 가진 파일에 있다고 한다. 그럼 그냥 - 파일을 cat으로 읽어보자 될리가 없지. 되면 레벨 1과 다를게 없으니... 안되는 이유는 - 가 예약어이기 때문이 아닌가 싶다. -는 명령어 뒤에 사용되는 옵션을 표현할때 사용되기 때문에 cat - 이런식으로 입력하면 cat의 옵션형태로 입력될 것이다. 그렇기 때문에 우리는 -가 예약어의 역할이 아니며, 읽고자 하는 파일임을 알려주기 위해 두가지 방법을 이용할 수 있다. 파일명만 입력하지 않고 경로형태로 입력한다. Redirection()을 이용하여 입력한다. 일단 첫번째 방법인 경로형태로 입력하는 방법이다. 순서대로 절대경로, 상대경로 방식이다. 경로 형태로 입..
[OverTheWire Bandit] Level 0 → 1 문제 풀이 Level 0 → 1 풀이 드가자. 문제를 살펴보면, readme라는 파일이 홈디렉토리에 존재하며, readme 파일안에는 다음 레벨로 접근하기 위해 필요한 패스워드가 있음을 알려주고 있다. 찾아낸 패스워드는 bandit1계정으로 접속하기 위한 패스워드이며, 이를 통해 다음레벨로 넘어갈 수 있다. 자 그러면 readme를 읽어보자. readme 파일에 bandit1에 해당하는 PW가 있음을 확인할 수 있다. 끝!!
[OverTheWire Bandit] Level 0 문제 풀이 OverTheWire Bandit은 리눅스 다루는 실력을 향상시킬 수 있는, 리눅스 명령어 관련 문제들이다. 기본 실력을 쌓는데 좋으니 풀어보도록 하자. 입벌려 Level 0 풀이 들어간다. Goal을 읽어보면 SSH로 Bandit 서버에 접속하는것이 문제인듯 하다. Level도 1이 아닌 0인것을 보면 문제라기 보다는, 약간 책으로 치면 머리말? 프롤로그? 정도 되는 것 같다. 주어진 정보대로 ssh bandit0@bandit.labs.overthewire.org -p 2220 명령어를 이용하여 서버에 접속해보자. 접속은 잘 이루어졌고, 서버에서 사용중인 Linux 커널이 궁금하여 cat /proc/version 명령어를 사용하여 확인해보았다. debian 계열의 Linux임을 확인할 수 있었다. (문..