Wargame

1. 문제 다음 레벨의 비밀번호는 현재 레벨의 비밀번호를 localhost의 30000 포트로 제출하면 된다고 합니다.  2. 명령어nc네트워크에 연결을 읽고 쓰기, 포트 스캔, 리스닝 모드, 클라이언트-서버 테스트 작어 수행nc [옵션] [호스트 주소] [포트 번호] (클라이언트 모드에서 사용)nc -l [옵션] [포트 번호] (서버 모드에서 사용)-l: 리스닝(수신 대기) 모드로 실행합니다.-p [포트 번호]: 로컬 포트 번호를 지정합니다.-u: UDP 모드로 실행합니다.-v: 작업 중 발생하는 메시지를 자세히 출력합니다.-w [초]: 연결 시도 후 대기할 최대 시간(초)을 지정합니다.-e [프로그램]: 연결이 성공하면 지정된 프로그램을 실행합니다.3. 풀이 문제의 의도대로 localhost 3000..
1. 문제 다음 비밀번호는 /etc/bandit_pass/bandit14 에 저장되어 있고 사용자 bandit14만 이것을 읽을 수 있다. 하지만 나는 다음단계로 가는 SSH 개인키를 얻을 수 있다.  2. 명령어SSHssh [계정명]@[원격기기의 주소] ( 기본 사용법 )ssh -p [포트번호] [계정명]@[원격기기의 주소] (기존 포트(22)가 아닌 다른 포트를 사용하여 접속)ssh -i [개인키 파일 경로] [계정명]@[원격기기의 주소] (개인키 파일을 사용하여 접속) 3. 풀이 현재 개인 sshkey를 가지고 있습니다. 따라서 해당 키를 가지고 bandit14유저에 접속해보겠습니다.   해당 코드로 ssh 원격 접속을 시도합니다.포트는 2220이고 ssh 개인키를 가지고 bandit14이라는 ..
1. 문제 반복적으로 압축된 hexdump 파일의 data.txt 파일에 비밀번호가 저장되어 있습니다. /tmp 아래에 작업 디렉터리를 만들고 datafile을 복사하고 이름을 변경하라고 한다.  2. 풀이 data.txt를 확인해보니 ASCII 문자로 되어있는 hexdump 파일입니다. 문제의 조언대로 /tmp 아래에 작업 디렉터리를 만들겠습니다.   해당 명령어로 /tmp 아래에 woo 디렉터리를 만들었습니다. 이후 cp 명령어로 해당 파일을 복사했습니다. mkdir /tmp/woocp data.txt /tmp/woo  자 이제 hexdump로 되어있는 파일을 다시 원문으로 바꿔봅시다. xxd 명령어는 읽을 수 없는 데이터를 16진수로 형식의 데이터의 hexdump로 바꿔주거나 다시 복구 시킵니다.따..
1. 문제 비밀번호는 data.txt 파일에 저장되어 있고, 모든 소분자와 대분자들이 13자리씩 밀려있다. 카이사르 암호 방식을 사용한것으로 보인다. 따라서 모든 문자열들을 13자리 씩 당겨줘야 한다. 2. 명령어2.1 tr텍스트 스트림에서 문자를 변환하거나 삭제하는 데 사용됩니다.echo "hello world" | tr 'a-z' 'A-Z' (주어진 문자를 다른 문자로 변환)echo "hello world" | tr -d 'a-e' (특정 문자 삭제) 3. 풀이해당 명령어로 문자 집합을 변환하여 다시 13자리 씩 밀어서 치환한다. cat data.txt | tr 'A-Za-z' 'N-ZA-Mn-za-m'
1. 문제 패스워드는 data.txt 파일안에 잇는데 base64로 인코딩된 데이터를 포함하고 있습니다.  2. 명령어2.1 base64bsae64 인코딩 또는 디코딩하는 데 사용됩니다.base64 filename > outputfile (인코딩)base64 -d filename > outputfile (디코딩) 3. 풀이 data.txt 파일을 보니 base64 인코딩 하고 패딩까지 된 것을 확인할 수 있다.   base64 -d 명령어로 디코딩할 수 있다.
1. 문제 data.txt 안에 있는 여러개의 = 으로 나눠져있는 곳에 저장되어 있다고 합니다.  2. 명령어2.1 strings바이너리 파일에서 출력 가능한 문자열을 찾아서 표시하는데 사용 strings filename (출력 가능한 문자열 찾기) 3. 풀이 grep 으로 일단 ======= 문자열을 찾으려고 했는데 grep 명령어는 기본적으로 text를 찾기 위해서 사용되는 명령어라서 바이너리 파일에는 기본 명령으로는 사용할 수 없습니다.하지만 -a 옵션을 사용하면 바이너리 파일에서도 text를 찾을 수 있습니다. 또한 strings 명령어로 출력 가능한 문자들만 출력하면 된다.   대충 ======= 추가 해놓고 해보자 strings data.txt | grep -a "======"
1. 문제 data.txt 안에 저장되어 있고 딱 한번만 나타나는 텍스트 줄이라고 합니다. 2. 명령어2.1 uniq텍스트 파일에서 중복된 줄을 찾아내거나 제거하는 데 사용 주로 sort명령어로 정렬한 후 사용한다.uniq 파일명 (파일에서 연속적으로 중복된 줄을 제거해서 표시)sort filename | uniq 2.2 sort파일 내용을 행 단위로 정렬할 때 사용 sort 파일명 (알파벳순으로 정렬)sort -n 파일명 (숫자 기준으로 정렬)sort -r 파일명 (역순으로 표시)sort -u 파일명 (중복된 줄을 제거하며 정렬) 3. 풀이 어 이렇게 저장되어 있다.......  uniq 명령어는 중복 줄만 제거 가능하기 때문에 sort 명령어로 줄 단위로 정렬을 실시한다. sort data.txt |..
1. 문제 data.txt 라는 파일안에 millionth 단어 옆에 비밀번호가 있다고 한다.  2. 명령어2.1 head파일의 시작 부분에서 특정 수의 줄을 출력할 때 사용 head 파일명 (파일 첫10줄 출력)head -n N 파일명 (n줄 출력하기) 2.2 grep특정 패턴이나 문자열을 검색할 때 사용 grep "검색할 문자열" 파일명 (파일 내에서 문자열 검색)grep "검색할 문자열" 파일명1 파일명2 (여러파일 내에서 문자열 검색)grep -r "검색할 문자열" 디렉터리경로 (디렉터리 내 모든 파일에서 문자열 검색)grep -i '검색할 문자열' 파일명 (대소문자 구분하지 않고 검색)grep -E '정규표현식' 파일명 (정규 표현식 사용해서 검색)3. 풀이 head 명령어로 data.txt를 ..
1. 문제 server 어딘가에 저장되어 있고 다음과 같은 특성을 가진다. 1. bandit7 이라는 user가 소유하고 있다.2. bandit6 그룹에 소유되어 있다. 3. 33bytes의 사이즈이다.  2. 풀이 / 디렉터리 부터 시작해서-type f (일반 파일 대상)-user bandit7  유저가 bandit7인 것 검색 -group bandit6  그룹이 bandit6인 것 검색-size 33c 33byte 크기의 파일을 검색해보자   find / -type f -user bandit7 -group bandit6 -size 33c  permission denied가 매우 많다. 이 중에서 접근 권한이 있는 파일을 보니 bandit7.password라는 파일이 보인다. cat으로 읽으니 비밀번호..
스우스우03
'Wargame' 카테고리의 글 목록 (2 Page)