Offcanvas
Some text as placeholder. In real life you can have the elements you have chosen. Like, text, images, lists, etc.
Offcanvas
1111Some text as placeholder. In real life you can have the elements you have chosen. Like, text, images, lists, etc.

스팀파이프

블로그 | 스팀파이프와 마스토돈으로 오픈소스판 ‘블룸버그 터미널’ 만들기

오픈소스 기반 클라우드 쿼리 관리 기술인 스팀파이프(Steampipe)와 마스토돈(오픈소스 분산형 소셜 네트워크)을 함께 사용하면 다양한 기술 실험을 할 수 있다. 그런 의미에서 필자는 마스토돈 API를 포스트그레SQL 외부 테이블에 매핑하는 플러그인과 쿼리 기능을 결합해 페디버스(fediverse) 활동에 필요한 기반을 만들 수 있다고 생각했다. 막상 살펴보니 두 가지 이유로 구현하기 어려웠다.   첫째, 마스토돈 커뮤니티는 분석에 필요한 일종의 감시를 반기지 않는다. 사실 원래 그런 기조가 커뮤니티 안에 있었다. 이후 상황이 급변했지만 일단 필자는 그 정신을 존중하고 싶다. 다른 누군가가 페디버스를 크롤링하고 인덱싱할 수 있지만, 필자까지 거기에 힘을 보탤 필요는 없을 것 같다. 그런 방식은 API 데이터의 실시간 수집, 쿼리, 시각화로 대표되는 스팀파이프의 장점을 제대로 살리지 못하기도 한다. 둘째, 마스토돈의 API는 5분당 300개의 요청을 허용한다. 물론 스팀파이프를 일괄 처리(batch) 모드를 활용해 제약을 없애고 포스트그레SQL 데이터베이스에 데이터를 영구적으로 저장할 수 있다. 하지만 이는 스팀파이프와 마스토돈 기술 모두의 철학을 거스르는 것이다. 마스토돈 클라이언트는 동일하게 API 제한을 받는다. 웹 앱을 사용하거나 폰 앱을 사용한다면 ‘제한에 도달했으므로 몇 분 동안 기다려야 한다’는 메시지를 볼 일이 없을 것이다. 실제 필자가 테스트해본 결과 웹 앱을 사용하는 동시에 스팀파이프로 API를 쿼리하기 전까지는 그 메시지를 본 적이 없다.  마스토돈 기술은 딥 데이터 마이닝이라는 철학에 저항한다. 그렇다면 그런 제한 속에 스팀파이프는 어떤 종류의 마스토돈 클라이언트를 실현할 수 있을까? 일단 스팀파이프는 읽기 전용 시스템이므로 일반적인 클라이언트는 아닐 것이다. 가능한 방향은 인터랙티브 앱을 보강하는 일종의 리더 또는 브라우저다. 스팀파이프를 이용한 대시보드는 홈, 로컬, 연합 타임라나, 툿(toot) 기...

스팀파이프 마스스톤 2023.01.10

스팀파이프로 코드형 KPI를 구현하는 방식

시아란 피네건은 CMD 솔루션스(CMD Solutions) 오스트레일리아의 사이버 보안 실무 책임자, 필 매신은 같은 회사의 선임 보안 컨설턴트다. 이 두 사람은 약 1년 전 스팀파이프(Steampipe)와 크라우드스트라이크(CrowdStrike) 플러그인을 사용해 고객의 AWS 환경을 스캔하기 시작했다.   현재 피네건과 매신은 이른바 “지속적 컨트롤 보장(continuous controls assurance)”, 다른 표현으로 “코드형 KPI”를 위한 내부 시스템을 구축 중이다. KPI(핵심 성과 지표)의 예를 들면 다음과 같다.   치명적이거나 심각도 높음 수준의 취약점은 조직의 정책 기간 내에 교정된다. 이 목표를 코드로 어떻게 변환할 수 있을까? 스팀파이프를 사용하면 소프트웨어 스택이 노출하는 다양한 API에 걸쳐 조인이 가능한 SQL 쿼리를 작성하는 방법으로 가능하다. 즉, 엔드포인트 관리 시스템인 크라우드스트라이크에 쿼리한 다음 인력 관리 시스템인 세일즈포스(Salesforce)의 정보와 결합해서(둘 중 하나 또는 둘 모두 변경될 수 있음을 인식함) 취약점에서 디바이스, 그리고 사람으로 매핑되는 쿼리 결과를 생성한다는 의미다.   다음은 쿼리다.   SELECT     ZTA.system_serial_number || ' (' || salesforce_krow__project_resources__c.name || ')' as resource,    CASE       WHEN ZTA.assessment ->> 'os' = '100' THEN 'ok'         ELSE 'alarm'     END AS status,     ZTA.system_serial_number || ' (' || ...

스팀파이프 크라우드스트라이크 2023.01.02

회사명 : 한국IDG | 제호: ITWorld | 주소 : 서울시 중구 세종대로 23, 4층 우)04512
| 등록번호 : 서울 아00743 등록일자 : 2009년 01월 19일

발행인 : 박형미 | 편집인 : 박재곤 | 청소년보호책임자 : 한정규
| 사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2023 International Data Group. All rights reserved.