Netwrix 1Secure는 데이터와 아이덴티티 전반에 걸쳐 통합된 가시성을 제공합니다 - 14일간 무료로 전체 액세스가 가능합니다.무료 평가판 시작

LDAP Reconnaissance

정찰(reconnaissance)은 성공적인 공격의 중요한 부분입니다. 두 가지 핵심 형태가 있습니다. 하나는 공격자가 조직에 침투하기 전에 수행하는 초기 또는 외부 정찰이고, 다른 하나는 조직의 환경에 대해 추가 정보와 맥락을 파악하는 내부 정찰입니다.

LDAP 정찰(reconnaissance)은 공격자가 Active Directory에서 사용자, 그룹, 컴퓨터를 파악하기 위해 사용하는 내부 정찰 기법입니다. 공격자는 LDAP 쿼리를 사용해 환경에 대한 이해도를 높이며, 이를 통해 목표를 찾고 공격의 다음 단계들을 계획하는 데 도움이 될 수 있습니다. 이 기법은 이미 조직에 침투한 공격자들이 사용하므로, 외부가 아닌 내부 정찰(내부) 기법에 해당합니다.

위협 요약

대상: Active Directory

도구: BloodHound, PowerSploit, SharpHound, Spray

ATT&CK® 전술: Discovery

ATT&CK 기술: T1087.002

난이도

탐지: 어려움

대응(완화): 어려움

대응: 보통

LDAP를 사용한 정찰 수행

1단계: 거점 확보

공격자는 피싱, 워터링 홀 및 비밀번호 스프레이 공격 등 다양한 기법을 사용해 조직의 IT 환경에 거점을 마련합니다. 다음은 가능한 사용자 이름 목록을 입수한 공격자가 Spray를 사용해, 여러 플랫폼에서 비밀번호 스프레이 공격을 수행하도록 만든 bash 스크립트인 Spray로 조직의 가상 사설망( VPN ) 서버에 비밀번호 스프레이 공격을 수행하는 방법입니다:

      [attacker@machine ~]$ spray.sh -cisco vpn.org.com usernames.txt passwords.txt 1 35

Valid Credentials joed Summer2020
      

2단계: LDAP를 사용한 정찰 수행

공격자는 손상된 자격 증명을 사용해 VPN에 인증하고 네트워크에 대한 액세스를 확보한 다음, 동일한 자격 증명을 사용해 Active Directory를 조회합니다. ActiveDirectory PowerShell 모듈을 사용하여 Active Directory를 열거하거나, BloodHound 및 PowerSploit 같은 도구로 검색을 자동화할 수 있습니다. 이 예에서는 공격자가 PowerShell을 사용해 사용자 설명(description) 속성에서 가능한 비밀번호를 찾습니다:

      PS> Import-Module ActiveDirectory

PS> Get-ADObject -LDAPFilter "(&(objectClass=user)(description=*pass*))" -property * | Select-Object SAMAccountName, Description, DistinguishedName

SAMAccountName DescriptionDistinguishedName

-------------- ----------------------------

AlicePassword: P@ssw0rd123!CN=Alice,OU=Users,DC=domain,DC=com

PS>
      

3단계: 정보를 활용해 목표를 더 진전시키기

공격자는 찾아낸 자격 증명을 사용해 BloodHound SharpHound 같은 도구로 추가적인 내부 정찰을 수행합니다. 이러한 도구는 복잡한 권한의 얽힌 구조를 풀어내는 데 도움을 줍니다. 이 정보를 바탕으로 공격자는 도메인 지배(domain dominance) 같은 목표로 이어지는 경로를 매핑할 수 있습니다.

아래 그래픽은 예시를 보여줍니다. 공격자가 사용자 계정 Alice에 대한 인증 정보를 획득했다고 가정해 보겠습니다. 해당 계정에는 사용자 Eve에 대해 WriteDACL 및 WriteOwner 권한이 있으므로, Alice는 Eve의 계정에 대한 액세스를 자기 자신에게 부여할 수 있습니다. Eve는 계정 Bob의 비밀번호를 재설정할 권한을 가지고 있으며, Bob은 (AdminSDHolder 전파를 통해 부여된) 권한을 가지고 있어 Domain Admins 그룹을 수정할 수 있습니다. 따라서 Alice의 비밀번호를 찾는 것은 공격자에게 매우 가치가 있었습니다!

a diagram showing how to change a password


결과

공격자는 SharpHound.exe -C All 로 데이터를 수집한 후, 데이터 세트를 BloodHound에 로드해 도메인 지배(domain dominance)로 이어지는 경로를 탐색할 수 있습니다.

탐지, 완화 및 대응

탐지

난이도: 어려움

LDAP 프로토콜은 Active Directory에서 자주 사용되므로 악성 쿼리와 정상 쿼리를 분리하기가 어렵습니다. 또한 Active Directory는 수신된 정확한 쿼리를 로깅하기 위한 메커니즘을 제공하지 않습니다. 그러나 이벤트 4662 하위 범주에서 Audit Directory Service Access를 사용하면 특정 속성에 대한 액세스를 대상으로 어느 정도의 프로파일링과 모니터링을 수행할 수 있습니다.

도메인 컨트롤러가 특정 LDAP 쿼리에 대해 수신하는 네트워크 트래픽을 모니터링하면 공격자 활동을 탐지하는 데 도움이 됩니다. 다음 표는 일반 운영에서는 발생 빈도가 낮아야 하지만 공격자 활동을 강하게 시사할 수 있는 쿼리 유형을 소량만 샘플로 보여줍니다:

Query

Information Collected

(&(ObjectClass=user)(servicePrincipalName=*))

All user objects that have a ServicePrincipalName configured

(userAccountControl:1.2.840.113556.1.4.803:=65536)

Objects that have Password Never Expires set

(userAccountControl:1.2.840.113556.1.4.803:=4194304)

Objects that do not require Kerberos pre-authentication

(sAMAccountType=805306369)

All computer objects

(sAMAccountType=805306368)

All user objects

(userAccountControl:1.2.840.113556.1.4.803:=8192)

All domain controller objects

(primaryGroupID=512)

All Domain Admins using PrimaryGroupID

완화

난이도: 어려움

LDAP는 일반적인 Active Directory 운영에서 필수적인 역할을 하므로, 조직에서는 LDAP 사용을 단순히 차단할 수 없습니다. 대신 애초에 침투를 막기 위한 대응에 집중하세요. 예를 들어 사용자 인식 및 교육, 엔드포인트 침해 징후 탐지 및 대응, 피싱 탐지 및 방지, 이메일 보안, 다단계 인증(MFA) 등이 있습니다.

대응

난이도: 보통

환경에서 LDAP 정찰이 탐지되면 사고 대응 프로세스를 활성화하고 사고 대응 팀에 알리세요.

공격자의 존재가 확인되면:

  • 정찰(reconnaissance)을 수행하는 사용자 계정의 비밀번호를 재설정하고 계정을 비활성화합니다.
  • 포렌식 조사(forensic investigation)와 제거(eradication) 및 복구(recovery) 활동을 위해 원본 컴퓨터를 격리합니다.

공유하기

Entra ID 애플리케이션 권한 악용—작동 방식과 방어 전략

AdminSDHolder 수정 — 작동 방식과 방어 전략

AS-REP Roasting 공격 — 작동 방식과 방어 전략

Hafnium 공격—작동 방식과 방어 전략

DCSync 공격 해설: Active Directory 보안에 대한 위협

패스-더-해시(PtH) 공격 이해하기

Golden Ticket 공격이란? 작동 방식, 탐지 및 대응(예방)

gMSA 악용 공격과 Golden gMSA 공격 설명

DCShadow 공격 – 작동 방식, 실제 사례 및 방어 전략

ChatGPT 프롬프트 인젝션: 위험 이해, 사례 및 예방

NTDS.dit 추출 공격 이해하기

Kerberoasting 공격 – 작동 원리와 방어 전략

패스-더-티켓(Pass-the-Ticket) 공격 설명: 위험, 예시 및 방어 전략

비밀번호 스프레이 공격 이해하기

평문 비밀번호 추출(Plaintext Password Extraction) 이해하기: 위험, 예시 및 예방

Zerologon 취약점 설명: 위험, 악용 방법 및 대응 방안

랜섬웨어 공격에 대한 완전한 가이드

Skeleton Key 공격: 작동 원리와 탐지 방법

Lateral Movement: 그것이 무엇인지, 작동 방식, 그리고 예방 방법

중간자(MITM) 공격: 무엇인지, 그리고 어떻게 예방할 수 있는가

공격자에게 PowerShell이 특히 인기 있는 이유는 무엇일까요?

Credential Stuffing이란 무엇인가요?

PowerUpSQL로 SQL Server 침해하기

마우스재킹 공격이란 무엇이며, 이에 대응하는 방법

Security Support Provider(SSP)를 사용한 자격 증명 탈취

레인보우 테이블 공격: 작동 방식과 방어 방법

비밀번호 공격에 대한 종합적 이해와 이를 막는 방법

Silver Ticket 공격

Pass-the-Cookie 공격으로 MFA 우회하기

Golden SAML 공격을 위한 완전한 가이드