2026년 하루 평균 보고된 CVE가 전년 대비 131% 증가했습니다.

비교

CRACI vs ONEKEY

ONEKEY는 출시하는 펌웨어를 살펴봅니다. CRACI는 그 펌웨어를 만든 빌드를 살펴봅니다. 대부분의 디바이스 제조업체에게 둘은 서로 다른 질문에 답하며, 두 질문 모두 Cyber Resilience Act에서 제기됩니다.

업데이트

간단한 답변

ONEKEY는 커넥티드 디바이스를 위한 제품 사이버 보안 및 컴플라이언스 플랫폼입니다. 펌웨어 이미지를 업로드하면 소스 코드 없이 바이너리를 분석하여 구성 요소, 알려진 취약점, 제로데이 가능성, 컴플라이언스 공백을 찾아냅니다. CRACI는 각 빌드가 실행되는 동안 가져오는 항목을 기록하고 그 기록으로부터 SBOM을 생성하는 GitHub Actions 러너입니다. ONEKEY는 결과물을 분석하고, CRACI는 빌드의 증거를 남깁니다. 두 제품은 함께 잘 맞으며, 어느 쪽도 다른 쪽을 대체하지 않습니다.

한눈에 보기

기능 CRACI ONEKEY
펌웨어 빌드가 가져온 항목 기록 각 작업 중 러너가 관찰 빌드 후 이미지를 분석
CI 빌드 실행 CRACI 러너에서 작업 실행 CI가 펌웨어를 ONEKEY에 업로드
완성된 바이너리 이미지 분석 자동화된 바이너리 펌웨어 분석
직접 빌드하지 않은 펌웨어 지원 빌드를 CRACI에서 실행해야 함 소스 코드나 네트워크 접근 불필요
바이너리 제로데이 분석 하드코딩된 자격 증명 같은 문제 탐지
CycloneDX 및 SPDX 형식 SBOM 빌드에서 생성, 완전성 상태 포함 바이너리에서 생성, SBOM 가져오기 지원
빌드 실행 중 이그레스 정책 작업 전 검증, 실패 시 차단(fail closed) 범위 밖
출시 후 모니터링 모니터링 중인 SBOM을 지속적으로 재평가 펌웨어를 매일 재분석
표준 대비 가이드형 점검 SBOM 내보내기와 API, 보고서 내보내기나 표준 마법사 없음 CRA, IEC 62443 등을 위한 Compliance Wizard
CI 시스템 현재 GitHub Actions 지원, GitLab CI와 Jenkins는 로드맵에 포함 GitHub, GitLab, Jenkins용 문서화된 예제
  • 포함
  • 일부 지원
  • 미포함

ONEKEY의 강점

ONEKEY 홈페이지
onekey.com

소스 코드 없는 바이너리 분석. ONEKEY는 컴파일된 펌웨어를 직접 분석합니다. 웹사이트에서도 "소스 코드나 네트워크 접근이 필요 없습니다"라고 분명히 밝히고 있습니다. 디바이스에 탑재되는 것의 상당 부분이 칩 공급업체, 모듈 공급업체, 협력업체에서 오고 그들의 빌드를 볼 수 없는 경우에 이 점이 중요합니다.

알려진 CVE를 넘어서는 발견 사항. ONEKEY는 구성 요소를 취약점 데이터와 대조하는 것 외에도, 바이너리에서 명령 인젝션, 안전하지 않은 통신, 하드코딩된 자격 증명 같은 문제를 찾는 자동화된 제로데이 분석을 수행합니다.

이미지에서 생성하는 SBOM. ONEKEY는 바이너리에서 SBOM을 생성하고, 소스 스캐너나 공급업체의 SBOM을 가져올 수 있으며, CycloneDX와 SPDX로 내보냅니다.

컴플라이언스 가이드. ONEKEY Compliance Wizard는 Cyber Resilience Act, IEC 62443-4-2, ETSI EN 303 645, Radio Equipment Directive의 요구 사항을 단계별로 안내하며, 서드파티 인증을 위한 결과를 내보냅니다.

모니터링과 CI. 펌웨어 모니터링은 새 취약점이 나타나면 업로드된 펌웨어를 매일 재분석합니다. ONEKEY 문서는 GitHub, GitLab, Jenkins에서 각 새 빌드를 업로드하고 새로운 발견 사항이 나타나면 파이프라인을 실패시키는 방법을 보여 줍니다. ONEKEY는 바이너리 blob용 오픈 소스 추출 도구 모음인 unblob도 관리합니다.

CRACI가 다른 점

바이너리 스캔은 완성된 이미지에서 거꾸로 거슬러 올라갑니다. CRACI는 빌드가 실행되는 머신 자체이므로 빌드에서부터 앞으로 나아갑니다. Yocto 이미지에 관해서는 SBOM 스캐너가 Yocto 빌드의 구성 요소를 놓치는 이유를 참고하세요.

빌드가 기준입니다

runs-on 한 줄만 바꾸면 펌웨어 워크플로가 CRACI 러너에서 실행됩니다. 작업이 실행되는 동안 패키지를 인식하는 프록시가 패키지 소스로부터 다운로드하는 항목을 기록하며, CI 캐시에서 복원된 패키지도 그대로 이어집니다. 각 SBOM은 작업별·캐시별로 얼마나 완전한지 명시합니다. Complete, Complete with connections, Incomplete, Unavailable, Not recorded 중 하나입니다. Yocto의 경우 CRACI는 최대 32 vCPU, 96 GB RAM 러너에서 BitBake를 실행합니다. core-image-sato를 나란히 빌드한 비교에서 CRACI의 SBOM은 Yocto 자체 SPDX 출력의 모든 구성 요소를 포함했고, 호스트 패키지와 GitHub Actions 등 88개를 더 담았으며, Yocto가 패키지 URL 없이 나열한 653개 Rust crate 버전 각각에 패키지 URL을 붙였습니다. BitBake가 Yocto 소스 미러에서 가져오는 소스는 CRACI 작업 SBOM에 기록됩니다.

빌드가 접근할 수 있는 대상 제어

러너 수준의 이그레스 정책이 작업이 연결할 수 있는 호스트를 결정합니다. 정책은 작업 시작 전에 검증되고, 실패 시 차단(fail closed)되며, 위반 시 알림을 보냅니다. Yocto의 경우 BitBake 자체의 BB_ALLOWED_NETWORKS에 두 번째 방어 계층을 더합니다.

출처 증명과 출시된 것

API는 SBOM, 네트워크 트레이스, 출처 증명을 반환합니다. CRACI는 출처 증명에 서명하지 않습니다. 빌드와 리포지토리 전반의 취약점을 집계하고, 새 보안 권고가 나오면 모니터링 중인 SBOM을 계속 재평가합니다.

여기서도 CRACI가 하지 않는 일이 그만큼 중요합니다. CRACI는 바이너리를 분석하지 않으므로, 빌드가 다운로드한 공급업체 blob 안에 무엇이 있는지는 알려 줄 수 없고, 빌드가 그것을 가져왔다는 사실과 어디에서 가져왔는지만 알려 줍니다.

어디에 무엇이 배포되었는지에 대한 인벤토리

CRACI의 인벤토리 뷰는 어떤 소프트웨어 버전이 어떤 제품에 배포되었는지 전 세계 범위에서 정확히 보여 줍니다. 새로운 취약점이 발견되면 릴리스 노트와 스프레드시트를 맞춰 보는 대신, 영향을 받는 버전을 실행하는 제품을 바로 확인할 수 있습니다.

언제 무엇을, 그리고 언제 둘 다 사용해야 할까

  • 직접 빌드하지 않은 펌웨어를 통합하는 경우. ONEKEY를 사용하세요. 그 내부를 들여다보는 방법은 바이너리 분석입니다.
  • GitHub Actions에서 자체 Linux 이미지를 빌드하는 경우. CRACI가 빌드를 실행하고 입력을 기록합니다. ONEKEY를 더하면 완성된 이미지에 대한 두 번째 독립적인 관점을 얻을 수 있습니다.
  • 감사인이 SBOM이 제품과 일치한다는 것을 어떻게 아느냐고 묻는 경우. CRACI의 러너 기록은 "이 빌드에 무엇이 들어갔는가"에, ONEKEY의 분석은 "이 이미지에 무엇이 들어 있는가"에 답합니다. 둘을 함께 쓰면 서로를 교차 검증합니다.
  • IEC 62443이나 ETSI EN 303 645에 대한 가이드형 점검이 필요한 경우. ONEKEY에 해당 기능이 내장되어 있습니다. CRACI는 더 넓은 프로세스를 위해 SBOM을 CycloneDX 또는 SPDX로 내보내고, API로 네트워크 트레이스와 출처 증명을 반환합니다.

CRA 대응

Cyber Resilience Act는 제조업체에 SBOM을 포함해 제품의 구성 요소를 식별·문서화하고, 제품이 지원되는 기간 동안 취약점을 처리하도록 요구합니다. 적극적으로 악용되는 취약점의 보고 의무는 2026년 9월부터 적용됩니다. ONEKEY는 시장에 출시하는 펌웨어를 분석하고 요구 사항을 안내하는 방식으로 도움을 줍니다. CRACI는 그 펌웨어에 무엇이 들어갔는지에 대한 빌드별 증거를 출처 증명 및 지속적인 모니터링과 함께 생성하는 방식으로 도움을 줍니다. CRACI는 제조업체가 더 넓은 CRA 컴플라이언스 프로세스에 필요로 하는 소프트웨어 공급망 가시성과 증거의 상당 부분을 자동화하지만, 그 자체로 제품을 규정에 부합하게 만들지는 않습니다. CRA의 요구 사항을 읽어 보세요.

ONEKEY와 함께 CRACI 추가하기

ONEKEY 업로드 단계는 그대로 두세요. runs-on: craci를 설정해 펌웨어 작업을 CRACI 러너로 옮기면, 같은 워크플로가 GitHub Actions에서 계속 실행되는 동안 CRACI가 빌드를 기록합니다. 그러면 ONEKEY로의 업로드는 증거가 있는 빌드에서 이루어집니다. CRACI 문서의 Yocto 예제는 전체 BitBake 워크플로를 보여 줍니다. CRACI는 현재 GitHub Actions만 지원하므로, GitLab이나 Jenkins 파이프라인은 CRACI 러너를 사용하려면 옮겨야 합니다. GitLab CI와 Jenkins는 로드맵에 있습니다. CRACI가 산업용 IoT 및 소비자 가전 분야에서 어떻게 작동하는지 확인해 보세요.

두 가지가 넘는 도구를 검토하고 계신가요? ONEKEY 대안에서 9가지 옵션을 나란히 비교합니다.

펌웨어 빌드를 가지고 데모에 참여하세요

데모를 예약하시면 고객님의 GitHub Actions 펌웨어 빌드 하나를 CRACI에서 실행하고, 빌드가 가져온 항목을 함께 살펴봅니다.

데모 예약