일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 시스템
- 리눅스 커널
- Bandit
- radare2
- multiplexing
- css
- 시스템프로그래밍
- write up
- 리버싱
- Pwnable.kr
- kernel
- 리눅스커널
- 워게임
- Leviathan
- pwncollege
- 포너블
- 시스템해킹
- wargame
- 하드링크
- 리눅스
- pwn.college
- C언어
- 시그널
- 어셈블리어
- C++
- 프로그래밍
- 컴퓨터구조
- 커널
- 알고리즘
- 시스템 프로그래밍
- Today
- Total
Computer Security
#7 Wargame bandit 5 (Level9 ~ Level11), string,base64명령어 본문
Level9 -> Level10
다음 레벨의 비밀번호는 몇 개의 '=' 문자가 앞에 오는 사람이 읽을 수 있는
몇 가지 문자열 중 하나로 data.txt 파일에 저장됩니다.
위 조건을 해결 해보자!
1. 이 문제를 해결하기 위해선 저번시간에 공부했던 파이프 라인과 grep, string 을 이용한다.!
string이란?
string 명령어는 실행파일의 ASCII 문자를 찾아 화면에 출력한다.
바이너리 파일 또는 오브젝트 파일에 있는 모든 인쇄 가능한 문자열을 추출하여 출력하기 때문에, 분석할 때 많은 도움이 된다.
strings [파일명]
-a ---all: 파일을 검색하고 데이터 섹션까지 검색
-f --print-file-name : 각 문자열 전에 파일명을 출력한다.
-n --bytes=[number] : 찾다&적어도 모든[숫자] 문자에서 NULL로 끝나는 순서로 출력(default 4).
-t --radix={o,d,x} : 문자열의 위치를 8, 10, 16진수로 출력한다.
-o : 별명 --radix=0
-T --target=<BFDNAME> : 바이너리 파일 형식을 지정한다.
-e --encoding={s,S,b,l,B,L} : 문자의 크기나 에디안을 선택한다.
s= 7-bit , S = 8-bit, {b,l}= 16-bit, {B,L} = 32-bit
@<file> : <file>에서 옵션 정보를 가져온다.
-h --help : 프로그램의 정보를 출력한다.
-v -V --version : 프로그램의 버전을 출력한다.
2. 자 일단, cat 명령어를 이용해 data.txt 가 어떤 내용이 있는지 확인 해보자.
이렇게 data.txt 파일엔 이상한 문자들과 우리가 읽을 수 있는 문자들이 섞여있다.
3.이것들을 걸러주기 위해, string 과 grep , 파이프라인을 통해 내용을 깔끔하게 걸러주자.
4. 패스워드는truKLdjsbJ5g7yyJ2X2R0o3a5HQJFuLk 라는 것을 알 수 있다!
5.위 알아낸 패스워드로 bandit10에 접속 하면 성공!
Level10 -> Level11
다음 레벨의 비밀번호는 base64로 인코딩된 데이터가 포함된 data.txt 파일에 저장됩니다.
위 조건을 해석하여 비밀번호를 알아내 보자!
1. ls , cat data.txt 명령어를 활용해 data.txt 안에 무엇이 들어있는지 확인 해보자.
이상한 알 수 없는 문자들로 구성되어 있다.
2. 리눅스에선 base64 명령어를 통해 base64 인코딩/디코딩을 할 수 있다.
base64 [파일] : 인코딩
base64 -d [파일] : 디코딩
3.인코딩을 먼저 해보았더니, 이상한 문자열들로 가득하다.
4.디코딩을 하니 우리가 찾는 비밀번호 IFukwKGsFW8MOq3IRFqrxE1hxTNEbUPR 가 나왔다!
5.위 알아낸 패스워드로 bandit11에 접속 하면 성공!
'Wargame:Bandit' 카테고리의 다른 글
#9 Wargame bandit 7 (Level13 ~ Level15), ssh,리눅스 디렉토리,nc명령어 (0) | 2022.07.15 |
---|---|
#8 Wargame bandit 6 (Level11 ~ Level13), tr,mkdir,cp,xxd,gzip,bzip2,tar,mv명령어 (0) | 2022.07.14 |
#6 Wargame bandit 4 (Level7 ~ Level9),파이프라인,grep,sort,uniq 명령어 (0) | 2022.07.12 |
#5 Wargame Bandit 3 (Level 5 ~ Level 7) ,ls,cd,find명령어 (0) | 2022.07.11 |
#4 Wargame Bandit 2 (Level 3 ~ Level 5) ,hidden,file명령어 (0) | 2022.07.10 |