AD(Active Directory) 장편 연재 1 - AD 와 DC(Domain Controller)
꽤나 장편 대하드라마가 될것같다. AD와 DC의 개념 그리고 실제 설치와 운용 또 취약점까지 한번 다뤄보고자 한다.
1. Active Directory
능동적인 디렉토리.. 이렇게 말로만 보아서는 잘 감이오지 않는다. AD를 이해하기 위해서는 개념을 잘 잡고 시작해야 한다. 이 AD라는 것은 join되어있는 모든 사용자의 계정과 권한정보를 기록하고 관리하는 기능을 의미한다. 즉 같은 도메인에 묶인 사용자들의 계정 정보를 관리하고, 일관적인 보안 정책을 동시에 적용하는 등 관리적인 측면에서 굉장한 편의를 제공해줄 수 있는 기능이다.
하지만 우리는 보안과 편리함은 trade off 관계임을 너무나도 잘 알고있다. 위의 한 문단만 읽어보아도 해킹적 사고가 피어오르지 않는가? 따라서 AD 보안은 내부망 보안의 꽃이자 해커들이 침을 질질흘리는 아주 탐스러운 먹잇감이기도 하다. AD서버가 장악 당한다면, Domain Controller에 저장된 사용자 계정정보가 모조리 탈취당할 것이고, 그렇게 된다면 공격자는 손쉽게 Endpoint까지 lateral movement를 달성할 수 있을것이다.
(* lateral movement는 '위상(topology)'적으로 횡적 이동한다는 의미다. 이전에 필자가 근무하던 어떤 회사에서는 횡적 이동이 말이 되지않으니 내부 이동으로 의미를 고치라는 어떤 사람이 있었다. 어떤 개념에서는 틀린 말은 아니지만, 만약 AWS 인증정보가 탈취당해 lateral movement를 달성한 경우에도 내부 이동이라 할 수 있을까? 필자는 Internal 보다는 Lateral 이라는 의미가 좀더 정확하다는 생각이 든다.)
1-1. Active Directory의 구조
Active Directory는 크게 도메인(Domain), 트리(Tree), 포레스트(Forest)로 이루어져있다. 도메인이 모여 트리, 트리가 모여 포레스트가 되는 구조다.
1-2. Domain Name
2. Domain Controller