본문 바로가기
SingleStoreDB/사례연구

[사례연구] 대규모 취약점 관리를 위한 Nucleus Security와 SingleStore 파트너

by 에이플랫폼 [Team SingleStore Korea] 2021. 10. 19.

2021년 사이버 범죄 피해액은 6조 달러에 이를 것으로 예상되며, 모든 산업의 기업들은 스스로를 더 잘 보호할 수 있는 방법을 모색하고 있습니다. 잠재적인 보안 취약점은 사이트 간 스크립팅에서 부적절한 권한 관리에 이르기까지 다양한 형태로 나타납니다. 2020년에만 17,000개 이상의 새로운 보안 취약점이 발견되었습니다. IT 보안 팀은 지속적으로 복잡성이 증가하는 인프라를 보호해야 하므로, 새로 발견된 익스플로잇에 신속하게 대응하거나 알려진 취약점이 해결되었는지 확인하는 것이 어렵습니다. 기업이 상당한 양의 취약점 백로그를 발견하는 데는 오랜 시간이 걸리지 않았습니다. 평균적으로 6개월 동안 백로그는 57,000개를 초과하였고, 이 중 28%는 완화하지 못하였습니다. 시스템을 안전하게 유지하려면, 선제적이고 총체적이며 확장 가능한 취약성 관리 접근 방식이 필요합니다.


심각한 취약성 관리 프로세스 격차 해결

Nucleus Security의 창립자인 Stephen Carter(CEO)와 Scott Kuffer(COO)는 수십 년 동안 미국 정부 기관에 취약성 관리 서비스를 제공한 경험이 있습니다. 이를 위해 다양한 취약점 검색 도구를 사용했습니다. 취약점을 발견할 때마다 Jira 또는 ServiceNow와 같은 티켓팅 시스템에 수정 요청을 수동으로 입력해야 했습니다. 취약점 식별과 티켓 생성 사이의 격차로 인해 효율성 병목 현상이 발생했습니다. 모든 취약성 보고서는 서로 다른 툴에서 사용하는 다양한 형식에 걸쳐 표준화되어야 했고 사용자가 우선순위를 매겨야 했습니다. 그런 다음 응답은 더 빠른 속도, 관리 용이성 및 확장성을 위해 자동화가 필요했습니다.

Carter와 Kuffer는 고객에게 더 빠르고 쉽게 서비스를 제공할 수 있도록, Nucleus 취약성 관리 플랫폼을 만들었습니다. 원래 의도는 자체 작업을 위한 사용자 지정 도구를 갖는 것이었지만, 이러한 유형의 플랫폼에 대한 필요성을 느꼈습니다.

Nucleus Security에 가장 관심이 있는 사용자는 다음과 같습니다.

  • 대규모 보안 취약성을 관리해야 하는 대기업 및 정부 기관.
  • MSSP(Managed Service Security Providers)는 여러 클라이언트의 취약성 관리 프로세스를 지원 하고 클라이언트 액세스를 제공하며 독점 기능으로 확장할 수 있는 방법을 제공하는 플랫폼을 찾고 있습니다.

대규모 통합 취약성 관리 처리

Nucleus는 취약점 관리 전문가에 의해, 그리고 취약점 관리 전문가를 위해 만들어졌기 때문에, 이 플랫폼은 취약점이 악용되기 전에 취약점을 발견하고 수정하는 데 방해가 되는 많은 문제를 해결했습니다.

스마트 자동화와 워크플로 최적화는 다음을 통해 취약성 관리의 지루하고 시간 소모적인 많은 부분을 제거했습니다.

  • 단일 플랫폼에서 취약성 집계, 정규화 및 우선순위를 중앙 집중화합니다.
  • 취약성, 티켓팅, 경고 및 문제 추적 도구를 함께 연결하여, 올바른 정보를 올바른 형식으로 올바른 사람에게 제공합니다.
  • 엔드 투 엔드에서 취약점 관리 속도와 용량을 증가시킵니다.
  • 취약성 관리 비용을 절감합니다.
  • 취약성 관리 데이터 및 수정 노력의 가시성을 개선합니다.

Nucleus 작동 방식

Nucleus 애플리케이션은 SaaS(Software-as-a-Service) 제품으로 제공되고 있으며, 기존의 3계층 아키텍처로 설계되었습니다. “고객을 대면하는 웹 애플리케이션과 데이터를 처리하는 작업 대기열이 있습니다. 그리고 백엔드에 데이터베이스가 있어 두 가지 모두를 지원합니다.”라고 Kuffer는 말합니다.

  1. 사용자는 고객용 Nucleus 웹 애플리케이션에 로그인합니다.
  2. 70개 이상 지원되는 애플리케이션 목록에서 사용 중인 도구와의 통합을 설정합니다.
  3. 사용자는 데이터를 수집하고 경고, 보고서 및 티켓을 트리거 하는 규칙을 만듭니다.
  4. 중앙 집중식 취약성 관리 대시보드에 액세스하여, 검색을 수행하거나 스캔 결과를 분석할 수 있습니다.
  5. 별도의 백엔드 작업 대기 열은 선택한 데이터 소스의 API에서 사용자별 일정에 따라 데이터를 수집하고 처리합니다.
  6. 데이터베이스는 프런트엔드와 백엔드 작업을 지원합니다.

제품 라이선스는 기업에서 작업하는 자산의 수를 기반으로 합니다. Nucleus에서 자산은 사용자가 스캔하는 항목으로 정의됩니다. 각 자산에는 여러 취약점이 있을 수 있습니다.

적합한 데이터베이스 솔루션 찾기

Nucleus Security가 Nucleus 플랫폼을 설계하기 시작했을 때, 문서 지향 데이터베이스, 그래프 데이터베이스, 기존 관계형 데이터베이스 등 여러 데이터베이스 옵션을 탐색했습니다.

Carter는 다음과 같이 말했습니다. "모든 옵션에는 장단점이 있었고, 몇 가지 데이터베이스 기술이 초기 PoC에 적합할 수 있다고 느꼈습니다. 그러나 고성능 관계형 데이터베이스 시스템은 우리의 데이터 모델과 시장에 내놓을 계획인 기능을 지원하기에는 어려운 요구 사항이라는 것이 금세 명백해졌습니다.”

Nucleus는 정부 기관과 직접 협력할 때 필요한 솔루션을 개발하기 시작했습니다. 이러한 고객은 규정 준수에 중점을 두고, 규정 요구 사항에 따라 매주 또는 매월 검사를 실행합니다. Nucleus가 시도한 데이터베이스 솔루션은 종종 취약점을 처리하는 데 오랜 시간이 걸렸지만, 주간 또는 월간 검사에서는 큰 문제가 되지 않았습니다.

MariaDB의 문제점

Nucleus 프로토타입에서는 많은 연방 정부의 승인 소프트웨어 목록에 있는 MariaDB를 사용했습니다. Carter는 다음과 같이 말했습니다. "MariaDB는 우리가 사용하고 있던 정부 승인 운영 체제인 Red Hat Linux와 함께 번들로 제공됩니다. 프로토타입은 잘 작동했습니다. 그러나 더 큰 고객을 온보딩하기 시작했을 때, 성능 면에서 한계에 도달했고 몇 가지 중요한 성능 문제가 발생했습니다."

“해결책으로, 우리는 UI에 표시하기 위해 많은 것을 미리 계산하려고 했습니다. 하지만 매시간 스캔을 하고, 계산을 하는 데 1시간 30분이 걸린다면 엄청난 백로그를 얻게 될 거였습니다."

Nucleus는 베타 고객에게 필요한 용량을 따라잡을 수 있는 모든 성능을 끌어내기 위해, 쿼리를 조정하는 데 많은 시간을 할애했습니다. 그러나 클러스터링과 로드 밸런싱 구성을 사용할 수 있음에도 불구하고, Nucleus가 수십만 개의 장치와 수천만 개의 취약성을 가진 초대형 기업을 지원하려면 다른 데이터베이스 솔루션이 필요하다는 것이 분명했습니다.

상용 클라이언트는 매일 또는 매주 여러 번 취약점을 검색합니다. 그들은 몇 시간 또는 그 이상이 아닌 몇 분 안에 스캔 결과를 보고 싶었습니다. 하지만 시간이 지나면서 백로그가 쌓여 Nucleus 애플리케이션이 작업을 충분히 빠르게 처리할 수 없는 한계에 도달했습니다. 배치 처리는 연방 기관과 협력했지만, 기업은 실시간 취약성 관리를 요구하였습니다.

Kuffer는 다음과 같이 말했습니다. "항상 병목 현상을 일으키는 것은 데이터베이스였습니다. 우리는 몇 가지 NoSQL 솔루션을 살펴보았습니다. 클러스터링을 위해 Percona를 살펴보았지만, 많은 코드와 모든 쿼리를 다시 작성해야 했습니다.” Nucleus Security는 Greenplum과 같은 PostgreSQL 코어를 기반으로 하는 다른 SQL 솔루션도 조사했습니다.

상업적으로 실행 가능한 Nucleus 버전을 위한 관계형 데이터베이스에는 다음이 필요했습니다.

  • 실시간 처리
  • 수천만 개의 취약점과 수십만 개의 장치 지원
  • 높은 확장성

취약점 관리 플랫폼용 SingleStore DB의 이점

Nucleus Security는 취약점 관리 플랫폼에 더 적합한 MariaDB의 대안을 찾기 시작했습니다. 그들은 Percona를 먼저 찾았지만, 초기 테스트에서 사용 사례에 도움이 되지 않는 것으로 나타났습니다. 확장성은 고가용성 클러스터가 되는 데 더 중점을 둡니다. 클러스터에 추가하고 다른 노드에서 로드 밸런싱 방식을 사용할 수는 있었지만, 이는 매우 수동적인 프로세스였습니다. 또한, 최소 3개의 서버가 필요했습니다.

SingleStore는 Nucleus Security가 데이터베이스를 검색하는 동안 등장했으며, 처음부터 깊은 인상을 남겼습니다. Carter는 다음과 같이 말했습니다. “SingleStore는 좋은 선택이었습니다. SingleStore는 관계형일 뿐만 아니라, MariaDB에 내재된 MySQL 유선 프로토콜도 지원합니다.” MariaDB를 거의 즉시 교체할 수 있었고, 우리가 보고 있던 Percona 클러스터 솔루션보다 훨씬 덜 복잡하고 유지 관리가 훨씬 쉽습니다."

SingleStore는 최고의 동시성으로 최대의 수집 및 쿼리 성능을 제공할 수 있도록, 확장 가능한 클라우드 네이티브 아키텍처를 통해 최신 애플리케이션 및 분석 시스템을 지원하는 모든 데이터 집약적 애플리케이션을 위한 단일 데이터베이스입니다. 다음과 같은 강력한 기능을 제공합니다.

  • 멀티 클라우드를 포함한 범용 하드웨어를 사용하여 베어 메탈에서 하이브리드 클라우드에 이르기까지 어디에서나 실행할 수 있는 최적화
  • 간편한 배포
  • 고속 빅 데이터 워크로드를 위한 레거시 RDBMS 및 NoSQL 데이터베이스보다 우수한 성능
  • 메모리 최적화
  • 기존 시스템과 통합하여 낮은 총 소유 비용
  • ACID 트랜잭션으로 초당 수백만 개의 이벤트를 수집하는 동시에 관계형 SQL, JSON, 지리 공간 및 전체 텍스트 검색 형식으로 수십억 개의 데이터 행을 분석합니다.
  • 데이터 샤딩
  • 지연 없는 분석
  • 원활한 수평 및 수직 확장
  • 워크로드 관리
  • 압축된 온디스크 테이블

Nucleus의 MariaDB에서 SingleStore DB로 전환

Nucleus Security는 2019년 초, PoC를 위해 SingleStore DB 프리티어를 사용했습니다. 그들은 가장 느린 쿼리를 테스트하기 위해 1억 개의 행이 있는 여러 테이블이 포함된 MariaDB에서 80~100 GB의 데이터를 가져왔습니다. 개발 데이터베이스를 SingleStore DB로 마이그레이션하고, 아키텍처 변경 없이 Nucleus가 작동하도록 하는 데는 오후에 불과했습니다.

Carter는 다음과 같이 말했습니다. “설치가 정말 간단했습니다. 저는 Oracle 데이터베이스 클러스터를 설정한 경험이 있으며, 마이그레이션 작업은 악몽이 될 수 있었습니다. 그러나 SingleStore에 대한 우리의 경험은 매우 좋았습니다. SingleStore를 유지 관리하고 문제를 해결하는 데 많은 시간을 소비하지 않았습니다.”

성공적인 PoC에 이어, Nucleus 애플리케이션은 오스트레일리아, 미국 및 유럽 연합의 고객을 위한 여러 단일 서버 인스턴스와 함께 3노드 클러스터로 이동했습니다. Nucleus를 테스트하고 배포하고 SingleStore DB에서 완전히 프로덕션에 사용하는 데 3-4주가 걸렸습니다. Nucleus는 마이그레이션 직후인 2019년 3월에, 첫 번째 핵심 클라이언트인 Australian Post Office를 받았습니다.

그들은 2,000개의 코드 리포지토리를 가지고 있었고, 하루에 약 50,000개의 스캔이 필요했습니다.

Kuffer는 다음과 같이 말합니다. "우리는 확실히 SingleStore가 없었다면, 그들이 가진 규모를 지원할 수 없었을 것입니다.”

아키텍처 변경 없음

Nucleus 앱은 고객이 사용하는 취약점 검색 도구의 API에서 직접 데이터를 가져와 Jira 또는 ServiceNow와 같은 작업 스케줄링 시스템과 직접 상호 작용합니다. 현재로서는 Kafka 또는 기타 스트리밍 기술을 사용할 필요가 없습니다.

Nucleus는 SingleStore로 마이그레이션하기 위해, 애플리케이션의 아키텍처를 변경할 필요가 없었습니다. SingleStore는 MariaDB 드롭인 교체가 가능했습니다. 둘 다 MySQL과 호환이 되기 때문에, 마이그레이션은 쉬웠습니다. MariaDB를 SingleStore로 교체함으로써 Nucleus 고객은 이제 완전한 확장성으로, MSSP를 지원할 수 있습니다.

참조 아키텍처: MariaDB를 SingleStore로 대체하는 Nucleus

Nucleus 팀은 SingleStore로 마이그레이션을 하기 위해 아키텍처를 변경할 필요가 없었으며 SingleStore를 사용하는 것이 "매우 간단"했다고 설명합니다. Stephen은 다음과 같이 말했습니다. “설치가 정말 간단했습니다. 저는 Oracle 데이터베이스 클러스터를 설정한 경험이 있으며, 마이그레이션 작업은 악몽이 될 수 있었습니다. 그러나 SingleStore에 대한 우리의 경험은 매우 좋았습니다. 우리는 그것을 유지 관리하고 문제를 해결하는 데 많은 시간을 소비하지 않습니다. MariaDB를 사용하는 사람이라면 누구에게나 추천합니다. "

Nucleus Security가 AWS에 SingleStore DB를 배포한 이유

Nucleus Security는 다음과 같은 몇 가지 이유로 SingleStore 관리 서비스 대신 AWS에서 SingleStore DB를 사용하기로 결정했습니다.

  • 엔터프라이즈 클라이언트는 민감한 데이터에 대해 엄격한 보안 및 규정 준수 요구 사항을 가지고 있습니다.
  • 일부 Nucleus 클라이언트는 해당 국가 또는 지역 내의 서버에서 데이터를 호스팅해야 합니다.
  • 기업은 소규모 제3자 제공업체에 불편할 수 있습니다.

SingleStore DB가 Nucleus 보안을 달성하는 데 도움이 된 것

Nucleus Security는 취약점 관리 플랫폼에 SingleStore DB를 활용하여 다음을 제공합니다.

  • ​스키마나 쿼리 변경 없이 쿼리 속도가 2~20배 빨라졌습니다.
  • SingleStore의 데이터 압축을 통해 동일한 하드웨어에서 고객 규모 용량을 5 – 10배 증가시켜 90GB를 5GB로 줄였습니다.
  • 대기업 클라이언트를 지원하기 위해 빠르고 쉬운 수평 및 수직 데이터베이스 확장이 가능합니다.
  • 3시간 만에 5,000개 자산에서 45분 만에 100,000개 자산으로 자산 스캔 수집에서 50배 개선을 달성했습니다.
  • Percona가 필요로 하는 것의 1/3로 AWS 비용을 유지했습니다.

Carter는 다음과 같이 설명합니다. “여러 공급업체가 확장 가능한 취약성 관리 제품을 구축하려고 시도했지만 실제로 시장에 나온 것은 없습니다. 그러다가 10배 규모의 고객을 처리하고 미래의 성장도 준비할 수 있는 SingleStore를 찾았습니다. 수년 동안 대기업과 관리형 서비스 보안 제공업체는 확장 가능한 취약성 관리 솔루션을 찾고 있었습니다. 많은 사람들이 그러한 플랫폼을 스스로 구축하려고 시도했습니다. 이제 우리는 SingleStore 덕분에 그것을 갖게 되었고 빠르게 성장하고 있습니다. "

이 YouTube 비디오에서 자세히 알아보기: SaaS 성공을 위한 실행 코드 – Know Show

Nucleus Security의 다음 단계는 무엇입니까?

빠르게 확장되는 고객 기반을 가진 회사로서 Nucleus Security는 이제 막 시작되었습니다. 팀은 엔터프라이즈 취약성 검색 도구에서 생성되는 데이터의 증가하는 양을 따라잡기 위해 지속적으로 노력하고 있으며, 스캐너 및 외부 도구와의 70개 이상의 통합 목록을 지속적으로 확장하고 있습니다. Nucleus Security는 계속해서 SingleStore와 긴밀히 협력할 것이며 SingleStore DB의 새로운 기능이 플랫폼의 성장을 뒷받침할 수 있기를 기대합니다.

 

 

2020년 11월 4일

Domenic Ravita


 

www.a-platform.biz | info@a-platform.biz