리눅스 워게임 bandit (overthewire.org) 30 Level -> 31 Level
·
Wargame/Linux_bandit
Level 29에서 가져온 키 값을 복사해서 bandit31에 접속해 보자. 힌트는 뭐 git 문제들은 다 똑같은 거 같다. (설명 생략) (생략) README.md 파일을 읽어보니 그냥 비어있는 파일을 주고 그냥 웃고 끝이다...? 뭘 해야 하지? 일단 전에 썼던 방법들인 git log , git branch -a를 봤더니 딱히 뭐 힌트 될 게 없는 거 같다. 그러면 막일 밖에 없다고 생각하여 모든 파일들을 다 뜯어보자. 숨김 디렉터리인 '. git'에 들어가 모든 파일을 확인 각 파일 타입을 확인한 뒤 ASCII Text 만 일단 확인해본 결과 'packed-refs' 파일이 수상해 보인다 분명 브랜치는 master 밖에 없었는데 secret 이 있는 걸로 보인다. git show를 이용해서 Secr..
리눅스 워게임 bandit (overthewire.org) 29 Level -> 30 Level
·
Wargame/Linux_bandit
Level 28에서 가져온 키 값을 복사해서 bandit29에 접속해 보자. 힌트를 보면 전에 문제하고 똑같은 힌트를 준다. 똑같이 임시 디렉터리에다가 git clone 받을 준비를 하자 (생략) README.md 파일을 읽어보니 'username'은 있지만 password는 없는 걸로 보인다. in production이라고 하는 걸 보니 다른 저장소가 있는지 확인해 보자. git log를 해도 딱히 힌트는 없다. git branch 명령어에서 -a 옵션을 주었다. git branch -a : 현재 저장소에 있는 모든 브랜치 목록을 표시함 이러면 현재 내가 어디 Branch에 있는지 알 수 있다 현재는 Masster Branch 에 있는 걸로 확인할 수 있다. branch에 대한 설명을 하자면 코드의 분..
리눅스 워게임 bandit (overthewire.org) 28 Level -> 29 Level
·
Wargame/Linux_bandit
Level 27에서 가져온 키 값을 복사해서 bandit28에 접속해보자. 저번 문제랑 똑같은 힌트다. 어째 힌트가 성의가 없어 똑같이 '/tmp' 디렉터리에다가 파일을 받을 곳을 만들어놓자. bandit27 문제랑 똑같이 git에서 'repo' 를 받아보자. git 에서 가져온 README.md라는 text 파일을 읽어봤는데 password 부분이 'xxxxxxxxxx'로 되어있다. 이 부분에서 구글링 해본 결과 git log , git show 명령어를 이용하면 될 거 같다. README.md 파일을 총 3번을 걸쳐서 커밋을 했다. (커밋은 쉽게 말하면 깃허브에 README.md 파일을 올린 것) 맨 밑에 있는 log 가 제일 처음한 커밋이고 올라갈수록 최신 커밋이다. 맨밑 커밋부터 메모를 보면 RE..
리눅스 워게임 bandit (overthewire.org) 27 Level -> 28 Level
·
Wargame/Linux_bandit
Level 26에서 가져온 키 값을 복사해서 bandit27에 접속해 보자. 먼저 힌트를 같이 보자. 포트 2220을 통해서 localhost의 'ssh://bandit27-git@localhost/home/bandit27-git/repo' 주소에 git 저장소가 있다는 거 같다 비밀번호는 bandit27 비밀번호와 동일하다고 한다 명령어 git를 이용해야 할 거 같다. 먼저 외부에서 복제를 하려면 일시적으로 파일을 저장하는 디렉터리인 '/tmp'에 만들어 보도록 하자. bandit28 -> git 두 개의 디렉터리를 만들었다 혹시나 권한문제가 나오면 보기 쉽게 설명하기 위해 하나 더 만들었다. 이제 'git clone' 명령어를 써서 소스 코드에 있는 'repo'를 복제하려고 했는데 port 22를 썼..
리눅스 워게임 bandit (overthewire.org) 26 Level -> 27 Level
·
Wargame/Linux_bandit
Level 25에서 가져온 키 값을 복사해서 bandit26에 접속해 보자. 비밀번호를 입력해서 들어가려는 찰나 화면이 종료된다. bandit25 -> bandit26 문제에서 Shell에서 종료시켰기 때문이다 그러면 bandit25로 다시 접속해 보자. bandit25에서 bandit26 접속 방법은 전에 있는 문제를 살펴보면 된다. https://grayom.tistory.com/27 리눅스 워게임 bandit (overthewire.org) 25 Level -> 26 Level Level 24에서 가져온 키 값을 복사해서 bandit25에 접속해 보자. 힌트 bandit26의 shell 이 /bin/bash 가 아닌 다른 무언가라고 합니다. 작동원리를 알아야 할 필요가 있어 보입니다. 먼저 band..
리눅스 워게임 bandit (overthewire.org) 25 Level -> 26 Level
·
Wargame/Linux_bandit
Level 24에서 가져온 키 값을 복사해서 bandit25에 접속해 보자. 힌트 bandit26의 shell 이 /bin/bash 가 아닌 다른 무언가라고 합니다. 작동원리를 알아야 할 필요가 있어 보입니다. 먼저 bandit25에서 확인해 보니 'bandit26.sshkey'가 보인다 sshkey를 이용하여 bandit26에 접속할라 했더니 22로 접속하지 말라고 한다. 2220으로 지정해서 다시 접속해 보자 보면 기존 명령어에서 '-p 2220'만 추가시킨 거다. 접속을 성공했지만 접속 성공하자마자 바로 쫓아낸다. 힌트에서 봤지만 shell 이 /bin/bash 가 아니고 다른 무언가 이기 때문에 그런 거인 거 같다. bandit25에 대하여 정보를 나타내는 /etc/passwd를 보면 Userna..
리눅스 워게임 bandit (overthewire.org) 24 Level -> 25 Level
·
Wargame/Linux_bandit
Level 23에서 가져온 키 값을 복사해서 bandit23에 접속해 보자. 포트 30002에서 bandit24의 패스워드와 4자리 핀 코드를 받으면 bandit25의 패스워드를 제공한다고 한다 brute-force 방식으로 0000 부터 9999까지 모든 4자리 숫자 조합을 시도하라고 합니다 brute-force 방식은 무작위 대입 공격을 쓰라는 거 같다. nmap를 사용하여 30002 포트가 열려있는지 확인해 보고 아무렇게 입력해 보니까 Fail! ~ 이 뜬다. 일단은 새로운 스크립트를 만들어야 할 거 같으니 임시 디렉터리에다가 ncfor를 만든다. 반복문으로 만들어서 해보자 echo는 출력문 (print)라고 생각하면 된다 $i는 i 값 호출이다 스크립트를 너무 간단하게 짜서 그런지 파이프를 많이?..
리눅스 워게임 bandit (overthewire.org) 23 Level -> 24 Level
·
Wargame/Linux_bandit
Level 22에서 가져온 키 값을 복사해서 bandit23에 접속해 보자. cron이라는 시간 기반 작업 스케줄러를 통해 자동으로 실행되는 프로그램을 확인하라고 한다. /etc/cron.d/ 디렉터리에서 스케줄 구성을 찾아 실행되는 명령을 알아내야 한다고 한다 자신만의 스크립트를 만들라고도 한다. 자주 들어오는 디렉터리이다. cronjob_bandit23를 확인해 보자. 이 스크립트에 내용을 설명하자면 '/var/spool/$myname/foo' 디렉터리에 있는 스크립트 파일을 찾아서 소유자가 'bandit23'인 경우에만 실행하고 60초 지나서? 삭제한다. 일단 /var/spool/$myname/foo 경로에 bandit24 비밀번호를 얻을 수 있는 셸 파일을 만들라고 하는 거 같다. 임시파일 디렉터..
리눅스 워게임 bandit (overthewire.org) 22 Level -> 23 Level
·
Wargame/Linux_bandit
Level 21에서 가져온 키 값을 복사해서 bandit22에 접속해 보자. 주기적으로 실행되는 프로그램이 cron이라는 시간 기반 작업 스케줄러에서 자동으로 실행되고 있다. /etc/cron.d/ 디렉터리에서 해당 설정을 확인하고 실행되는 명령어를 확인해 보라고 한다. 다른 사람들에 의해 쓰인 쏄 스크립트는 유용하다 의도적으로 읽기 쉽게 만들어졌다. 이거까지는 badirt21 하고 과정이 똑같다. 시스템이 부팅할 때 bandit23 권한으로 /usr/bin/cronjob_bandit23.sh 셸 스크립트가 실행 표준출력과 에러, 실행결과를 출력하지 않는다. 매 분마다 bandit23 권한으로 /usr/bin/cronjob_bandit23.sh 스크립트 실행 똑같이 실행결과를 출력하지 않는다. 그러면 뭘..