간략한 역사
2015호를 되돌아보면, 보안 업계가 엔드포인트 탐지 및 대응(EDR) 제품으로 넘쳐났다는 사실을 부정하기 어렵습니다. 어떤 컨퍼런스에서든 후원사 전시장을 둘러보거나, 어떤 공급업체 웹사이트에서든 백서나 마케팅 자료를 훑어보면, “실시간”에 “기업 규모”로 “예방, 탐지, 대응”을 한다는 주장이 지겹도록 반복되는 것을 볼 수 있습니다. 그에 더해 “이상 탐지”, “위협 인텔리전스”, “APT” 같은 필수적인 용어들도 덤으로 얹어두자.
그토록 많은 조직이 공급업체를 선별하고 평가하는 데 어려움을 겪는 것은 당연한 일입니다. 제안 요청에 대한 응답은 모호하거나 과장된 경우가 많다. 단계별 침입 시나리오를 적용한 데모나 소규모 개념 검증 실험을 통해 어떤 제품이든 효과적으로 보이게 할 수 있다. 다른 엔터프라이즈 솔루션과 마찬가지로, EDR 도구 역시 시간이 지남에 따라, 그리고 실제의 복잡하고 혼란스러운 네트워크 환경에 완전히 배포된 후에야 비로소 그 진정한 강점과 약점이 드러나게 마련입니다.
타늄(Tanium)에서 맡고 있는 제 역할상, 제가 진정으로 벤더 중립적인 관점을 표방하기는 어려울 수도 있습니다. 하지만 10년 넘게 컨설턴트로 활동하며 보안 평가, 사고 대응 조사 및 시정 조치를 수행해 온 경험을 바탕으로, 실무자로서 저에게 가장 중요했을 기준을 항상 염두에 두려고 노력하고 있습니다.
여기서는 모든 EDR 솔루션의 효과성에 영향을 미치는 세 가지 핵심 요소, 즉 제공하는 데이터의 범위, 성능 및 확장성, 그리고 유연성에 대해 중점적으로 살펴보고자 합니다.
이 솔루션은 어떤 범위의 데이터를 제공합니까?
엔드포인트 제품이 검색, 분석 또는 수집할 수 있는 데이터의 범위와 시의적절성은 해당 제품의 핵심 기능을 결정짓는 가장 중요한 요소입니다. 현재 거의 모든 EDR 제품이 “전사적 검색” 기능을 제공한다고 주장하지만, 핵심적인 질문은 “어떤 정보를 대상으로 하는가?”입니다. 많은 솔루션은 확장성이나 성능을 높이기 위해 이용 가능한 데이터의 범위에서 상당한 절충을 감수합니다. 만약 구글이 사용자들이 지난 30 일 동안 색인된 사이트의 콘텐츠만 검색할 수 있도록 허용한다면 어떨까요? 또는 반대로, 검색 기간 제한은 없되 인기 있는 웹 페이지의 제목 태그만 검색할 수 있게 한다면 어떨까요?
엔드포인트 데이터는 크게 ‘과거 데이터’와 ‘현재 상태’라는 두 가지 영역으로 나눌 수 있습니다. 왜 둘 다 중요한가요? 파일 I/O, 네트워크 연결, 프로세스 실행, 로그온 이벤트 또는 레지스트리 변경 사항과 같은 엔드포인트 텔레메트리 데이터를 지속적으로 기록하는 제품들은 사고 탐지 및 대응을 위해 점점 더 널리 사용되고 있습니다. 앞서 Tanium Trace 출시 당시 블로그에 언급했듯이, 이 기능을 통해 리드 선별, 경고 생성 또는 시스템 조사에 필요한 작업을 더 빠르게 처리하고 간소화할 수 있습니다. 이는 법의학적 증거의 공백으로 인해 소실될 수도 있는 증거물을 보존하고 보강하며, 일시적인 이벤트를 식별하고 기록하기 위해 필요한 데이터 검색 빈도를 줄여줍니다.
그러나 과거 데이터의 슬라이딩 윈도우에만 전적으로 의존하는 것은 상당한 한계를 초래한다 — 특히 대규모로 사냥을 할 때 더욱 그러하다. 이러한 해결책은 보존되는 데이터의 기간과 경보 발령 및 분석에 활용 가능한 데이터의 범위를 모두 제한합니다. 기록되어 있지 않으면 찾을 수 없습니다.
이러한 제한된 범위의 정보를 보완하기 위해서는, 효과적인 사고 탐지 및 대응을 위해 모든 시스템의 최신 상태 데이터에 필요 시 즉시 접근할 수 있어야 합니다. 즉, 현재 발생하고 있는 휘발성 아티팩트를 검색하거나 수집할 수 있는 능력을 의미합니다. 수사 과정에서 제가 접한 사례는 셀 수 없이 많습니다. 해킹당한 로컬 관리자 계정이 현재 어디에 로그인되어 있을까요? 현재 메모리에 악성 DLL이 로드된 시스템은 어디인가요?
현재 상태 데이터에는 최근 변경되지 않았거나 역사적 보존 대상에서 제외되었으나, 사고 범위 파악에 결정적인 역할을 할 수 있는 잠재적 아티팩트도 포함됩니다. 환경 전반에서 이름이나 해시 값을 기준으로 “저장된 상태”의 모든 유형의 파일을 검색해야 할 필요성, 1년 동안 변경된 적이 없는 레지스트리 값, 또는 WMI 저장소의 데이터와 같은 다소 생소한 포렌식 증거물을 고려해보십시오. 시스템이 이미 침해당한 후에 해당 솔루션을 설치해야 한다면 어떻게 해야 할까요? 제한된 범위의 데이터로 작업하면 필연적으로 사각지대가 생기고 수사가 막다른 골목에 이르게 된다.
이 솔루션의 성능과 확장성은 어떠한가요?
거의 모든 EDR 공급업체는 “수만 개”에 달하는 엔드포인트까지 확장 가능한, 어떤 형태로든 “실시간” 처리 속도를 약속합니다. 실제로는, 특히 평가 과정이 소규모 테스트 실험실로만 국한될 경우, 교묘한 궤변으로 제품의 실제 성능과 확장성의 한계를 쉽게 감추기 쉬운 실정입니다. 조직은 EDR 제품이 자사의 사용 사례에 부합할 만큼 충분히 우수한 성능을 발휘할 수 있도록 어떻게 보장할 수 있을까요? 핵심은 속도와 규모를 평가할 때 보다 포괄적인 접근 방식을 취하는 것입니다.
먼저, 이 솔루션이 제공하는 상호작용 방식을 살펴보겠습니다. 수동 워크플로에는 임시 검색(“이 해시는 어디에 있나요?”), 탐지 및 알림(“IOC가 탐지되었거나 규칙이 발동되었나요?”), 이상 징후 분석을 위한 데이터 수집(“모든 자동 실행 항목을 수집하고, 발생 빈도별로 정렬하세요.”) 등이 포함됩니다. 능동적인 워크플로는 격리 조치 시행, 프로세스 종료, 악성코드 제거, 구성 취약점 수정 등 시스템에 변화를 수반합니다.
다음으로, 이러한 각 상호작용 방식에 제공되는 데이터의 범위를 중첩해 보십시오. 과거 활동 내역도 포함되나요? 현재 진행 중인 활동은? 저장된 잠재 파일이나 기타 잔여물? 마지막으로, 이러한 각 평가 기준에 따라 솔루션의 성능과 확장성을 평가하십시오. 일부 솔루션은 일련의 과거 데이터에 대해 전사적인 접근 권한을 제공할 수는 있지만, 현재 데이터나 잠재 데이터를 대규모로 손쉽게 처리할 수는 없습니다(그 반대의 경우도 마찬가지입니다). 일부 작업의 경우 쿼리나 작업 처리에 몇 초밖에 걸리지 않는 반면, 다른 작업은 몇 시간이 걸리기도 하나요?
또한 조직은 원하는 성능 수준과 규모에서 솔루션을 운영하기 위해 필요한 인프라 규모와 비용을 평가해야 합니다. 수평적으로 확장되는 온프레미스 솔루션의 경우, 시간이 지남에 따라 유지보수 비용은 증가하고 효율성은 떨어집니다. 서버가 늘어나면 장애 발생 가능성도 높아지며, 환경이 확장됨에 따라 아키텍처를 재설계하고 자원 활용도를 균형 있게 조정해야 할 필요성이 대두됩니다.
반면, 클라우드 기반 솔루션은 인터넷을 통해 전송되는 데이터의 양을 관리해야 합니다. 이로 인해 클라이언트 측 필터링 및 트리거 메커니즘에 의존하게 되는데, 이는 필요 시 또는 사후에 이용할 수 있는 엔드포인트 데이터의 범위를 제한할 수 있습니다. 조직의 사용 사례에 따라, 그러한 양보는 용납될 수 없을 수도 있습니다.
이 플랫폼은 얼마나 유연합니까?
우리는 이미 IR을 위해서는 광범위한 엔드포인트 데이터에 대해 빠르고 확장 가능한 접근이 필요하다는 점을 강조한 바 있습니다. 모든 EDR 도구는 “핵심” 포렌식 증거, 즉 프로세스 활동, 파일 시스템 메타데이터, 네트워크 연결, 계정 활동, Windows 레지스트리와 같은 OS별 아티팩트 등을 처리할 수 있습니다. 그러나 공격자의 기법이 급속히 진화하는 것과 마찬가지로, 새로운 운영 체제 업데이트, 애플리케이션 또는 연구자들의 발견을 통해 제시되는 증거의 출처 역시 끊임없이 변화하고 있다. EDR 솔루션의 유연성은 이러한 새로운 발견을 얼마나 신속하게 반영할 수 있는지에 직접적인 영향을 미칩니다.
제품을 비교할 때, 많은 조직은 단순히 기능 및 성능 목록을 요청하기만 합니다. 한 걸음 더 나아가, 해당 제품이 과거에 어떻게 업데이트되어 왔는지, 그리고 앞으로 어떻게 발전해 나갈 전망인지 파악해 보시는 것이 좋겠습니다. 여기에는 다음 사항에 대한 평가가 포함될 수 있습니다:
- 개발 속도를 파악하기 위해 지난 1년간의 제품 변경 내역을 검토해 달라고 요청하십시오. 어떤 종류의 새로운 기능이 추가되었나요? 그리고 그 속도는 어느 정도였나요?
- 소프트웨어가 어떻게 설계되었는지, 그리고 그 설계가 새로운 데이터 소스를 손쉽게 통합하거나 새로운 방식으로 엔드포인트와 상호작용하는 데 적합한지 고려해 보십시오. 고객은 어느 정도까지 통제권을 가지고 있나요? 어떤 경우에 공급업체에서 제공하는 에이전트 업데이트가 필요한가요?
- 사용자 커뮤니티의 현황은 어떠한가요? 다른 고객사들도 “기본 제공 기능”을 넘어서는 기능을 공유하고 있나요?
마지막으로, 해당 제품이 “EDR”의 “대응(Response)” 부분을 얼마나 철저히 다루고 있는지 고려해 보십시오. 프로세스를 종료하거나 네트워크상의 시스템을 격리하는 것과 같은 전술적 대응 기능은 이 분야의 대부분의 도구에서 흔히 볼 수 있는 기능입니다(비록 그 규모나 이러한 조치를 조정하는 능력 면에서는 차이가 있을 수 있지만). 하지만 그만큼 중요하면서도 종종 간과되는 점은, 해당 솔루션이 실제로 시스템을 보호하고, 다른 예방적 통제 수단을 보완하며, 엔드포인트의 공격 표면을 줄일 수 있는지 여부입니다. 이 분야의 주요 역량으로는 네트워크를 통해 실행되거나 통신할 수 있는 항목을 통제하는 것, 보안 구성 설정을 평가하고 강화하는 것, 그리고 OS 및 타사 애플리케이션의 패치 수준을 유지하는 것이 포함됩니다. 간단히 말해, EDR 솔루션이 단지 공격을 신속하게 탐지하고 대응하는 능력만 향상시켜 준다면, 이는 실제로 조직의 회복탄력성을 높이는 것이 아니며, 재침해의 악순환에서 벗어나는 데도 도움이 되지 않습니다.
기업용 소프트웨어를 테스트하고, 구매하고, 통합하는 일은 결코 쉬운 일이 아닙니다. 또한 기대에 미치지 못한 제품에 대해 ‘기존 제품을 완전히 교체하는’ 방식을 반복할 때마다 상당한 운영상의 위험과 비용이 발생합니다. EDR 솔루션을 고려하실 때, 이 블로그 게시물에 소개된 몇 가지 사항이 귀사에서 필요에 가장 적합한 제품을 선정할 수 있도록 올바른 평가 기준을 수립하는 데 도움이 되기를 바랍니다.
라이언 카잔치얀, 최고 보안 아키텍트
Tanium이 실제로 어떻게 작동하는지 궁금하신가요? 와 1:1 데모를 예약하거나 주간 웨비나에 참여해 보세요. 에서 개최될 예정인 행사()에서 Tanium 전문가들과 상담해 보세요.
