Windows Server 진단 - LSA 보호 우회 진단
진단 시나리오
LSA(Local Security Authority)는 Windows 보안 인증을 담당합니다. LSA 우회 취약점을 진단합니다.
점검 결과
| 설정 | 현재값 | 권장값 | 상태 |
| LSA Protection | 비활성화 | 활성화 | 위험 |
| RunAsPPL (Protected Process Light) | 아니오 | 예 | 위험 |
| Credentials Guard | 비활성화 | 활성화 | 위험 |
| LSASS 메모리 덤프 | 허용 | 제한 | 위험 |
레지스트리 확인
# LSA Protection 상태
HKLM\SYSTEM\CurrentControlSet\Control\Lsa\RunAsPPL = 0 (비활성화 - 위험!)
# 권장 설정값
HKLM\SYSTEM\CurrentControlSet\Control\Lsa\RunAsPPL = 1 (활성화)
HKLM\SYSTEM\CurrentControlSet\Control\Lsa\LsaCfgFlags = 1
# Credentials Guard (Hyper-V 필요)
HKLM\SYSTEM\CurrentControlSet\Control\Lsa\LsaCfgFlags = 1 (BIOS 지원 필수)
취약점 분석
[미턴의 잠재적 공격 경로]
1. LSASS 메모리 덤프
- mimikatz.exe로 메모리 덤프 후 패스워드 추출 가능
- procdump -accepteula -ma lsass.exe lsass.dmp
2. Kerberos Ticket 탈취
- lsass 프로세스 메모리에서 Kerberos 티켓 추출
- 도메인 내 권한 상승
3. 로컬 관리자 비밀번호 해시 추출
- SAM 데이터베이스 덤프로 LM/NTLM 해시 획득
- 오프라인 크래킹 가능
4. 크리덴셜 가드 미사용
- 가상화 기반 보안(VBS) 미사용으로 민감 정보 노출
PowerShell 명령
# LSA Protection 상태 확인
Get-ItemProperty 'HKLM:\SYSTEM\CurrentControlSet\Control\Lsa' -Name RunAsPPL
# LSA Protection 활성화
Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Lsa' -Name RunAsPPL -Value 1
# Credentials Guard 활성화 (Hyper-V 필요)
Set-ItemProperty -Path 'HKLM:\SYSTEM\CurrentControlSet\Control\Lsa' -Name LsaCfgFlags -Value 1
# LSASS 메모리 덤프 방지
Set-ItemProperty -Path 'HKLM:\SOFTWARE\Policies\Microsoft\Windows\System' -Name DisableAntiSpyware -Value 0
조치 가이드
- LSA Protection (RunAsPPL) 활성화:
- Set-ItemProperty로 RunAsPPL = 1 설정
- LSASS를 Protected Process Light로 실행
- 메모리 덤프 공격 어렵게 함
- Credentials Guard 구현 (Hyper-V 필수):
- 가상화 기반 보안으로 민감정보 보호
- LsaCfgFlags = 1로 설정
- LSASS 모니터링:
- 비정상 메모리 접근 감시
- procdump.exe 실행 차단
- 재부팅 필수: 레지스트리 변경 후 시스템 재부팅 필요