Task 5 Authentication Relays
Responder는 IPv6/IPv4 LLMNR/NBT-NS/mDNS 포이즈너(Poisoner)로, 이를 통해 NetNTLM Challenge를 가로챌 수 있다.
로컬 네트워크 내 Challenge만 가능하며 현재 VPN을 통해 네트워크에 연결되어 있으므로 해당 VPN 네트워크에서 발생하는 인증 Challenge 타겟이된다.
THM의 어택박스로 실습하니 왜인지 작동하지 않아서 VPN을 사용했다.
[KALI VM]
openvpn breachingad.ovpn
1) TryHackMe에서 제공하는 네트워크 VPN서버로,이것을 실행해준다 (링크)
2) ifconfig
3) Responder 다운 후 실행
responder -I breachad
여기서 시간이 좀 걸린다. 기다리자.
※ skipping previously captured hash for {user} 메시지가 출력되는 경우, {user}의 해시는 이미 캡처하여 건너뛴다는 것이니 로그파일을 확인하자
※ Kali에서 로그파일의 경로는 /usr/share/responder/logs/SMB-NTLMv2-SSP-{IP} 이다.
4) 크래킹
THM에선 hashcat을 사용했으나 난 그냥 john썼다.
wordlist는 THM에서 제공하는 것을 사용했다.
john passwd.txt --wordlist=passwordlist.txt
TASK 6 Microsoft Deployment Toolkit
1. MDT(Microsoft Deployment Toolkit)
Microsoft 운영체제 배포 자동화를 지원하는 서비스. 이를 통해 중앙에서 이미지를 유지관리하고 압데이트할 수 있음
*Microsoft SCCM(System Center Configuration Manager)
- MDT의 확장으로, 소프트웨어 설치 후에 패치관리를 수행.
- 자산에 설치된 모든 소프트웨어의 업데이트 검토 가능
MDT 및 SCCM는 공격자의 표적이 되기 좋다. MDT를 사용하여 네트워크를 통해 배포핮는 방법 중 하나인 PXE(Preboot Execution Environment) 부팅에 중점에 두고 설명하겠다.
2. PXE 부팅
MDT를 사용하여 PXE 부팅 이미지를 생성, 관리 및 호스팅할 수 있다.
DHCP가 IP를 할당하면 PXE 부팅 이미지를 요청하고, 네트워크 OS 설치 프로세스를 시작할 수 있다.
[통신 프로세스] (1) 사용자가 DHCP Discover 전송(IP 주소 및 PXE 서비스 정보 요청) (2) 서버가 DHCP Offer 전송(Open IP 및 PXE 서비스 정보 응답) (3) 사용자가 DHCP Request 전송(IP 주소 수락) (4) 서버가 DHCP Acknowledge 전송 (5) 클라이언트가 Boot Service Discover 수행 (6) 서버 확인(PXE 부팅 정보 전송) (7) 클라이언트가 TFTP를 통해 PXE 부팅 요청 (8) 서버는 TFTP를 통해 PXE 부팅을 제공 |
프로세스가 수행되면 클라이언트는 TFTP 연결을 사용하여 PXE 부팅 이미지를 다운로드 한다.
공격자는 PXE 부팅 이미지를 두 가지 목적으로 사용할 수 있다.
a. PXE 부팅 완료 후 OS에 대한 관리 액세스 권한을 얻기 위해 관리자계정으로 권한 상승
b. 설치 중 사용된 AD 자격증명을 복구히가 위해 패스워드 스크래핑 공격 수행
TASK 6은 b과정을 진행한다.
3. PXE 부팅 이미지 검색
- IP 및 PXE 부팅 관련 정보요청 부분 생략
- MDT 서버의 IP, BCD 파일의 이름을 안다고 가정
* BCD 파일 : PXE 부팅과 관련된 정보를 저장
TFTP를 사용하여 이러한 각 BCD 파일을 요청하여 열거하나, 시간이 오래걸리므로 그냥 x64 BCD파일을 타겟으로 진행한다.
타겟 : x64{EDEB6162-8E21-4D01-8A11-3E1001D08EAD}.bcd
1) PXE 부팅 이미지를 열거하고 검색하기 위해 THM에서 제공하는 계정 및 패스워드로 SSH 접속
2) 디렉터리 생성 후 powerpxe 저장소를 해당 디렉터리에 복사
C:\Users\THM>cd Documents
C:\Users\THM\Documents> mkdir test
C:\Users\THM\Documents> copy C:\powerpxe test\
C:\Users\THM\Documents\> cd test
3) TFTP를 통해 BCD 파일을 다운로드하여 MDT 서버 구성을 확인한다.
*BCD 파일은 항상 MDT 서버의 \Tmp\ 디렉터리 안에 존재한다.
*wim 파일 : Windows Imaging Format의 부팅 가능한 이미지.
tftp -i {THMMDT IP} GET "\Tmp\x64{EDEB6162-8E21-4D01-8A11-3E1001D08EAD}.bcd" conf.bcd
다운로드에 시간이 좀 걸린다. 기다리자.
4) PXE 부팅이미지 위치 확인
powershell -executionpolicy bypass
Import-Module .\PowerPXE.ps1
$BCDFile = "conf.bcd"
Get-WimFile -bcdFile $BCDFile
5) TFTP를 통해 이미지 다운로드
tftp -i {THMMDT IP} GET "\Boot\x64\Images\LiteTouchPE_x64.wim" pxeboot.wim
6) PXE 부팅 이미지에 저장된 자격증명 추출
주로 자격증명이 저장되는 bootstrap.ini 파일을 찾아 복구한다.
Get-FindCredentials -WimFile pxeboot.wim >> Open pxeboot.wim
'System > 침투' 카테고리의 다른 글
THM - Enumerating Active Directory(2) (0) | 2023.10.20 |
---|---|
THM - Enumerating Active Directory(1) (0) | 2023.10.19 |
THM - Breaching Active Directory (1) (0) | 2023.09.27 |
THM - Windows Local Persistence (3) (0) | 2023.09.25 |
THM - Windows Local Persistence (2) (0) | 2023.09.25 |