Transcript
00:00:00공급망 공격에서 정말 짜증 나는 점이 뭔지 아세요? 모두가 당황할 때쯤이면
00:00:04이미 문제는 '운영 환경이 안전한가?'가 아니라 '누가 로컬에 이걸 설치했는가?'가 되어버린다는 거죠.
00:00:09이건 Bumblebee입니다. Perplexity에서 만든 새로운 오픈 소스 도구로, 개발자 기기를 스캔하여
00:00:15패키지, 확장 프로그램, MCP 설정을 패키지 관리자를 실행하거나
00:00:21프로젝트 코드를 실행하지 않고도 찾아냅니다. 일일이 확인할 필요 없이 몇 초 만에 로컬 인벤토리를 얻을 수 있죠.
00:00:26실제로 한번 실행해 보겠습니다. 그러고 나서 어디서 작동하고 어디서 안 되는지 이야기해 보죠.
00:00:36자, 예전 모델은 간단했어요. 레포를 스캔하고, 컨테이너를 스캔하고, 운영 환경을 스캔하는 것이었죠.
00:00:41하지만 요즘은 다들 그렇게 일하지 않습니다. 오늘날 노트북 한 대에는 패키지 관리자,
00:00:46브라우저 확장 프로그램, 에디터 확장 프로그램, AI 코딩 도구, 로컬 에이전트까지 이 모든 게 함께 공존합니다.
00:00:53한 기기에 너무 많은 신뢰가 쌓여 있는 셈이죠. Perplexity는 바로 이 문제를 위해
00:00:58Bumblebee를 내부적으로 개발했고, 며칠 전에 오픈 소스로 공개했습니다. Bumblebee는 읽기 전용 단일 바이너리 스캐너로,
00:01:05로컬 메타데이터에서 패키지, 에디터 확장 프로그램, 브라우저 확장 프로그램, 그리고 AI 도구 설정을 인벤토리화합니다.
00:01:11npm ls도, pip show도, 임의의 프로젝트 코드 실행도 필요 없습니다. 그저 메타데이터만 읽을 뿐이죠. 실행해 봅시다.
00:01:19워크플로를 빠르게 해주는 코딩 도구를 좋아하신다면 구독해 주세요. 영상이 계속 올라올 겁니다.
00:01:24좋습니다. 첫 번째 단계로 GitHub에서 go install을 통해 설치해야 합니다.
00:01:29그럼 단일 Go 바이너리가 생깁니다. 데몬도 없고 서비스도 필요 없죠. 이제 자가 테스트를 실행해 보죠.
00:01:37명령어는 'Bumblebee self test'를 실행하면 끝입니다. 결과가 잘 나오길 바랍니다. 오, 좋네요. 스캐너가
00:01:46알려진 고정 데이터를 올바르게 감지했습니다. 방금 그 테스트가 확인해 준 거죠. 이제 기본 스캔을 실행하겠습니다.
00:01:52간단합니다. 'Bumblebee scan profile'을 입력하고, 'baseline'이라고 설정한 뒤,
00:01:57nd.json 파일을 넣어주면 됩니다. 이건 일반적인 개발자 엔드포인트 인벤토리를 위해 사용하는 스캔입니다. 공통,
00:02:05글로벌 및 사용자 수준의 패키지 경로, 에디터 확장 프로그램, 브라우저 확장 프로그램, 지원되는 MCP
00:02:10설정을 확인합니다. 이제 출력 결과를 보죠. head 명령어를 실행해 보겠습니다. 이게 바로 Bumblebee가
00:02:17수행하는 핵심입니다. 각 줄이 구조화된 레코드입니다. 생태계, 패키지 이름,
00:02:25버전, 소스 파일, 신뢰 수준, 메타데이터, 그리고 Bumblebee가 발견한 위치까지 알 수 있습니다. 그러니 이제,
00:02:31'시스템 어딘가에 이게 설치되어 있을까?'라고 궁금해할 필요 없이, 바로 여기서 확인할 수 있게 된 거죠.
00:02:36이건 읽기 전용 메타데이터 파싱이기 때문에 Bumblebee는 npm을 호출하지 않습니다. 파이썬 패키지를
00:02:43가져오지도 않고, Go 프로젝트를 빌드하지도 않습니다. 오로지 파일만 읽을 뿐이죠.
00:02:50이게 사고 대응 시 유용한 이유입니다. Go가 설치되어 있다면,
00:02:55지금 영상을 멈추고 직접 본인 기기에서 시도해 보셔도 좋습니다. 아주 쉽게 실행할 수 있거든요.
00:03:00좋아요, 그런데 이게 왜 또 다른 보안 스캐너가 아닌 걸까요? 이미 그런 도구는 많잖아요. 음,
00:03:06처음 보면 그렇게 생각할 수도 있습니다. 그냥 또 다른 SCA 도구인가 싶겠지만, 실제로는
00:03:12그렇지 않습니다. SCA 도구는 주로 애플리케이션 종속성에 관한 것이고, SBOM 도구는 배포하는 것에 관한 것입니다.
00:03:19EDR은 실행된 파일에 대한 것이죠. Bumblebee는 '로컬 개발자 상태'에 집중합니다. 예를 들어, 악성
00:03:26패키지 권고 사항이 떴다고 해보죠. 어떤 노트북이 노출되었는지 알아야 합니다. 뻔한 방법은
00:03:32모두에게 패키지 관리자 명령어를 실행해 보라고 하는 건데, 그게 여기서 가장 위험한 행동입니다.
00:03:38만약 악성 코드를 찾고 있다면, 명령어를 실행하는 과정에서 의도치 않게 그 악성
00:03:42행위를 유발하고 싶진 않겠죠. 그래서 Bumblebee는 간단합니다. 메타데이터를 읽고, 인벤토리를 출력하고, 알려진 취약점과 대조한 뒤,
00:03:49바로 종료합니다. 끝이에요. 스캔 프로필은 세 가지가 있습니다. 첫 번째는 'baseline'입니다. 이것은
00:03:55가벼운 정기 스캔용입니다. 글로벌 패키지, 사용자 수준 도구 체인, 확장 프로그램,
00:04:02그리고 MCP 설정을 확인합니다. 기본적으로 개발자 기기에 보통 존재하는 것들이죠. 이 스캔이
00:04:09그 질문에 답을 해줍니다. 그다음은 프로젝트 스캔입니다. 코드, 소스, 작업 폴더와 같은
00:04:14알려진 작업 디렉토리를 위한 것이죠. 실제 개발 폴더 전반의 잠긴 파일들이 중요할 때 사용하세요.
00:04:20그리고 더 깊게 스캔할 수도 있습니다. 이것이 사고 대응 모드입니다.
00:04:26특정 경로를 지정하거나 홈 디렉토리처럼 넓은 범위를 지정할 수 있는데, 보통 취약점 카탈로그나
00:04:32지속 시간 제한을 함께 사용합니다. 평소에는 'Bumblebee scan profile baseline'을 쓰다가,
00:04:38나쁜 일이 생기면 더 깊은 스캔으로 전환하는 거죠. 명령어로 더 깊게 스캔할 수도 있습니다.
00:04:44평소엔 baseline, 사고 발생 시엔 deep scan, 이게 전체적인 과정입니다.
00:04:51커버리지도 상당히 흥미로운 부분입니다. Bumblebee는 npm, pnpm, yarn, bun,
00:04:58Go 모듈 등 모든 것을 아우를 수 있죠. 게다가 지원되는 MCP JSON 설정까지 살펴봅니다. 이건 매우 중요한 기능인데,
00:05:06요즘 MCP 설정이 새로운 ENV 파일이 되어가고 있기 때문입니다. 시스템 곳곳에 퍼져 있거든요. Bumblebee는 또한
00:05:13NDJSON 형태로 출력합니다. 어떤 사람들은 싫어하겠지만, 다른 관점에서 보면
00:05:18JQ로 파이프를 연결하거나, 파일로 저장하거나, MDM으로 수집하거나, SIEM으로 전송하거나,
00:05:25혹은 다른 에이전트 워크플로에 전달할 수 있다는 뜻입니다. 그저 지루하고 스크립트 가능한 인프라가 되려는 거죠. 이런 종류의
00:05:32문제에서는 지루한 게 최고입니다. 자, 이건 빠릅니다. 정말 빨라요. 비표준 라이브러리 의존성이
00:05:38전혀 없는 단일 Go 바이너리거든요. 개발자에게 아주 친화적인 시작점입니다. 즉,
00:05:45안전하게 설계되었다는 뜻입니다. 읽기 전용 접근 방식은 사소한 디테일이 아닙니다. 공급망 사고 중에는,
00:05:51함부로 패키지 관리자를 실행하는 게 최선의 계획은 아닐 수 있습니다. 만약 보고 있는 패키지에
00:05:58악성 라이프사이클 스크립트나 이상한 플러그인 동작이 포함되어 있다면, 스캐너가
00:06:03그걸 실행해 버리길 원치는 않을 테니까요. 또한, 이건 실제적인 공백을 채워줍니다. 대부분의 팀은
00:06:10CI, 컨테이너 운영 환경, 그리고 엔드포인트에 대한 가시성은 어느 정도 확보하고 있지만, 개발자 기기는
00:06:17지저분해지기 쉽습니다. 미완성 프로젝트, 옛날 클론들, 글로벌 패키지, 테스트 가상 환경,
00:06:23AI 도구까지 공식 인벤토리에는 절대 나타나지 않는 모든 것들이 있죠. Bumblebee는
00:06:30그런 로컬 상태를 볼 수 있는 실용적인 방법을 제공합니다. 마지막으로, AI 설정 커버리지도 시기적절합니다. 로컬
00:06:36에이전트, MCP 서버, 도구 호출 워크플로가 빠르게 움직이고 있으니까요. 하지만 Bumblebee를
00:06:43사용하기 전에 이 점을 명심하세요. 이건 아주, 아주 따끈따끈한 신상입니다. 이제 막 나왔죠.
00:06:49그러니 변화를 예상하세요. 지금은 macOS와 Linux에 집중하고 있습니다. 취약점 카탈로그 흐름은 훌륭하지만,
00:06:54좋은 권고 데이터가 있을 때 Bumblebee가 훨씬 유용해진다는 뜻이기도 합니다. 이건 EDR이 아닙니다.
00:07:02이건 좀 더 좁은 질문에 답하는 도구입니다. '이 기기에 어떤 패키지, 확장 프로그램, 개발 도구 설정이 존재하는가?'
00:07:09그리고 '나쁜 것으로 알려진 것과 일치하는 게 있는가?'가 포인트입니다. 기존 보안 스택을 대체하는 게 아니라,
00:07:14보안 스택이 제대로 보지 못하는 부분을 메워주는 도구죠. 그래서
00:07:19Bumblebee를 써야 할까요? 제 대답은 '네'입니다. 특히 일상 업무가
00:07:24npm, Go, VS Code, Cursor, Claude, 서버 등을 다룬다면요. 일주일에 한 번씩 기본 스캔을 실행하세요.
00:07:32명령어 하나면 됩니다. 'Bumblebee scan profile'을 실행하면 제가 보여드린 작업을 수행할 겁니다.
00:07:37이제 기기에 뭐가 있는지 스냅샷을 갖게 된 거죠. NDJSON을 중앙 어딘가에 저장해 두세요.
00:07:43그러고 나서 사고가 터지면 Slack에서 일일이 '혹시 이거 설치한 사람?'이라고 물어보는 대신,
00:07:49전체적으로 검색할 수 있습니다. Bumblebee는 로컬 패키지 메타데이터, 확장 프로그램 매니페스트,
00:07:55지원되는 AI 도구 설정을 통해 개발자 기기가 현재 무엇을 노출하고 있는지 알려줍니다. 첫 1시간 안에
00:08:02무슨 일이 벌어질지 모를 때 엄청나게 유용하죠. 아무도 논쟁하고 싶어 하지 않거든요. 누구에게 노출되었는지, 어디에 있는지,
00:08:08얼마나 빨리 증명할 수 있는지가 중요할 뿐이죠. 그런 면에서 Bumblebee는 매우 매력적입니다. 우리가 새로 얻은
00:08:14아주 강력한 오픈 소스 도구예요. 이런 코딩 도구와 팁이 좋으셨다면 BetterStack 채널을
00:08:18구독해 주세요.
00:08:20다음 영상에서 뵙겠습니다.
Community Posts
No posts yet. Be the first to write about this video!
Write about this video