SMALL

Bandit 12

[리눅스] Bandit level 28 -> level 29

[문제] [풀이] git 파일을 내려받기 위해 /tmp/sik 폴더를 만들어 이동하였다. git clone 명령으로 문제에서 제시된 것을 내려받을 수 있었다. repo 폴더 아래에 README.md 파일이 존재하였고, 이를 읽어보니 password가 xxxxxxxxxx로 되어있었다. password가 변경되었던 것 같아 log를 확인하였다. 로그를 확인하니 이전의 password를 확인할 수 있었다. [핵심] usage: git [--version] [--help] [-C ] [-c name=value] [--exec-path[=]] [--html-path] [--man-path] [--info-path] [-p | --paginate | --no-pager] [--no-replace-objects] [..

Wargame/bandit 2021.07.24

[리눅스] Bandit level 27 -> level 28

[문제] [풀이] git을 이용해 문제를 해결해야 함을 알 수 있었는데, 문제 해결에 앞서 git이 설치 되어 있는지 확인해보았다. home 디렉토리에서 문제에서 제시한 경로에 대해 다운하려고 하니 권한이 없었다. -> 다운로드를 비롯한 쓰기 권한은 임시 폴더인 /tmp 디렉토리에만 있기 때문! 이에 /tmp/sik 이라는 임시 폴더를 만든 후 해당 경로로 이동하여 git clone 명령을 사용하니 내려 받을 수 있었다. 다운 후 파일 목록을 확인하니 repo 라는 디렉토리가 생성되었고, 해당 폴더로 이동하니 README 파일이 존재하였다. 파일을 읽은 결과 bandit28의 password를 획득할 수 있었다.

Wargame/bandit 2021.07.24

[리눅스] Bandit level 25 -> level 26 & level 26 -> level 27

[문제] [풀이] ls 명령으로 파일 목록을 확인해보면 bandit26.sshkey 파일을 확인할 수 있다. 이전과 동일한 방법으로 ssh 연결을 시도해볼 수 있다. 그런데 연결이 계속 끊어지고 있었다. bandit26 의 passwd 파일을 읽어보니 /usr/bin/showtext에 대한 경로가 나와있었다. 파일을 읽어보니 more 명령이 실행되면 ~/text.txt 파일이 열리는 것을 볼 수 있었다. more 명령어는 파일 내용이 길 때 끊어가면서 읽을 수 있는 명령이다. 그러기 위해서는 bandit26의 연결 내용이 조금씩 출력되게 해야하기 때문에 창의 크기를 줄여주면 해결할 수 있다. more 창이 나오게 되면 v로 vi 에디터를 켤 수 있다. 해당 명령을 입력해주면 명령에 대한 결과가 vi 창에..

Wargame/bandit 2021.07.20

Bandit Level 11 -> Level 12

[문제] [풀이] > ls -al 명령어를 통해 data.txt 파일을 확인할 수 있다. > file 명령어를 통해 data.txt 파일이 text 파일임을 확인할 수 있다. > cat 명령어를 통해 data.txt 에 rot13된 문자열이 들어있음을 확인할 수 있었다. > tr 명령어를 통해 문자열을 치환한 결과 패스워드를 획득할 수 있었다. > 대.소문자 모두 13만큼 이동한 위치의 알파벳으로 치환되므로 범위 지정 시, 대.소문자 모두 기입해야 한다. > (A부터 Z까지)를 (N부터 Z, A부터 M까지)로 치환, (a부터 z까지)를 (n부터 z, a부터 m까지)로 치환한다. [핵심] 1. tr(translate) 명령어 > 특정 문자를 치환하거나 삭제하는 명령어 > tr [option] 문자열1 [문..

Wargame/bandit 2021.04.04

[리눅스] Bandit Level 7 -> Level 8

[문제] password는 data.txt 파일 속의 millionth 단어 옆에 존재한다. [풀이] > ls -al 명령어를 통해 data.txt 파일을 찾을 수 있었다. > cat 명령어로 data.txt 파일을 실행한 결과 한눈에 파악하기 어려워 다른 방안을 찾아야 한다. > 출력 결과를 보니 단어와 password 과 같은 형태의 문자열이 매칭되는 것 같다. > grep 명령어를 이용해 millionth를 data.txt 속에서 찾을 수 있고, 그 옆에 존재하는 패스워드를 확인할 수 있다. 이러한 방법도 있음! [핵심] grep 명령어 > 입력으로 전달된 파일의 내용에서 특정 문자열을 찾고자할 때 사용하는 명령어 > grep [option] [pattern] [file] 의 형태로 사용 상세한 설..

Wargame/bandit 2021.04.04

[리눅스] Bandit Level 6 -> Level 7

[문제] 서버 어딘가에 password 파일이 존재한다고 하는데, 그냥은 찾을 수 없겠죠? 문제의 조건을 보니 user는 bandit7, group은 bandit6 이면서 크기가 33바이트인 파일을 찾아야 하네요! 바로 시작해보도록 하겠습니다-! [풀이] 이전과 달리 홈디렉토리에서 힌트를 얻을 수 없어보이네요.. 그렇다면 홈디렉토리에서 검색하는 것이 아니라 최상위 폴더라고 하죠? root 로 이동하여 검색을 해봐야할 것 같네요! 지난번에 홈디렉토리는 ~로 표시한다는 것을 알려드렸는데요! root 는 /로 표시한답니다. 그럼 두가지의 방법을 생각해볼 수 있을 것 같아요! 1. 홈디렉토리에서 /폴더로부터 검색하도록 명령어를 입력한다. 2. root 폴더로 이동하여 검색한다. 첫 번째 방법부터 진행해보겠습니다..

Wargame/bandit 2021.04.04

[리눅스] Bandit Level 5 -> Level 6

[문제] 문제를 보니 이번에도 inhere 디렉토리 속에 password 가 존재하는군요! 그런데 몇 가지 조건이 생겼습니다. 인간이 읽을 수 있고, 1033 바이트이면서, 실행 불가능한 파일을 찾아야 한다. 무엇을 의미할지 문제를 통해 살펴보겠습니다. [풀이] ls -al 명령어를 통해 inhere 디렉토리를 확인할 수 있고, 바로 inhere 디렉토리로 이동해보겠습니다. 지난 레벨과 달리 이번에는 inhere 디렉토리에 다수의 디렉토리들이 존재하네요! 여기서 다시 한 번 문제의 조건을 상기시켜 볼까요? 인간이 읽을 수 있고, 1033 바이트이면서, 실행 불가능한 파일을 찾아야 한다. '검색'이 필요하다는 생각이 드는데요.. 마침 리눅스에는 검색 기능을 지원하는 명령이 있죠! 바로 find 와 grep..

Wargame/bandit 2021.04.04

[리눅스] Bandit Level 4 -> Level 5

[문제] 문제의 핵심은 inhere 디렉토리에서 사람이 읽을 수 있는 파일을 찾아야 하는 것입니다! 아마 그 파일 속에 password가 존재하겠죠? 바로 시작해보겠습니다--! [풀이] bandit4 계정으로 접속해서 가장 먼저 해야하는 일은 뭐다?? --> ls 로 파일 및 디렉토리 리스트 확인하기! 확인해보겠습니다 ㅎㅎ 이번 문제에도 inhere이라는 디렉토리가 존재하는데요! cd 명령어를 통해 inhere 디렉토리로 이동해보겠습니다. 지난 레벨에서 현재 경로 확인하는 법 알려드렸는데 기억나시나요? 기억 안나시는 분은 bandit level 3 -> level 4 를 참고해주세요! pwd 명령어를 통해 현재 위치가 inhere 디렉토리에 있음을 확인할 수 있습니다. 무사히 이동했으면 inhere 디렉..

Wargame/bandit 2021.04.03

[리눅스] Bandit Level 3 -> Level 4

[문제] password가 inhere이라는 디렉토리 속에 숨김파일로 존재한다고 하네요! 숨겨진 파일을 어떻게 확인해야 할지 시작해보겠습니다아-! [풀이] bandit3에 접속해보겠습니다. (접속방법은 bandit0에 자세히 나와있어요!) 쉘에 접속하면 가장 먼저 해야될 일은 뭐다??! --> ls 명령으로 파일이나 디렉토리 확인하기! ls -al 명령어를 통해 홈디렉토리의 모든 파일과 디렉토리를 확인하니 inhere 디렉토리가 있군요! 그렇다면 inhere 디렉토리 속으로 이동해봐야겠네요! 더보기 참! 디렉토리와 파일에 대해서 설명 없이 지금 레벨까지 와버렸지만.. 간단하게 말씀드리자면 디렉토리는 흔히 윈도우의 폴더와 동일하고, 내부 파일은 txt, .c, .py, .cpp를 비롯해 바이너리 등을 포함..

Wargame/bandit 2021.04.03

[리눅스] Bandit Level 2 -> Level 3

[문제] 다음 레벨을 위한 password는 홈디렉토리 아래에 존재하는 파일에 있다고 하는데요. 그런데, 파일 이름에 공백을 포함하고 있어 어떻게 읽어야 할 지 알아보아야 할 것 같네요. 바로 시작하겠습니다! [풀이] 이젠 접속 방법에 대해서는 생략해도 되겠죠?ㅎㅎ 앞선 단계에서 구한 password를 통해 shell에 접속해줍니다. ls -al 명령어로 파일과 디렉토리 목록을 확인하니 spaces in this filename 라는 이름을 가진 파일을 볼 수 있었는데요. 이 파일을 읽어야 할 것 같습니다. ​접속한 bandit2 계정으로는 역시나 읽기 권한만 있네요. 바로 읽어보도록 하겠습니다. 그. 런. 데. 읽어 보셨나요?! 이렇게 평소에 쓰던 형태로 입력하게 되면 그런 파일이 없다고 에러가 발생하..

Wargame/bandit 2021.04.03
LIST