보안 / 윈도우

해커들이 마이크로소프트 액티브 디렉토리를 공격하는 3가지 방법

Susan Bradley | Computerworld 2022.06.30
마이크로소프트 액티브 디렉토리(Active Directory, AD)는 22년 전 데뷔한 오래된 기술이다. 위협 행위자가 이런 구식 기술을 좋아하는 이유는 최신 표준으로 보호되지 않은 레거시 코드 혹은 프로세스를 보유하고 있거나 패치 및 권장 설정을 따르지 않는 기업이 존재하기 때문이다. 
 
ⓒ Gerd Altmann (CC0)

테너블(Tenable)의 수석 기술 및 보안 전략가인 데릭 멜버는 올해 RSA 컨퍼런스에서 액티브 디렉토리의 위험을 주제로 발표했다. 공격자는 도메인을 공격 목표로 삼는다. 액티브 디렉토리에 연결된 기기를 보면 공격을 계속해서 시도한다. 도메인과 연결된 컴퓨터가 없으면 다른 워크스테이션으로 이동한다. 공격자가 레거시 액티브 디렉토리 취약점을 악용하는 3가지 방법을 살펴보자.


1. sAMAccountName 보안 우회

사람들은 헤드라인을 크게 장식하는 취약점에만 초점을 맞추느라 다른 영향력 있는 뉴스를 놓치곤 한다. 예컨대 멜버는 Log4j 취약점이 큰 주목을 받았으나, 비슷한 시기 sAMAccountName이라는 취약점이 발견됐다고 말했다. sAMAccountName은 모든 액티브 디렉토리 도메인에 영향을 미치는 취약점으로, 2021년 11월 또는 이후 업데이트가 설치된 모든 시스템에 영향을 미친다. 마이크로소프트가 수정 사항(CVE-2021-42278)을 배포한 액티브 디렉토리 보안 계정 관리자(Security Accounts Manager)의 보안을 우회한다.

CVE-2021-42278을 설치하면 액티브 디렉토리는 관리자 권한이 없는 사용자가 생성하거나 수정한 컴퓨터 계정의 sAMAccountName 및 UserAccountControl 속성에 대해 유효성 검사를 수행한다. 모든 액티브 디렉토리 도메인의 기본값을 기반으로 한 검사다. 기본적으로 관리자가 아닌 사용자도 최대 10대의 컴퓨터를 해당 도메인에 추가할 수 있기 때문이다. 

10년 전에는 합리적이었을 수 있지만, 자동 혹은 마음대로 사용할 수 있는 기타 기술로 워크스테이션을 배포할 수 있게 되면서 관리자가 아닌 사용자가 워크스테이션 도메인에 다른 컴퓨터를 등록하도록 허용하는 기능은 더 이상 의미가 없다. 또한 수년 동안 사용됐지만 설정을 변경하는 방법을 아는 사람도 많지 않다. 우선 ADSIedit로 이동해 등록 기기를 제한하는 속성인 ms-DS-MachineAccountQuota 설정을 변경해야 한다. '10'이 기본값이며, '0'으로 설정하면 비활성화된다.

마이크로소프트 디펜더 포 아이덴티티(Microsoft Defender for Identity)의 시니어 프로그램 매니저 다니엘 나임에 따르면, 공격자는 CVE-2021-42278 취약점과 CVE-2021-42287을 결합해 업데이트를 적용하지 않은 액티브 디렉토리 환경에서도 도메인 관리자에 대한 직접적인 경로를 생성할 수 있다. 이를 통해 공격자는 도메인의 일반 사용자 계정을 손상시킨 후 자신의 권한을 도메인 관리자의 권한으로 손쉽게 승격한다. 모든 액티브 디렉토리 인스턴스가 이런 권한 상승 공격에 취약하다. 특히 도메인 컨트롤러에 업데이트를 설치하지 않았을 때 위험하다.


2. 잘못된 구성을 통한 접근

공격자가 네트워크 접근 권한을 획득하는 가장 효과적인 방법은 피싱이다. 그다음은 취약점 혹은 잘못된 구성이다. 대다수의 액티브 디렉토리 구성은 LOB(line of business) 애플리케이션에 필요한 것이거나, 네트워크를 적절하게 구성하는 데 필요한 요구 사항을 제대로 파악하지 못하고 설정한 것이다.

액티브 디렉토리가 설치될 때 커버로스, NTLM, NTLM v2 및 LAN 관리자 같은 여러 인증 프로토콜이 자동으로 설치된다. 이전의 NTLM 및 LAN 관리자 프로토콜을 비활성화할 수 있지만, 아마 테스트하기 전까지는 비활성화를 꺼릴 것이다. 

공격자는 도메인에 대한 사용자 이름과 암호를 얻은 후 해당 계정에 로그인해 사용자가 도메인 계정을 가지고 있고 소프트웨어를 설치할 수 있는지 확인한다. 이때 공격자는 종종 도메인의 항목을 열거하는 AD 탐색기(AD Explorer)라는 도구를 설치한다. 캐시된 자격증명을 마이닝하고 암호를 수집한 다음 도메인 권한이 있는지 확인한다.

멜버에 따르면, 이런 공격에 대비하는 가장 좋은 방법은 공격자가 단일 계정을 도용해 도메인의 워크스테이션으로 이동할 수 없도록 로컬 관리자 계정에 임의 암호를 설정하는 마이크로소프트의 랩스(Local Administrator Password Solution, LAPS)를 사용하는 것이다. 랩스는 각 워크스테이션에 동일한 암호를 사용하지 않고 임의의 암호를 생성한다. 멜버는 세분화된 암호 정책과 이중 인증까지 구현할 것을 권장하며, LAP용 웹 기반 사용자 인터페이스가 필요한 사용자에게는 마이크로소프트 LAPS용 오버랩(Overlaps for Microsoft LAPS)을 추천했다.

멜버는 공격자가 파워셸로 액티브 디렉토리를 열거해 ACL(Active Control List), 그룹 구성원 및 사용자 권한을 분석한다고 설명했다. 따라서 권한 있는 사용자와 서비스 계정뿐 아니라 컴퓨터까지 보호해야 한다. 가령 AdminSDHolder를 강화하는 것이다. 아울러 클라우드 기반 익스체인지로 이동했을 때는 익스체인지 관리자 계정에서도 권한 변경을 다시 확인해야 한다. AdminSDHolder 개체에서 권한을 보유한 사용자/그룹을 검토하고 이 권한이 필요하지 않을 경우 편집하거나 삭제하는 것이 좋다.

AD 위임도 잘못 구성될 수 있다. 보안되지 않은 커버로스가 위임되면 공격자가 다른 서비스로 가장할 수 있다. 멜버는 조정을 어떻게 해야 하는지 명확하지 않을 수 있으므로 AD 검토 도구를 사용할 것을 권장했다. 하이브리드 AD 및 커버로스 위임 테스트를 사용할 때는 마이크로소프트 애저 AD 보안 점수를 사용하고, 온프레미스 AD가 있을 때는 테너블.AD(Tenable.AD) 같은 솔루션으로 취약점 및 잘못된 구성을 식별할 수 있다. 


3. 커버로스트 골든 티켓 공격

커버로스트(Kerberoast)는 위협 행위자가 자주 사용하는 또 다른 공격 시퀸스다. 공격자가 골든 티켓을 획득하고 공격이 종료될 때까지 도메인에서 로깅 작업이 전혀 수행되지 않는다. 골든 티켓에 대한 요청을 사전 티켓 증명 서비스(Ticket-Granting Service, TGS) 요청과 일치시키고, 시간 내에 티켓 증명 티켓(Ticket-Granting Ticket, TGT) 요청이 없거나 일치하지 않는 TGS 요청이 있다면 골든 티켓 공격과 관련이 있을 수 있다. 

액티브 디렉토리는 사라지지 않을 것이다. 액티브 디렉토리에 대한 공격도 마찬가지다. 따라서 AD 관리자는 패치 적용하는 이상의 작업을 수행해야 한다. 
editor@itworld.co.kr

회사명 : 한국IDG | 제호: ITWorld | 주소 : 서울시 중구 세종대로 23, 4층 우)04512
| 등록번호 : 서울 아00743 등록발행일자 : 2009년 01월 19일

발행인 : 박형미 | 편집인 : 박재곤 | 청소년보호책임자 : 한정규
| 사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.