저희는 개방성 이니셔티브에 따라 투명성을 유지하기 위해 노력하고 있으며, 내부 AI R&D의 노력이 어떻게 위협 탐지 팀의 생산성을 향상시켰는지 공유하고자 합니다. 지난 몇 달 동안 Elastic Security Labs는 보다 생성적인 AI 기능을 활용하여 탐지 엔지니어링 워크플로우를 가속화하는 데 주력해 왔습니다.
온위크 탐험 오디세이
Elastic에서는 오랫동안 운영해 온 Space, Time 전통 외에도 매달 한 주( 6 )를 할애하여 독립적으로 또는 팀으로 ONWeek라는 이름으로 작업하고 있습니다. 이 주간은 기능 작업, 기술 부채 및 기타 유사한 업무에서 벗어나 혁신적인 아이디어, 적극적인 학습 기회, 응용 연구 및 개념 증명 작업에 집중하는 주간입니다. 지난 5월의 이전 ONWeek에서는 Elastic의 기존 기능과 함께 대규모 언어 모델(LLM)을 활용하여 계층 1 분석가와 내부 생산성 워크플로우를 위한 보안 경보 분류 및 생산성을 향상시키는 아이디어를 탐색하고 실험과 조정을 위한 기본 구성 요소를 이해했습니다. 그림 1 은 이벤트 수집, 맞춤형 프롬프트를 통한 데이터 전달, 다양한 Elastic 워크플로우를 위해 설계된 다양한 종류의 콘텐츠 생성 등 우리가 가진 여러 가지 연구 기회를 보여줍니다.
그림 1: GenAI 보안 사용 사례
기본적으로 몇 가지 전통적인 ML 접근 방식을 탐색했지만, 궁극적으로는 이러한 도구와 개념을 염두에 두면서 간단하게 시작하여 점차 복잡성을 높이는 데 중점을 두었습니다:
- 단순하게 시작하기 - 우리의 접근 방식을 안내하는 만트라입니다.
- Azure OpenAI - GPT-4 LLM에 대한 액세스
- 프롬프트 엔지니어링 - LLM을 위한 맞춤형 지침을 개발합니다.
- LangChain - LLM 애플리케이션 제작에 도움이 되는 Python 라이브러리입니다.
우리의 목표 중 하나는 Elastic의 탐지 엔지니어 워크플로우를 간소화하여 쿼리 언어의 깊이와 뉘앙스를 보여주면서 더 나은 탐지에 더 집중할 수 있도록 하는 것입니다. 그 과정에서 저희는 프롬프트를 검증하고 운영용으로 사용할 수 있도록 준비하기 위해 실험에 시간을 투자하고 있습니다. 프롬프트를 반복할 때 실수로 회귀를 도입하지 않도록 하고 싶습니다. AI의 발전이 이루어짐에 따라, 저희는 미세 조정, 모델 교체 또는 신속한 수정 등 모든 조정이 신중하게 이루어질 수 있도록 T&E를 운영하고자 합니다. 궁극적으로는 분석가들이 최신 AIML 기능을 원활하게 활용하여 적절한 상황에 가장 적합한 프롬프트 또는 ML 기술을 적용하는 것을 목표로 합니다.
이러한 목표를 염두에 두고 5월의 첫 번째 연구 사용 사례는 쿼리 생성에 초점을 맞췄습니다. 우리는 최소한의 데이터와 프롬프트 엔지니어링을 통해 일련의 프롬프트를 연결하여 원시 Elastic 이벤트를 EQL 쿼리로 변환할 수 있다는 것을 금방 알게 되었습니다.
그림 2: 쿼리 생성 POC
실험 목적으로, 저희는 레드팀 자동화(RTA) 스크립트를 사용해 의심스러운 활동을 시뮬레이션하고 Elastic 에이전트를 통해 SIEM에서 엔드포인트 활동을 캡처했습니다. 그림 2 은 쿼리 생성을 위한 필수 이벤트 필드를 포함하여 gold.json 테스트 파일로 내보낸 Elastic 스택의 샘플 이벤트를 표시합니다.
그런 다음 GPT에 RTA 실행 시간대를 포함하는 이벤트 수집을 분석하여 의심스러운 동작이 있는 이벤트에 집중해 달라고 요청했습니다. POC에서는 잠재적 이상 징후와 관련된 주요 값을 정확히 찾아내라는 메시지가 표시되었습니다. 그런 다음 후속 프롬프트를 통해 이벤트를 분류하고 모든 활동을 요약했습니다. 모든 요약을 바탕으로 특정 값을 입력하지 않고 지표 목록을 생성하도록 GPT에 요청했습니다. 이 의심스러운 행동의 짧은 목록을 가지고 GPT에 쿼리를 생성하도록 요청했습니다. 장기적인 오픈 소스 개발의 중요한 장점은 GPT 관련 모델이 Elastic 콘텐츠에 익숙하기 때문에 프롬프트를 과도하게 맞추지 않아도 된다는 점입니다.
원시 데이터에서 EQL 쿼리로 전환하는 것은 개념적으로는 간단했지만, Azure OpenAI에서 서비스 가용성과 같은 사소한 문제가 여전히 발생했습니다. OpenAI 및 Azure OpenAI 추론 및 임베딩 API를 사용하는 데 일주일에 약 160달러가 들 것으로 예상할 정도로 비교적 저렴했습니다. 또한 Jupyter 노트북에서 공동 작업을 용이하게 하기 위해 GCP Vertex AI Workbench를 사용하는 방안도 검토했지만, 사용 가능한 오픈 소스(OSS) 모델 사용의 복잡성으로 인해 짧은 온위크 기간 동안 사용하기가 어려웠습니다.
그림 3: 5월 2023 ONWeek 주요 결과
우리는 ONWeek를 사용해 인메모리, 라이브러리 기반 벡터 검색 구현을 넘어 Elasticsearch의 탐지 규칙 콘텐츠에 대한 보다 성능적이고 확장 가능하며 프로덕션에 바로 사용할 수 있는 데이터 저장소로 확장하는 등 로드맵을 성숙시켰습니다. 초기 결과를 바탕으로 분석가 워크플로에 GenAI를 통합할 수 있는 잠재력과 실행 가능성을 파악했습니다(예 이벤트 시간 창 선택, 쿼리 생성 및 타임라인 추가를 허용합니다.) 이러한 초기 성과를 바탕으로 내부 로드맵에 LLM R&D를 추가로 추진할 계획을 세우고 내부 생산성 워크플로우 중 하나를 해결하기로 결정했습니다.
새로운 지평: 조사 가이드 생성
수년에 걸쳐 Elastic Security Labs는 콘텐츠를 발전시켜 왔습니다. 조사 가이드 보안 기능을 추가하여 2020 에서 시작하여 2021년에 해당 가이드를 표준화할 예정입니다. 2023년까지 900 900개 이상의 사전 구축된 규칙( )에 대해 매우 정확하고 상세하며 표준화된 가이드를 생성할 수 있는 효율적인 방법을 적극적으로 모색하고 있습니다.
저희 팀은 유사도 벡터 검색과 같은 전통적인 ML 접근 방식과 신속한 엔지니어링 특수 소스를 결합하여 조사 가이드 생성에 중점을 둔 새로운 프로토타입인 Rulecraft를 만들었습니다. 이제 규칙 작성자는 규칙 ID만 있으면 단 몇 분 만에 기본 조사 가이드 솔루션을 생성할 수 있습니다!
그림 4: 조사 가이드 샘플
이 초기 탐색에서는 탐지 규칙을 제공했지만, 규칙의 입력은 GPT의 설명 및 이름과 같은 몇 가지 필드로 제한했습니다. 또한 쿼리를 제공하려고 시도했지만 원하는 예상 결과에 맞지 않는 것으로 나타났습니다. 처음에는 최소한의 노력으로 GPT가 얼마나 제대로 된 조사 가이드를 생성할 수 있는지 평가하기 위해 이러한 필드에 간단한 프롬프트를 제공했습니다. 더 자세히 살펴보면서 EQL 쿼리 생성 실험에서 했던 것과 유사한 여러 프롬프트를 연결하면 이점을 얻을 수 있다는 것이 분명해졌습니다. 그래서 저희는 조사 가이드의 각 섹션에 맞는 프롬프트를 만드는 데 시간을 투자했습니다. 프롬프트를 세분화함으로써 유연성을 높일 수 있었을 뿐만 아니라, GPT가 가장 많이 환각하는 경향이 있는 "관련 규칙" 섹션과 같이 GPT가 흔들리는 영역도 해결했습니다. 이럴 때는 유사도 검색과 같은 전통적인 ML 방법을 사용하고 규칙을 벡터 데이터베이스에 통합하여 컨텍스트를 강화했습니다.
다음으로 특정 섹션에 추가적인 컨텍스트를 삽입할 수 있는 기회를 파악했습니다. 가이드 전반에 걸쳐 일관성을 유지하기 위해 각 세그먼트별로 승인된 콘텐츠와 언어 라이브러리를 선별했습니다. 그런 다음 이 라이브러리를 통해 기존 표준 메시지와 유사한 응답을 생성하고 서식을 지정하도록 GPT를 안내했습니다. 그런 다음 GenAI가 제작한 가이드와 수작업으로 제작한 가이드를 비교하여 기타 서식 불일치, GPT에서 발생하는 일반적인 오류, 프롬프트의 더 광범위한 문제를 파악했습니다.
이러한 결과를 바탕으로 문자열 서식 지정과 같은 후처리 기술을 사용하는 대신 프롬프트를 조정하여 생성된 콘텐츠를 개선하기로 결정했습니다. 자동화된 조사 가이드는 완벽하지는 않지만, 탐지 엔지니어에게 확실한 출발점을 제공합니다. 과거에는 조사 가이드가 검토자에게 규정이 예상하는 행동에 대한 더 많은 맥락을 제공함으로써 PR 동료 검토 프로세스를 개선했습니다. 이제 처음부터 시작하는 대신 기본 가이드를 생성하고, 이를 조정하고, 탐지 엔지니어가 필요에 따라 세부 사항을 추가할 수 있습니다.
이 기능을 탐지 엔지니어에게 직접 제공하기 위해 Rulecraft를 GitHub 작업 워크플로에 통합하여 필요에 따라 가이드를 생성할 수 있도록 했습니다. 또한 기존에는 몇 달이 걸리는 작업을 단 몇 시간( 13 )만에 650개 이상의 가이드를 추가로 제작했습니다. 자동화를 통해 조사 가이드가 누락된 규칙에 대해 약간의 수정을 가하고 기본 콘텐츠를 빠르게 재생성할 수 있습니다. 다시 말하지만, 이러한 가이드는 여전히 엄격한 내부 검토를 거쳐야 하지만, GenAI를 예비 초안에 활용함으로써 절약되는 시간과 노력은 놀랍습니다.
미래 차트 만들기: 다음 단계
저희의 연구 개발 여정은 계속되고 있으며, LLM을 통한 콘텐츠 제작 방식을 개선하고 결과를 더욱 철저하게 검증하는 데 중점을 두고 있습니다. 다음은 탐지 엔지니어링 워크플로에 LLM을 통합하는 것의 실행 가능성과 효과를 살펴본 후 우선순위에 대한 간단한 목록입니다:
- 독점 모델과 최신 오픈 소스 모델을 비교하세요.
- 이벤트 필터링, 프롬프트 최적화, 다양한 모델 매개변수 탐색 등 실험 프로세스를 더욱 정교하게 개선합니다.
- 테스트 스위트를 만들어 결과를 검증하고 회귀를 방지하세요.
- R&D의 발전된 기능을 Elastic AI Assistant에 원활하게 통합하세요.
전반적으로 조사 가이드의 범위를 대폭 늘리고 처음부터 가이드를 제작하는 데 걸리는 시간을 줄이려고 합니다. 각 조사 가이드는 분석가에게 알림을 분류하기 위한 자세한 단계별 지침과 쿼리를 제공합니다. 고객 우선 사고방식을 소스 코드의 최전선에 두고, 더 높은 품질의 조사 가이드를 통해 분석가 경험을 향상시켜 고객이 FP 분석 및 알림 분류에 소요하는 시간을 줄이는 것을 목표로 하고 있습니다.
요약
개방형 혁신과 투명성의 정신에 따라, Elastic Security Labs는 위협 탐색 프로세스의 생산성을 향상시키기 위해 생성형 AI 항해를 시작했습니다. 사례별로 신속한 엔지니어링 및 기존 ML 접근 방식을 지속적으로 발전시키고 통합하여 "LetmeaskGPT" 및 "Rulecraft" 와 같은 더 많은 R&D 개념 증명으로 이어졌습니다. 후자의 POC는 기준 가이드 작성에 필요한 시간을 크게 단축하고, 분석가 경험을 개선하며, 오탐 분석을 줄였습니다. 앞으로 할 일이 더 많으니 여러분도 저희의 여정에 동참해 주세요! 그동안 많은 진전을 이루었지만, 다음 단계에서는 더욱 세분화하고, 결과를 엄격하게 검증할 수 있는 프레임워크를 개발하며, R&D를 운영할 기회를 모색하여 보안 발전의 선두를 유지할 수 있도록 노력할 것입니다.
저희는 항상 이와 같은 사용 사례와 워크플로우를 듣고 싶으니 언제나처럼 GitHub 이슈를 통해 저희에게 연락해주시고, 커뮤니티 Slack에서 채팅하고, 토론 포럼에서 질문해 주세요!
또한, 분석가에게 최신 AI 기능을 제공하는 방법에 대해 자세히 알아보려면 다음 추가 리소스를 확인해 보세요:
- Elasticsearch와 함께 ChatGPT를책임감 있게 사용하는 방법 알아보기
- ESRE가 제공하는 개방형, 생성형 AI 조수인 새로운 Elastic AI Assistant를 살펴보고 설정하기