Security
소매

위메프: AWS 클라우드 환경의 비정형 위협탐지를 위한 머신러닝 도입

제공

위메프는 보안과 머신러닝을 적용하여 위협을 사전에 탐지하고 있습니다.

머신러닝

머신러닝을 통한 비정형 위협을 사전에 탐지하고 대응할 수 있습니다.

서포트

줌으로 함께 고민하고 연구해서 운영지원을 함께 해주며 긴급 상황의 경우 1시간 내 응답을 해주기 때문에 안정적인 운영이 가능합니다.

회사 소개(위메프)

올해 10주년(2020년 10월 8일)을 앞두고 있는 위메프는 나무인터넷’이라는 사명으로 설립 후 같은 해 ‘위메이크프라이스닷컴’ 사이트를 통해 서비스를 시작했습니다. 초기 사업 모델은 소셜커머스(SNS를 통해 일정 수의 구매 희망자가 모이면, 특정 물건이나 서비스를 할인 받을 수 있는 쿠폰을 공동으로 구매할 수 있는 형태)로 레스토랑, 헤어샵 공연, 놀이동산 입장권 등을 주로 판매했습니다.

위메프는 지난 수년간 모바일 기반 이커머스 가운데 가장 안정적인 손익구조를 유지해왔습니다. 지난해 대규모 투자유치 이후 성장과 손익개선을 모두 크게 향상하기 위해 다양한 시도를 진행하고 있으며, 롱테일 시장의 영향력을 넓히고, 플랫폼을 업그레이드 시키는 등 더욱 현실적인 고객 혜택을 개발해 업계 영향력을 높이는데 집중할 계획입니다.

위메프 클라우드보안운영팀은 위메프 클라우드보안운영팀은 전략사업본부 산하의 보안팀으로서 클라우드플랫폼 서비스의 보안을 전담하는 팀입니다. 해킹과 같은 외부 사이버 공격에 대해 대응하고 내부 취약점을 개선하여 미래의 잠재위협에 대해 선재적대응을 위한 예방활동을 책임집니다. 주된 업무는 보안 수준 고도화를 위한 서비스 기획/구축과 안정적인 서비스를 위한 보안운영 활동을 하고 있습니다.

ELASTIC과 함께한 위메프의 머신러닝을 통한 비정형 위협탐지

"빅데이터에 대해 평소 관심이 있었고, 또 검색분야에서 Elastic을 많이 사용하는걸 보다보니 이걸 보안에 사용할 수 있지 않을까 하는 호기심에서 시작하게 되었습니다. 위메프가 도입했을때는 보안 솔루션이라기 보다는 스택을 하나하나 배워가며 찾아가며 그렇게 Elastic을 보안에 적용할 수 있었습니다. 기술지원을 통해서 실시간 문의하고 적용하고 제공되는 문서들을 분석하면서 그렇게 Elastic에 대한 이해도를 높일 수 있었습니다."

– 정병재 팀장, 이기수 매니저, 위메프 클라우드보안운영팀

The What: 머신러닝, 보안담당자가 제대로 보안을 운영할 수 있는 환경을 분석을 제공한다.

처음에는 행위 기반 공격에 대한 탐지/대응을 하고 싶어 행위 기반의 시나리오를 고민한 뒤에 패턴으로 만들려다보니 너무나도 많은 경우의 수가 필요했고 결국 정형화 되어 있는 부분만 찾는건 의미가 크지 않겠다는 생각을 하게 되었습니다.

비정형화되어 있는 공격을 탐지할 수 있는 방법이 뭐가 있을까 고민하다가 Elastic Stack의 머신러닝을 알게 되었고 몇가지 가상 시나리오를 생각하고 이런 부분이 탐지가 되는지 확인하는 과정을 거치다보니 가능하다 판단하였습니다.

거기에 보안담당자로서 다양하게 수집된 로그들을 바라보면서 이상행위에 대한 인사이트를 쉽게 얻을 수 있는 점도 매력적이었습니다. 흔히 침입공격을 대응하는 방법은 정형화된 공격을 패턴으로 제작하여 탐지하는 방식이고 정형화된 패턴들의 상관관계를 파악하여 상관관계 패턴을 제작하여 탐지하는 방식이 SIEM이 취하는 방식입니다.

하지만 이러한 정형화된 탐지 방식을 위해서는 사전에 공격 유형에 대한 분석과 시나리오등을 설계해야 하기 때문에 보안담당자의 역량과 꾸준한 노력등으로 수준 편차가 클 수 밖에 없고 공격이 방어보다 먼저 나오기 때문에 많은 회사들이 Zero Day 등을 빠르게 파악하여 패턴을 만들어 대응을 하지만 Zero Day 등으로도 알려지지 않은 최신 공격들에 대해서 위협을 대응하기에는 리스크가 존재할 수 밖에 없습니다.

"Elastic Stack의 머신러닝은 보안 담당자들의 수준 편차를 보완해줄 수 있다고 생각합니다."

– 정병재 팀장, 위메프 클라우드보안운영팀

우선 첫번째 사례는 abnormal url 에 대한 탐지하는 job입니다. 이 머신러닝 job은 비지도학습을 통해 내부 시스템간의 통신이나 정상사용자의 request 를 지속적으로 학습하여 평소 패턴과 다른 abnormal url 을 찾는 컨셉입니다. 정상적인 url의 경우 유사한 패턴이 중복하여 지속적으로 학습되기 때문에 위험도(severity)가 점차 감소하게 되고, 그렇지 않은 공격패턴의 경우 평소와 생소한 패턴으로 인지되어 이상이벤트로 탐지하게 됩니다. 이와 같은 컨셉을 일반적인 SIEM을 통해 만든다면 화이트리스트식으로 탐지룰을 만들어야하기 때문에 정상이 되는 경우의 수를 모두 지정해줘야 하고 또 언제 추가될지 모르는 정상 path에 대해 업데이트를 해야하겠지만, 머신러닝을 활용하면 그런 수고스러움을 덜 수 있는 장점이 있습니다. 또한 보안이벤트를 탐지하는 관점이 아니라 정상적인 request url을 학습시킨 후 비이상적인 request에 대해 탐지하다보니 실제 운영하다보면 보안솔루션에 탐지되지 않는 신규 취약점 및 웹쉘 등과 같은 공격이 새롭게 탐지되기도 합니다.

두번째 사례로는 AWS의 cloudtrail 과 연동하여 security group의 생성, 수정, 삭제와 관련된 이상행위를 탐지하는 job 입니다. 이 job 의 시나리오는 security group에 대한 관리는 해당 R 을 가진 특정인에 대해서만 진행된다는 것에서 착안하였습니다. AWS 의 감사로그가 저장되는 Cloudtrail에서 security group 의 변동사항을 로깅하는 감사이벤트를 필터하여 학습시켰습니다. 자연스레 관련 작업이 많은 인프라나 보안팀원들의 계정들은 누적학습이 되어 위험도(severity)가 낮아지지만 그 외 사용자의 경우에는 비이상적인 이벤트로 간주해 알람이 발생됩니다. 그리고 이 모든 job들을 Elasticsearch Watcher 와 연동하여 이벤트를 실시간으로 전달받고 있습니다.

The Why: 보안, 인사이트가 보안의 핵심

상관관계 정책의 자유도가 높은 Arcsight를 비교해 보았으나, 역시 비정형화 되어 있는 공격을 찾는데는 부족함이 있었습니다. 웹서비스와 REST API등 정상적 서비스에는 정형화되어 있는 URI가 있는데 이 부분을 머신러닝을 통해 학습한다면 이상행위를 탐지할 수 있을 것이라 판단하였고. 실제 사용해보니 비정형화 되어 있는 이상행위를 탐지하는 것을 확인하였으며, 이는 새로운 인사이트를 도출하는데 도움이 되었습니다.

AWS 플랫폼의 보안을 담당하는 입장에서 AWS 환경과 접목시킬 경우 시너지 효과를 극대화 할 수 있었습니다. AWS플랫폼에서 생성되는 모든 서버 및 콘솔 로그들은 담당자가 생성/유지/관리 할 수 있는데, Elastic은 이 로그들을 수집/가공하여 다양한 측면에서 활용할 수 있습니다.

예를 들어 CloudTrail로 대표되는 AWS의 다양한 로그들을 Elastic Stack에 연동하여 다양한 각도에서 바라보는 것들을 하다보면, 매우 많은 인사이트를 발견하게 됩니다. AWS의 이상 행위를 예측하려면 이러한 인사이트들이 꼭 필요합니다.

The How: Elastic Stack의 강화된 Security기능, 주기적인 버전 업그레이드를 통한 통합 보안 플랫폼

머신러닝으로서도 매우 중요하지만 SIEM으로도 매우 중요한 역할을 하고 있습니다. 위메프 AWS 플랫폼에는 VPC Mirror 기술을 활용하여 OpenIDS Suricata를 침입탐지 솔루션으로 구축/운영하고 있습니다. Filebeat에는 이 suricata 탐지로그의 파싱을 지원하는 모듈이 개발되어 있어 유용하게 활용중입니다. 수집된 데이터에 대한 분석과 시각화 부분에서 많은 리소스를 절감할 수 있었으며, 또한 파싱된 탐지 로그를 머신러닝 데이터셋으로 활용하여 이상행위 탐지에 활용하고 있습니다.

이 외에도 AWS EC2에서 머신러닝을 염두하여 각종 log들을 추가 생성될 수 있도록 AMI에 세팅하였고, AWS에서 자체 생성되는 추가 이력로그를 모두 수집하여 머신러닝 학습 후 이상행위 탐지에 사용하고 있습니다. 이 부분은 머신러닝에 대한 전문적인 지식이 없더라도 담당자 입장에서 공격시나리오와 학습을 위한 데이터셋만 준비한다면 가장 이상적인 알고리즘을 자동으로 적용해주기 때문에 이상행위 탐지에 있어 상당히 효과적입니다.

"Elastic은 이커머스 비즈니스에 매우 중요하고 강력한 보안 플랫폼 구축에 도움이 되고 있습니다."

– 정병재 팀장, 위메프 클라우드보안운영팀

결과 : 성공적인 클라우드보안 플랫폼으로 탐지 및 대응이 가능

내/외부발 침해사고 시나리오를 가정하고 관련된 로그들의 수집하여 분석 연구하다보면, 다양한 인사이트를 찾을 수 있게 되고 이상행위 탐지에 효과적인 머신러닝 job이 다양하고 자율적으로 생성이 가능합니다.

결론적으로, 외부에서 내부로의 침입, 침입한 이후의 행동, 그리고 내부자들이 부여된 권한을 통해 비인가적인 행위를 할 때 등과 같이 사전에 정의된 패턴으로 찾기 어려운 것들을 미리 상황을 예측하고 로그들이 남겨 기존의 행위 이력들을 학습시킨 후 보안담당자가 예측은 하지만 기존의 시스템들로는 탐지할 수 없는 이상 징후들을 머신러닝에 적용하여 탐지해서 보안 사고를 미리 예방하고 있습니다.