본문 바로가기

전체 글81

OverTheWire Bandit Level 8 → Level 9 비밀번호는 data.txt 파일에 한 번만 나타나는 유일한 텍스트이다. Level 8에서 비밀번호 얻기 Level 8로 로그인 후(Level 8 로그인 하는 법 보러가기), ls 명령어를 통해 존재하는 파일을 확인한다. data.txt파일의 존재를 확인했다. 확인된 data.txt 파일을 열어보니 위 사진과 같이 알 수 없는 문자들이 나열된 것을 볼 수 있다. 이 문자들을 쉽게 보기 위해 sort 명령어를 사용한다. sort명령은 파일 내용을 정렬하는 명령이다. sort data.txt를 입력한 결과 다음 사진처럼 나타난다. 정렬된 문자열은 확인했지만, 한 번만 나타나는 문자열을 확인하기엔 쉽지않다. 그렇기 때문에 uniq 명령어로 중복된 문자열을 관리해서 보기 쉽게 만들어줘야한다. uniq 명령어의 옵.. 2020. 5. 21.
OverTheWire Bandit Level 7 → Level 8 비밀번호는 millionth 단어 옆의 data.txt 파일에 저장돼있다. Level 7에서 비밀번호 얻기 Level 7로 로그인 후(Level 7 로그인 하는 법 보러가기), ls 명령어를 통해 존재하는 파일을 확인한다. data.txt 파일이 존재한다. 사실 Level7은 말장난 문제다. cat 명령어로 파일을 읽어봤을 때, 매우 많은 문자가 나타나서 정말 백만문자 뒤에 있는 게 비밀번호인가? 하고 착각하기도 했지만, 사실 이 문제는 grep이라는 명령어를 이용해 풀 수 있는 문제다. grep명령이란, 파일에서 특정한 패턴/문자열을 찾아주는 명령이다. data.txt파일을 읽어주고, millionth라는 문자열을 찾아 뒤에 나올 비밀번호를 알아낸다. cat data.txt | grep milliont.. 2020. 5. 21.
OverTheWire Bandit Level 6 → Level 7 비밀번호는 서버의 어딘가에 저장되어있고, 다음과 같은 속성이 있다. - 유저: bandit7 - 그룹: bandit6 - 크기: 33bytes Level 6에서 비밀번호 얻기 Level 6로 로그인 후(Level 6 로그인 하는 법 보러가기), ls 명령어를 통해 존재하는 파일을 확인한다. 아무것도 확인되지 않는다. 문제에서 서버 어딘가에 비밀번호가 있다고 알려주었으니, find명령어를 사용해줘야한다는 것을 알 수 있다. 추가로 주어진 조건을 활용해보면, find명령어와 함께 아래의 옵션을 사용할 수 있다. -user -group -size user에는 bandit7이 들어가고, group에는 bandit6, size는 33c를 써준다. 여기서 bytes가 c라는 문자를 써줘야하는 것이 기억이 안 났다면.. 2020. 5. 20.
OverTheWire Bandit Level 5 → Level 6 비밀번호는 inhere 디렉토리의 어쩌구.. 각자 해석하자 Level 5에서 비밀번호 얻기 Level 5로 로그인 후(Level 5 로그인 하는 법 보러가기), ls 명령어를 통해 존재하는 파일을 확인한다. 마찬가지로 cd명령어로 inhere 디렉토리 이동 후, ls로 확인하는데.. 너무 많다. 사실 얘도 노가다 하면 안 될 건 없는데, 좀 더 쉬운 방법은 find 명령어를 사용하는 거다. find 명령어 사용법은 find -help를 입력하면 나온다. 많고..많은... 명령어 중... 문제에 이런 내용이 있었다. 아마도 비밀번호가 들어있는 파일의 크기를 알려준 거겠지.. 그래서 find -size 옵션을 써줄 생각이다. 근데 그냥 1033만 써주면 안 나온다. 왜냐면 1033이 바이트인지, 기가바이트인.. 2020. 5. 9.
OverTheWire Bandit Level 4 → Level 5 비밀번호는 inhere 디렉토리에 저장되어있고,, 나머지는 각자 해석하자. Level 4에서 비밀번호 얻기 Level 4로 로그인 후(Level 4 로그인 하는 법 보러가기), ls 명령어를 통해 존재하는 파일을 확인한다. inhere 디렉토리로 이동 후, 다시 ls 명령어 입력하면 사진과 같이 10개의 파일이 확인된다. 노가다로 하나씩 확인해보면 되는데, Level 2 때처럼 파일명 앞에 '-'기호가 붙어있으면, 그게 파일명이라고 인식하지 않는다. (Level 2 보러가기) 2020. 5. 9.
OverTheWire Bandit Level 3 → Level 4 비밀번호는 inhere 디렉토리의 숨겨진 파일에 저장되어있다. Level 3에서 비밀번호 얻기 Level 3로 로그인 후(Level 3 로그인 하는 법 보러가기), ls 명령어를 통해 존재하는 파일을 확인한다. inhere이라는 디렉토리가 확인된다. cd명령어를 통해 inhere 디렉토리로 이동 후, 다시 ls를 한다. 역시나 숨겨진 파일이기 때문에, 나타나지 않는다. 이때 사용할 명령어가 '-a'다. -a 는 숨겨져있는 모든 파일 확인할 수 있는 명령어기 때문에, ls -a 명령어를 입력해서 존재하는 모든 파일을 확인한다. 그러면, '.hidden'이라는 숨겨진 파일이 확인된다. 마찬가지로 비밀번호 얻고 로그아웃 Level 4 로그인 터미널에 ssh bandit4@bandit.labs.overthewi.. 2020. 5. 9.
OverTheWire Bandit Level 2 → Level 3 비밀번호는 home 디렉토리의 'spaces in this filename' 이라는 이름을 가진 파일에 저장되어있다. Level 2에서 비밀번호 얻기 Level 2로 로그인 후(Level 2 로그인 하는 법 보러가기), ls 명령어를 통해 존재하는 파일을 확인한다. 'spaces in this filename' 라고 저장되어있는 파일이 존재하는 것을 알 수 있따. 리눅스에서는 띄어쓰기마다 파일명을 구분하기 때문에, cat spaces in this filename 이라고 쓰면, 'spaces in this filename'이 아닌 'spaces' 'in' 'this' 'filename'과 같이 띄어쓰기를 기준으로 다 다른 파일이라고 구분한다. 터미널에서 긴 문자열을 쉽게 작성하게 도와주는 단축키?가 존재.. 2020. 5. 9.
OverTheWire Bandit Level 1 → Level 2 비밀번호는 home 디렉토리에 있는 ' - ' 라는 파일명에 저장되어있다. Level 1에서 비밀번호 찾기 Level 0과 마찬가지로 ls 명령어를 통해 존재하는 파일을 확인한다. - 라는 이름의 파일이 존재하는 것을 확인했는데, 일반적인 형식으로 cat 명령어를 사용하여 파일을 읽으려고 하면 읽히지 않는다. 이유는 리눅스에서 ' - ' 기호가 옵션이기 때문에, - 를 파일명으로 받아들이지 않는다. 따라서 일반적인 cat - 이 아닌, cat ./- 로 입력해서 현재위치의 - 파일을 열라고 지시해야 한다. 그럼 위와 같이 문자가 나타나는데, 이것이 Level 1에서 Level 2로 갈 수 있는 암호이다. 알아낸 암호를 기록한 후, exit를 입력해 로그인 되어있는 주소에서 빠져나와, 다음 레벨로 로그인할.. 2020. 5. 9.
OverTheWire Bandit Level 0 → Level 1 내용을 해석해보면... Level 0과 대부분 동일하고, 비밀번호는 Level 0에서 찾은 내용을 입력하면 된다. ssh 명령어를 사용할 때, 사용자명은 bandit1을 입력해주면 된다. 그리고 이 레벨을 해결하기 위해 저것들(ls, cd, ...)이 필요할 것이다. 라고 알려준다. Level 0 포스팅 보러가기 Level 1 로그인하기 칼리 접속 후, 터미널에 ssh bandit1@bandit.labs.overthewire.org -p 2220 를 입력한다. (리눅스에서 복사, 붙여넣기는 Ctrl+Shift+C,V) Level0에서 푼 내용을 통해, 비밀번호가 boJ9jbbUNNfktd78OOpsqOltutMc3MY1이라는 것을 알 수 있다. 이때 비밀번호는 입력해도 보이지 않는다. 그럼 위 사진과 같.. 2020. 5. 9.
OverTheWire Bandit Level 0 내용을 해석해보면, 이 레벨(0)의 목표는 SSH를 사용해 게임(Wargames)에 로그인하는 것이며, 연결할 호스트 주소는 bandit.labs.overthewire.org이고, 접속할 포트는 2220이다. 사용자명은 bandit0이고, 비밀번호는 bandit0이다. 이 내용을 통해 Level0을 풀어보자. 알아낸 정보 사용할 명령어: ssh 호스트 주소: bandit.labs.overthewire.org 포트: 2220 사용자명: bandit0 비밀번호: bandit0 ssh는 해당 주소로 원격 로그인이 가능한 명령어다. 사용법은 아래와 같다. ssh [옵션] [주소] 혹은 다음과 같이 입력할 수 있다. ssh 사용자명@서버주소 ssh bandit0@bandit.labs.overthewire.org .. 2020. 5. 9.
DLL에서 DLL 불러들이기 보호되어 있는 글 입니다. 2020. 4. 11.
객체지향프로그래밍 rep02 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 #include #include using namespace std; void main() { int i, j; cout 2020. 4. 10.