일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- splunk db connect
- 오블완
- Path Traversal
- 메타코드
- web3 보안
- web shell
- AWS SSM
- 블록체인
- Session Manager
- 정보처리기사
- 정처기필기
- metacode
- aws lambda
- 보안 그룹
- web3
- 스마트컨트랙트
- metacodem
- ELB
- aws 트리거
- amazon s3 트리거
- systems manager
- 스마트 컨트랙트
- 티스토리챌린지
- 탈중앙화
- web security academy
- File Upload
- 메타코드M
- 정처기 필기
- 정처기
- AWS CLI
- Today
- Total
min8282
Bandit Level 6 -> Level 7 본문
Level Goal
The password for the next level is stored somewhere on the server and has all of the following properties:
- owned by user bandit7
- owned by group bandit6
- 33 bytes in size
Commands you may need to solve this level
ls , cd , cat , file , du , find , grep
이번에는 서버 어딘가에 비밀번호가 들어 있는 파일이 있다고 한다.
전 단계에서 문제에 있는 힌트를 잘 확인하지 않고 무작정 들어 갔다가 고생한 경험이 있기 때문에 이번에는 꼼꼼히 확인하고 찾아 봤다.
bandit7라는 유저가 권한을 갖고 있고, bandit6라는 그룹이 권한을 가지고 있다. 그리고 33 bytes 크기의 파일이다.
일단 ls -a로 현재 경로의 파일들 확인 해봤다.
bash관련 파일 밖에 없다.
cd ../으로 상위 폴더 하나씩 돌아 보면서 대충 확인 해봤지만 쉽게 찾을 수 없었다. 해당 과정은 너무 많기도 하고 크게 도움도 안되는 작업이라 생략하겠다.
이번 단계에서 아마 필요한 커맨드들을 확인해 봤고, du와 find를 제외하면 한 번씩은 사용해 본 적이 있어 du와 find를 검색해서 찾아봤다.
그 결과 find 명령어를 사용하면 내가 원하는 조건을 걸고 그에 맞는 파일을 find할 수 있었다.
바로 검색해서 배운대로 find / -user bandit7 -group bandit6 -size 33c 하나 씩 해석해 보면
/ = 최상위 경로에서
-user bandit7 = bandit7이라는 유저가 권한이 있고,
-group bandit6 = bandit6라는 그룹도 권한을 가지고 있으며,
-size 33c = 파일 크기가 33 bytes인 것을 찾겠다. (c는 byte를 뜻한다)
바로 검색.
여러 개의 경로가 나오고 대부분 Permission denied 에러가 뜬다. 위 그림에는 안 보이지만 검색된 결과를 위아래로 잘 찾아보면 하나의 파일만 아무런 에러 없이 출력된 것을 찾을 수 있다. 하지만 나는 에러가 뜬 파일을 제외하고 보고 싶어서 해당 방법을 검색해 봤다.
간단하게 검색 결과를 요약해 보면 에러가 뜬 결과는 따로 쓰레기통으로 버리고 출력할 수 있다.
Permission denied는 표준에러로 2라는 상태코드?로 표현할 수 있고, dev/null은 리눅스에서 쓰레기통으로 사용된다.
2>/dev/null 명령어 옵션을 find 명령어로 검색할 때 추가해서 검색하면
bandit7이라는 유저가 권한이 있고, bandit6라는 그룹도 권한을 가지고 있으며, 파일 크기가 33 bytes인 것을 찾겠다. 이때 '표준 에러가 뜨는 출력값은 버리고 출력하겠다'는 옵션이 추가된다.
직접 실행해 보면
한 개 파일이 검색된 것을 볼 수 있다. 혹시 모르니 힌트로 알려준 파일 크기가 맞는지 확인해 봤다.
내가 있는 폴더에 원하는 파일이 없을 경우, 원하는 파일의 경로를 적고 파일명을 적어주면 해당 폴더로 찾아가서 확인을 하지 않아도 원격?으로 파일 내용 확인하거나 볼 수 있다.
33 bytes인 것을 확인!
바로 내용을 확인해 본다.
Level 7에 로그인 할 수 있는 비밀번호 획득 완료!
z7WtoNQU2XfjmMtWA8u5rN4vzqu4v99S
'Wargame > Bandit' 카테고리의 다른 글
Bandit Level 8 -> Level 9 (0) | 2024.05.13 |
---|---|
Bandit Level 7 -> Level 8 (1) | 2024.04.30 |
Bandit Level 5 -> Level 6 (1) | 2024.04.11 |
Bandit Level 4 -> Level 5 (1) | 2024.04.11 |
Bandit Level 3 -> Level 4 (0) | 2024.04.11 |