RED: 1
1. IP 정보 확인
- Kali IP: 192.168.50.50
- 타겟 IP: 192.168.50.58
2. 서비스 정보 확인
- Open Service: SSH, HTTP
- OS: 리눅스
3. 서비스 접근
- HTTP 접근을 수행하면 redrocks.win 도메인으로 트래픽 발생 확인
- /etc/hosts 파일을 수정
- redrocks.win 도메인 경로에 대해 정상적인 응답 확인
- redrocks.win 접근 가능
* 숨겨진 backdoor를 찾으면 된다.
4. 하위 파일 및 디렉터리 검색
- 'Hello Blue!' 게시글 내 소스코드를 확인하면 Mr. Miessler에게 도움을 요청하라는 주석 존재
* Still Looking For It? Maybe you should ask Mr. Miessler for help, not that it matters,
you won't be able to read anything with it anyway
- Mr. Miessler을 구글링해보면 SecLists 라는 스캐닝 목록이 존재
- Kali에는 기본 설치
- 서버는 php를 사용하고 backdoor를 찾으라고 했으니 적절한 단어 목록으로 스캔
- NetworkFileManagerPHP.php 파일 발견
* 해당 파일에서 적절한 파라미터가 존재하지 않아 500 에러 발생한 것일 수 있음
5. NetworkFileManagerPHP.php 파라미터 탐색
- 파라미터 BruteForce에 사용할 list 확보
* 다시 한 번 Mr. Miessler에게 도움을 받아 유일한 파라미터 list 확보
- ffuf를 통한 파라미터 BruteForce
* 파라미터 key 확인
- key 파라미터는 원격 명령어는 실행되지 않았으며 LFI 공격 가능
5. NetworkFileManagerPHP.php 파일 확보
- LFI 공격이 가능한 경우 wrappers(?) 사용 가능
- "php://filter/convert.base64-encode/resource=" 구문을 사용하여 Base64 인코딩된 코드 습득
* http://redrocks.win/NetworkFileManagerPHP.php?key=php://filter/convert.base64-encode/resource=NetworkFileManagerPHP.php
- Base64 디코딩 결과, 다음과 같은 코드가 확인된다.
* 대충 GET Method로 key 파라미터를 받으면 그 파일을 포함하는 코드
* key 파라미터가 없는 경우 loop에 빠져서 500 에러가 발생한 것으로 추정
* 암호만 가지고는 뭘 할 수 없다고 Hashcat을 쓰라는 문구 존재
6. 게정 정보 탈취
- Wordpress는 wp-config.php 파일에 DB 정보 존재
* 확인된 암호로 ssh 접근 시 실패
- NetworkFileManagerPHP.php에 있던 안내처럼 Hashcat 사용하여 패스워드 크랙
* 확인된 DB 패스워드를 pass_one 파일에 저장하여 사용
* -r 옵션은 크랙에 사용할 목록
- Hydra 통해 크랙한 목록으로 Brure Force
* 패스워드 탈취(패스워드가 고정되지 않는 듯?)
- ssh 로그인 성공
==> 이 CTF는 여기까지만 진행 예정
'보안 CTF > Vulnhub' 카테고리의 다른 글
VULNOS: 2 (0) | 2023.04.25 |
---|---|
NAPPING: 1.0.1 (0) | 2023.04.12 |
EMPIRE: BREAKOUT (0) | 2023.04.03 |
EMPIRE: LUPINONE (0) | 2023.03.29 |
JANGOW: 1.0.1 (0) | 2023.03.22 |