시스템 액세스 제어 우회
이 글은 최근에 발표된 NSA/CISA 합동 사이버 보안 자문 를 통해 이들 기관에서 실시한 레드/블루팀 훈련에서 확인된 주요 사이버 보안 문제에 대해 살펴봅니다. 이 글에서는 특정 이슈에 대해 보다 심층적으로 살펴보고, 해당 이슈가 적용되는 실제 시나리오와 이를 제한하거나 극복하기 위해 채택할 수 있는 완화 전략에 대해 알아봅니다. 이는 NSA/CISA 보고서에서 제공한 정보를 확장한 것입니다.
-
여러 플랫폼에서 인증 위험을 줄이기 위해 권장되는 중앙 집중식 신원 관리 시스템은 의도치 않게 취약점을 발생시킵니다. 계정의 상태와 액세스 수준을 확인하는 이러한 시스템은 종종 암호화된 메시지를 주고받지만 가로채지 못합니다. 취약한 암호화, 공유된 비밀 또는 보안이 취약한 타사 시스템을 통해 악의적인 공격자가 인증 메시지를 관찰하고 캡처할 수 있습니다. 그런 다음 이러한 메시지를 '재생'하여 승인되지 않은 권한을 얻을 수 있습니다.
정확히 어떻게 작동하나요?
중앙 집중식 인증의 문제점
인증 및 권한 부여가 여러 시스템에 분산되어 사고 발생 시 어느 한 시스템이 책임을 지게 되는 위험을 줄이기 위해 조직에서는 중앙 집중식 ID 관리 시스템을 운영하는 것이 좋습니다. 그러나 이러한 중앙 집중식 프로세스는 타사 시스템에서 특정 계정의 상태(권한 부여 여부) 및 액세스 수준(즉, 로그인 후 부여해야 하는 권한)을 확인하는 필수 메커니즘으로 이어집니다.
이 메커니즘은 네트워크를 통해 중앙 집중식 신원 관리 시스템과 타사 시스템 간의 메시지 교환에 의존하며 일반적으로 암호화됩니다. 그러나 취약한 암호화부터 공유된 비밀 또는 부적절하게 보호되는 타사 시스템 등 여러 가지 요인으로 인해 악의적인 공격자는 인증 프로세스가 진행되는 과정을 관찰하고 그 결과 메시지를 수집할 수 있습니다. 일부 시나리오에서는 그 결과 메시지를 '재생'하여 시스템을 속여 추가 확인 없이 암묵적으로 메시지를 수락하고 악의적인 공격자나 악의적인 공격자가 제어하는 프로세스에 부당한 권한을 부여할 수 있습니다.
Active Directory 예제
시스템 간에 해시값이 교환되어 취약점이 발생하는 대표적인 사례는 Active Directory의 Kerberos 인증입니다. 이 때문에 '골든 티켓' 및 '패스 더 해시'와 같은 익스플로잇이 사이버 범죄자들의 무기고에서 널리 사용되고 있습니다:
- 해시 전달 공격: 이 기법은 인증 프로세스에서 사용되는 해시(비밀번호 또는 키의 고정된 크기의 영숫자 표현)를 캡처하는 것을 포함합니다. 그런 다음 공격자는 이 해시를 사용하여 실제 비밀번호를 사용하지 않고도 자신을 인증하고 네트워크 리소스에 액세스합니다.
- 골든 티켓 어택: 이 공격은 Windows 환경에서 사용되는 네트워크 인증 프로토콜인 Kerberos를 표적으로 삼습니다. 공격자가 주요 도메인 컨트롤러에 액세스하면 도메인 내의 모든 사용자에게 인증을 부여하는 '골든 티켓'을 생성할 수 있으며, 이를 통해 네트워크 전체에 무제한으로 액세스할 수 있는 경우가 많습니다.
Linux를 실행할 때 완벽하게 안전할까요?
이러한 유형의 공격은 특정 운영 체제나 플랫폼에 국한되지 않습니다. 또한 다양한 형태로 나타나며, Kerberos는 한 가지 예일 뿐입니다. 다른 점이 있다면, Active Directory에서 제공하는 중앙 집중식 ID 관리가 Linux 시스템에서 다른 방식으로 사용되거나 사용될 수 있다는 사실 때문에 이러한 시스템은 필연적으로 동일한 문제에 노출될 수밖에 없습니다.
또한 그 반대의 경우도 가능합니다. Linux에서 실행되는 Active Directory 스탠드인이 Windows 기반 시스템에 대한 ldap 연결 및 인증을 제공할 수 있습니다. Windows에서 Active Directory를 실행 중인지 여부에 관계없이 위험을 무시해서는 안 됩니다.
사실 이 문제는 액티브 디렉토리 환경이나 내부 네트워크 및 시스템에만 국한된 문제가 아닙니다. 예를 들어 코드 호스팅, 이메일, 소셜 미디어 서비스 등 널리 사용되는 온라인 플랫폼에서 부적절하게 보안이 설정된 인증 토큰을 통해서도 시스템 액세스 제어를 우회할 수 있습니다. 특정 자산에 대한 액세스 권한을 제공하는 토큰이 생성된 후 해당 토큰이 도난, 유출되거나 실수로 온라인에 게시되는 경우, 해당 토큰에 액세스할 수 있는 사람은 서비스에 재인증할 필요 없이 토큰과 관련된 권한을 획득할 수 있으므로 모든 액세스 제어를 우회할 수 있습니다.
완화 전략: 포괄적인 접근 방식
액세스 제어 우회를 효과적으로 방어하려면 총체적인 전략이 필요합니다:
- 일회용 권한 적용: 인증은 각 세션마다 한 번만 진행해야 합니다. 세션이 종료되면 반드시 재인증을 거쳐야 합니다.
- 지리적 위치 확인: 비정상적인 로그인 위치는 세션 하이재킹 공격을 방지하는 데 중요한 단계인 즉각적인 재인증을 트리거해야 합니다.
- 더 세분화하면 특정 사용자가 아닌 오리진 클라이언트 시스템의 위치 및 IP를 확인할 수도 있습니다. 연결이 시작되는 일반적인 디바이스가 변경되면 재인증이 트리거되어야 합니다.
- 이러한 유형의 이벤트는 철저히 모니터링하고 발생 시 고위험 경보를 발령해야 합니다.
- 강력한 암호화 표준: 약한 기본 표준을 피하고 상호 지원되는 가장 강력한 암호화를 사용하여 시스템 간의 통신을 보장합니다.
- 정기 시스템 업데이트: 업데이트된 서비스를 갖춘 최신 시스템은 이러한 공격에 더 효과적으로 대응할 수 있으므로 기술 업데이트에 대한 지속적인 노력이 필요합니다.