[HTB] Browsed (Medium_Linux)
🔐 보호된 게시글
이 게시글을 보려면 비밀번호를 입력해주세요
시작에 앞서
이번에는 Browsed라고 하는 Medium 난이도의 Active 머신으로 어떤걸 풀어볼까 하는데 Arena 로 등록된 머신이기에 한번 해봤다.
아니 근데 이걸 작성하고 있는 지금은 또 Arena에서 Live로 바뀌었다.
| 구분 | Arena (지난주 토 ~ 어제) | Live (오늘 ~) |
|---|---|---|
| 상태 | 따끈따끈한 신상 (Seasons 경쟁 중) | 일반 Active 머신 (안정화 단계) |
| 서버 | Release Arena (신규 전용 서버) | Standard / Free (일반 공용 서버) |
| 접속 권한 | 누구나 (Free 포함) | 누구나 (Free 포함) |
| 바뀐 이유 | 출시 후 5일이 지나 신규 기간이 종료됨 | 이제 일반 서버로 이관됨 |
Live와 Arena는 위와 같은 차이가 있다고 한다.
솔직히 요거 푸는데 2일동안은 삽질만 하다가 비로소 4일차에 풀어냈다는 이야기 ㅎ
정찰 및 정보 수집 (Reconnaissance & Enumeration)
nmap의 결과를 보면 22/ssh와 80/http가 있고 페이지 이름이 Browsed라고 한다. nginx 1.24.0버전이고….
페이지에 접속해보니 Browsed.htb라는 사이트와 크롬 확장프로그램관련 사이트라는 소개를 볼 수 있다.
/etc/hosts에 browsed.htb를 추가했고 다시 더 살펴보자.
내가 만든 extention을 올리면 그걸 자동으로 실행하고 확인해준다고 한다. 뭔가 공유하고 쉽게 만들 수 있고 한 내용도 있긴 한데… 다른 페이지를 찾아봐도 딱히?
dirsearch로 찾아봐도 특별히 눈에 띄는 취약점이나 숨겨진 경로는 없었다.
Sample에 들어가보면 위와 같이 세가지 예시 파일이 있다.
Fontify, ReplaceImages, Timer
fontify를 다운받아 열어보니 manifest.json, style.css, popup.js, content.js, popup.html이 있다.
중요해보이는 manifest.json과 content.js를 열어보니 manifest_version이 3이라는 것을 알 수 있었다.
참고로 난 어떻게 기본 구조가 되는지 몰라서
웹 앱 매니페스트 manifest.json 를 작성해보자. by. 365kim
크롬 확장프로그램 만들기 part.1 (계기, 디자인&기획, 기본 준비 단계, 참고 문서) by. JOOLOG
의 내용을 참고해 공부했다.
그리고 페이지의 Update Extension을 들어가보면 아까 다운로드한 예시 처럼 .zip의 형태로 파일을 업로드 할 수 있게 되어있다.
일단은 뭐 어떻게 작동하는지 모르니까 난 예시에서 다운받은 파일을 바로 그냥 올려봤다.
그리고 그 결과 나온 output을 읽어보다 많은 오류 로그중에 (진짜 진짜 많다) http://browsedinternals.htb 라는 주소를 발견 할 수 있었다!
근데 nmap을 스캔했을 때에는 browsed.htb만 존재했었으니 추가적으로 로그에서 발견한 browsedinternals.htb 도메인도 /etc/hosts에 추가해 주었다. 이로써 하나의 IP에 두 개의 도메인이 매핑된 상태가 되었다.
그리고 다시 nmap을 진행했다… 만 사실 이거 할 필요 없다. 왜냐면 어쩌피 같은 IP주소를 기반으로 스캔하는 거다보니 굳이?
다만 Host 헤더가 뭐라고 나올까 하여 돌려봤다. 그리고 아까와 달리 이번에는 Gitea로 만들어진 페이지가 발견되었다.
메인 도메인이 browsed.htb이고 서브 도메인이 browsedinternals.htb가 되는 셈.
들어가보니 Gitea라고 하는 마치 github와 비슷한 역할을 하는 페이지를 볼 수 있었다.
공식 gitea 문서는 Gitea.com 여기로.
explore로 들어가보니 딱 하나의 larry가 만든 레포를 볼 수 있다. 그리고 gitea의 버전이 1.24.5라는 것 까지.
레포 안에 들어가보니 backups, files, log, app.py, routines.sh가 있었다.
솔직이 이전 Easy 문제들 생각해서 여기 나오는 backups에 뭔가 정보가 있거나 과거 commit 정보에 민감한 정보, 혹은 log에라도 뭔가있을줄 알았는데 log는 진짜 로그 정보만 있고 backups에는 텅 빈 백업 파일만, 다른 소스 코드에는 취약한 부분이 안 보였기에 진짜 여기서 삽질을 많이 했다. (내가 찾던건 하드코딩된 민감한 정보들이었는데…. 여기가 타겠이었…)
처음으론 gitea의 버전 정보를 찾아보며 취약점이 있을까 뒤져보기도 하고, dirsearch로 페이지 싹 뒤져보거나 gitea를 둘러보고 회원가입은 안되서 불가(내부에서 회원가입 가능한데 이게 그 섭 도메인이라 그런듯?)였기에 거진 2-3일간 여기서 멈춰버렸다.