Pass the Hash

IT 위키
PtH
탈취한 패스워드 해시 값을 평문 패스워드 대신 그대로 사용해 인증을 통과하는 공격 기법
  • 윈도우의 NTLM 인증은 평문 패스워드가 아니라 패스워드 해시로 챌린지에 응답한다. 그래서 해시만 알아내면 평문을 몰라도 로그인할 수 있다.
  • 한 대를 장악한 뒤 같은 자격 증명을 쓰는 다른 시스템으로 옮겨 가는 횡적 이동(Lateral Movement)의 대표적인 수단이다.

공격 과정

[편집 | 원본 편집]
  1. 대상 시스템에서 관리자 권한을 획득한다.
  2. 자격 증명이 저장된 위치에서 해시를 덤프한다.
    • lsass.exe 프로세스 메모리 — 로그온 세션의 NTLM 해시와 커버로스 티켓이 남아 있다
    • SAM 파일과 SYSTEM 하이브 — 로컬 계정 해시
    • NTDS.dit — 도메인 컨트롤러의 계정 데이터베이스
  3. 얻은 해시를 인증 요청에 그대로 실어 다른 시스템에 접속한다.
  • 대표적인 도구로 mimikatz(`sekurlsa::logonpasswords`, `sekurlsa::pth`), Windows Credential Editor, pwdump 등이 있다.
  • 해시를 크랙해 평문을 알아낼 필요가 없으므로 패스워드를 길게 만드는 것만으로는 방어되지 않는다.

유사 기법

[편집 | 원본 편집]
기법 재사용하는 것
Pass the Hash NTLM 패스워드 해시
Pass the Ticket 커버로스 서비스 티켓(TGS)
Golden Ticket krbtgt 계정 해시로 위조한 TGT
Silver Ticket 서비스 계정 해시로 위조한 서비스 티켓
Overpass the Hash NTLM 해시로 커버로스 TGT를 발급받는 방식

대응 방안

[편집 | 원본 편집]
  • Credential Guard : 가상화 기반 보안으로 자격 증명을 LSA와 분리된 영역에 저장한다.
  • LSA 보호(RunAsPPL) : lsass.exe를 보호된 프로세스로 실행해 메모리 접근을 막는다.
  • 로컬 관리자 계정의 패스워드를 시스템마다 다르게 둔다. 같은 패스워드를 쓰면 한 대가 뚫릴 때 전부 뚫린다.
  • 관리자 계정으로 일반 업무용 PC에 로그온하지 않는다. 로그온하는 순간 그 PC 메모리에 자격 증명이 남는다.
  • NTLM 사용을 줄이고 커버로스 인증을 쓰며, 다단계 인증을 적용한다.
  • 비정상적인 계정 사용과 횡적 이동을 탐지하도록 로그를 모니터링한다.

같이 보기

[편집 | 원본 편집]