BLOG
Tracefield · 02
Tracefield · 01
블로그 · 14
Vibe Audit · 04
Vibe Audit · 03
Vibe Audit · 02
Vibe Audit · 01
출판편집자 · 01
StudyTree · 01
SecurityOps · 02
SecurityOps · 01
AI챗봇 · 04
AI챗봇 · 03
AI챗봇 · 02
AI챗봇 · 01
퍼플심 · 04
퍼플심 · 03
퍼플심 · 02
퍼플심 · 01
블로그 · 13
rootscan · 07
rootscan · 06
블로그 · 12
블로그 · 11
블로그 · 10
블로그 · 09
블로그 · 08
블로그 · 07
블로그 · 06
블로그 · 05
블로그 · 04
블로그 · 03
블로그 · 02
블로그 · 01
rootscan · 05
rootscan · 04
rootscan · 03
asmspeak · 03
asmspeak · 02
rootscan · 02
asmspeak · 01
rootscan · 01
웹보안도구 · 02
웹보안도구 · 01
루트캠프 · 02
루트캠프 · 01
All notes 167
횡적 이동
1. 개요
횡적 이동(Lateral Movement)은 장악한 거점에서 다른 호스트, 서버, 클라우드, 애플리케이션으로 이동하는 단계다.
- 레드팀 관점: 모의해킹보다 범위 제약이 적기 때문에, 단순 호스트 이동뿐 아니라 VDI, PAM, SaaS, 클라우드, OT 망까지 넓게 본다.
- 전략: 불필요한 이동을 줄여 탐지 확률을 낮추고, 목표로 가는 최단 경로를 설계해야 한다.
2. 주요 기법 및 OpSec 고려사항
2.1. SMB Pivot 및 PsExec
전통적인 PsExec 기법은 SMB(TCP 445)와 윈도우 서비스 관리자(SCM)를 이용한다. 다만 기본 설정 그대로 쓰면 EDR에 바로 걸리기 쉬워서, 커스터마이징이 거의 필수다.
탐지 포인트와 우회 방향은 아래처럼 정리할 수 있다.
- 서비스 바이너리(Service Binary): C2가 기본으로 만드는 바이너리는 시그니처 탐지에 취약하다.
- 우회: 직접 만든 서비스 바이너리를 쓰거나,
Config.IsService같은 플래그를 수정해 소스 자체를 변형한다.
- 우회: 직접 만든 서비스 바이너리를 쓰거나,
- 서비스 이름 및 설명(Service Name, Description):
Sliver,Sliver Implant같은 기본값은 바로 눈에 띈다.- 우회:
Windows Update Helper,ChoiUpdater처럼 실제 서비스와 비슷하게 위장한다.
- 우회:
- 네임드 파이프(Named Pipe): SMB 통신용 파이프 이름이 수상하면 탐지 포인트가 된다.
- 우회:
crashpad,spoolss처럼 정상 윈도우 파이프 이름을 흉내 내고,suffix를 붙여 자연스럽게 만든다.
- 우회:
2.2. VDI 및 PAM 우회(Ligolo-ng)
망분리 환경이나 PAM 솔루션을 우회할 때는 Ligolo-ng 같은 고속 터널링 도구를 활용할 수 있다.
- SOCKS Proxy vs Ligolo-ng
- SOCKS Proxy: TCP 중계는 가능하지만 오버헤드가 크고, RDP나 VDI 같은 GUI 프로토콜은 지연이 심해질 수 있다.
- Ligolo-ng: TUN 인터페이스(Layer 3 VPN)를 만들어 커널 레벨에서 패킷을 처리하므로 더 빠르고 안정적이다.
- 공격 시나리오(IT Forest -> DEV Forest)
- AWS JumpHost를 장악한다.
Ligolo-ng에이전트(agent.exe)를Donut으로 쉘코드로 바꾼다.RuntimeBroker.exe같은 사용자 프로세스에 인젝션한다. 시스템 프로세스에 넣으면 BSOD 위험이 있으니 주의해야 한다.- 역방향 터널링(Reverse Tunneling)으로 내부망 트래픽을 공격자 C2 서버 쪽으로 라우팅한다.
- PAM의 파일 전송 기능을 악용해 폐쇄망 점프 호스트로 악성 파일(DLL Loader 등)을 옮긴다.
rundll32.exe같은 LOLBins로 업로드한 DLL을 실행하고, 폐쇄망 내부에서 C2 콜백을 만든다.
3. SMB Named Pipe Pivot
시나리오는 AWS JumpHost에서 SQL01로 이동하는 흐름이다.
- Named Pipe 리스너를 만든다.
- 탐지 회피를 위해
crashpad같은 정상 파이프 이름과 비슷하게 맞춘다.
- 탐지 회피를 위해
- 토큰을 만든다(Impersonation).
Cobalt Roasting등으로 얻은 자격 증명으로make_token을 수행해,SQL01로컬 관리자 권한을 가진 도메인 유저 컨텍스트를 만든다.
- 커스터마이징한
PsExec를 실행한다.- Service Name:
MssqlUpdater처럼 위장 - Binary Path:
C:\Windows\Temp같은 쓰기 가능한 경로 지정 - 결과:
SQL01의SYSTEM권한 세션 확보
- Service Name:
다만 SYSTEM 권한은 도메인 자원 접근 시 머신 계정 컨텍스트로 동작하므로, 도메인 유저 권한이 필요하면 추가 토큰 탈취가 필요할 수 있다.

