Skip to content

Latest commit

 

History

History
42 lines (42 loc) · 14 KB

List of OSS Compliance Tools.md

File metadata and controls

42 lines (42 loc) · 14 KB

초안 작성 중 (ETRI 박정숙)

List of Opensource Compliance tools

참조: https://oss-compliance-tooling.org/Tooling-Landscape/OSS-Based-License-Compliance-Tools/

1) Feactures of each Compliance Tool

No Name License Descriotion Type Website
1 AboutCode Toolkit Apache-2.0 -프로젝트에서 사용하는 외부 SW 구성요소에 대한 원본, 라이선스, 사용 및 기타 정보를 문서화하는 간단한 방법 제공
- 고지문을 생성하고 프로젝트에서서 사용되는 재배포 가능한 소스코드 식별
https://www.aboutcode.org
2 AboutCode Manager Apache-2.0 - 시각적 UI 제공하여 ScanCode로 식별된 라이선스나 기타 알림을 평가하고 구성요소의 유효 라이선스에 대한 결론 기록
- Electron 기반, nexB의 AboutCode 도구를 사용하기 위한 기본 데스크톱/GUI 도구
https://www.aboutcode.org
3 Apache Rat Apache-2.0 - 라이선스에 중점을 둔 릴리즈 audit 도구 (Apaceh Creadur 프로젝트의 일부)
- Java로 코딩, Maven 및 Ant용 플러그인을 사용하여 명령줄에서 실행
https://creadur.apache.org/rat
4 Apache Tentacles Apache-2.0 - 릴리즈할 산출물이 포함된 저장소와의 인터랙션을 자동화하여 검토 작업 단순화
- Java로 코딩, CLI 실행
https://creadur.apache.org/tentacles
5 Apache Whisker Apache-2.0 - 조립된 응용이 올바른 법적 문서를 유지하도록 지원
- 복잡한 조립 응용 프로그램에 특히 유용
https://creadur.apache.org/whisker
6 Bang AGPL-3.0 - 바이너리 파일 분석 도구
- 바이너리 파일의 내용을 찾아 추출된 정보를 라이선스 준수, 보안 연구 또는 구성 분석과 같은 추가 분석에 사용할 수 있도록 만듦
- 감지, 압축풀기 및 레이블 지정이 가능한 약 130개의 다양한 파일 형식을 지원
https://github.com/armijnhemel/binaryanalysis-ng
7 Barista Apache-2.0 - 오픈소스 구성 요소, 라이선스 및 잠재적인 취약점을 감지하는 스캐닝 도구
- 다단계 종속성을 포함하여 오픈소스 BOM을 자동으로 생성하고 유지 관리
- Barista 관리자는 감지된 각 라이선스와 관련된 의무사항을 결정하고 배포 모댈, 적용 가능한 라이선스 및 감지된 종속성에 대한 문서화된 취약성을 기반으로 프로젝트 승인 상태 할당
- 클라이드 네이티브 아키텍쳐: 필요에 따라 호스팅 유연성과 확장성을 헝용하는 클라우드 네이티브 배포 환경용으로 설계
https://optum.github.io/barista
8 Bubby MPL-2.0 - 호환 SW를 안심하고 릴리즈할 수 있도록 지원하는 릴리즈 준비 플랫폼
- 보고 및 분석을 통해 릴리즈 프로세스에 대한 가시성을 확보하여 위험을 낮추고 품질을 높이며 주기 시간을 단축하고 지속적인 개선
https://github.com/valocode/bubby
9 CLA Assistant Apache-2.0 - 기여자가 CLA에 서명할 수 있도록 하여 리포지토리에 대한 기여의 법적인 측면을 처리하는 도구
- CLA는 GitHub Gist 파일로 저장 후 CLA Assistant의 저장소/조직과 연결 가능
https://github.com/cla-assistant/cla-assistant
10 Cregit GPL-3.0 - 소스코드의 기여자 식별                                                                                                https://github.com/cregit/cregit
11 Deltacode Apache-2.0 - 패키지, 구성요소, 코드베이스(제품)의 두 버전에 대한 ScanCode 스캔을 쉽게 비교가능하므로 라이선스 변경사항 식별에 중점을 두고 가능한 변경 사항을 빠르게 식별 가능
- ScanCode와 함께 DeltaCode를 사용하여 릴리즈 간 오픈소스 타사 SW 패키지, 구성 요소의 라이선스 및 관련 변경사항을 식별/추적
https://www.aboutcode.org
12 Eclipse SW360 EPL-1.0 - 조직에서 사용하는 SW 구성 요소에 대한 정보 공유를 위한 중앙 저장소를 제공하도록 설계된 SW 카탈로그 응용 프로그램
- 고유한 작업을 위한 별도의 백엔드 서비스 및 이의 액세스를 위한 포틀릿 제공으로 SW 산출물 및 프로젝트 관리용 인프라에 쉽게 통합
- 코드 스캔 도구와 같은 외부 시스템과 상호 작용하는 커넥터 제공
https://projects.eclipse.org/projects/technology.sw360
13 Eclipse SW360antenna EPL-2.0 - 오픈소스 라이선스 준수 프로세스를 최대한 자동화하는 도구
- 1) 모든 규정 준수 관련 데이터 수집
- 2) 해당 데이터를 처리하고 라이선스 준수 관련 문제가 있을 시 경고
- 3) 컴플라이언스 산출물 세트 생성(소스코드 번들, 공개 문서, 보고서)
https://projects.eclipse.org/projects/technology.sw360antenna
14 FOSSLight AGPL-3.0 - 소스코드 내에 저작권 및 라이선스 규칙을 준수했는지 확인하고 또 저작권 및 라이선스 정보를 쉽게 추가할 수 있도록 도와주는 도구 https://fosslight.org
15 Fossology GPL-2.0 - 라이선스, 저작권 및 export 통제 스캔을 위한 스캔 도구. SW의 모든 저작권 고지가 포함된 Readme 또는 SPDX 파일 생성
- 컴플라이언스 워크플로를 위한 웹 UI 및 DB 제공. 스캔 패키지를 서버에 업로드 필요(Monk, Nomos, Ninka)
- 검사된 패키지에 대한 버전 제어가 있으므로 이전 패키지의 최신 버전을 검사할 때 변경된 파일만 다시 검사
https://www.fossology.org
16 LDBCollector BSD-3-Clause - OSS 라이선스 메타데이터를 수집하고 결합하는 응용 프로그램 https://github.com/maxhbr/LDBcollector
17 License Compatibility Checker MIT - SPDX 표준 기반으로 라이선스 호환성을 위한 NPM package.json 종속성 확인
- 라이선스가 얼마나 허용되는지에 대한 설명 및 패키지의 라이선스를 간단히 비교(허용 > 약한 보호 > 강력한 보호 > 네트워크 보호)
https://github.com/HansHamel/license-compability-checker#readme
18 Licensee.js Apache-2.0 - 규칙에 대해 NPM 패키지 종속성 라이선스 메타데이터를 확인하는 CLI
- SPDX 라이선스 표현과 화이트리스트 데이터를 사용하여 화이트리스트와 다른 라이선스에 있는 패키지를 캡쳐
https://github.com/jslicense/licensee.js
19 Ninka GPL-2.0 - 소스코드용 경량 라이선스 식별 도구
- 문장 기반이고 소스코드 파일에서 오픈소스 라이선스를 식별하는 간단한 방법 제공
https://ninka.turingmachine.org
20 Opossum Tool Apache-2.0 - 오픈소스 라이선스 준수를 위해 대규모 코드베이스를 감사하고 인벤토리 하는 경량 앱
- 다양한 소스의 오픈소스 컴플라이언스 데이터를 관리하고 결합하기 위한 도구
- 대규모 코드베이스에 대한 규정 준수 정보를 검토하기 위한 경량 앱
- Opossum.UI: 애플리케이션에 사용되는 오픈소스 소프트웨어 검색, 오픈소스 코드 스캔에서 보고서 생성
https://github.com/opossum-tool
21 OSS Attribution Builder Apache-2.0 - SW 제품에 대한 속성 문서를 만드는 데 도움이 되는 웹 사이트 https://github.com/amzn/oss-attribution-builder
22 OSS Discovery GPL-3.0 - 응용 프로그램에 내장되고 컴퓨터에 설치된 오픈소스 SW 검색하는 스캐닝 도구
- 저작권자: OpenLogic
https://ossdiscovery.sourceforge.net
23 OSS Review Toolkit Apache-2.0 - 소스코드 및 종속성을 확인하여 오픈소스 라이선스 준수 여부 확인
- 종속성에 대한 소스코드를 분석하고, 라이선스 정보에 대한 모든 소스코드를 스캔하고 결과를 요약하는 방식으로 작동
- ORT를 구성하는 다양한 도구는 최소한의 명령줄 인터페이스(스크립트 모듈)가 있는 라이브러리로 설계
https://github.com/oss-review-toolkit/ort
24 OSSPolice GPL-3.0 - 앱에서 잠재적인 자유 소프트웨어 라이선스 위반 및 알려진 n-day 보안취약점을 신속하게 식별가능한 위험 평가 서비스 https://github.com/osssanitizer/osspolice
25 Quartermaster Project QMSTR GPL-3.0 - FOSS 규정 준수 문서를 작성하고 규정 준수 결정을 지원하기 위해 SW 빌드를 계측하는 명령줄 도구 모음 및 빌드 시스템 확장
- 마스터 프로세스는 빌드 중인 SW에 대한 정보 수집. 빈드 완료되면 여러 분석 도구를 실행하고 보고
- 모든 모듈은 마스터 컨텍스트에서 실행. 마스터는 빌드 클라이언트 파일 시스템에 영향을 주지 않고 모듈의 모든 종속성을 제공
https://qmstr.org
26 ScanCode.io & ScanPipe Apache-2.0 - ScanCode.io는 SCA 프로세스를 스크립팅하고 자동화하여 응용의 코드베이스에서 모든 오픈소스 구성 요소 및 해당 라이선스 준수 데이터를 식별하는 서버
- ScanPipe는 SW 분석가와 엔지니어가 실제 SW 구성 분석 프로젝트를 스크립팅된 파이프라인으로 구축하고 관리하는 데 도움
https://scancodeio.readthedocs.io/en/latest/introduction.html#
27 ScanCode Toolkit Apache-2.0 - 라이선스, 저작권, 패키지 매니페스트, 직접 종속성, 소스/바이너리 파일에서 발견된 출처 및 라이선스 정보를 스캔하는 CLI 모음
- JSON, HTML, CSV 또는 SPDX로 저장할 수 있는 스캔 결과 제공
- ScanCode는 코드 분석 파이프라인, CI/CD와 쉽게 통합
https://www.aboutcode.org
28 SCANOSS GPL-2.0-or-later - 오픈소스 SCA 플랫폼이자 개방형 데이터 OSS 지식 기반
- SPDX 및 CycloneDX에서 SBOM 생성을 수행하고 스니펫, 파일 및 구성 요소 수준에서 오픈소스의 존재 감지
- 주심 구성 요소는 OpenAPI 표준을 기반으로 하는 RESTful API
- 구성요소, 파일 및 스니펫을 모든 도구에 일치 가능. 공용 지식베이스 OSSKB는 osskb.org에서 사용 가능. 스캐닝은 익명 수행
https://www.scanoss.com
29 SPDX Tools Apache-2.0 - 단일 다운로드에서 변환, 비교 및 검증 기능 제공하는 자바 CLI 도구
- 제공기능: TagToSpreadsheet, TagToRDF, RdfToTag, RdfToHtml RdfToSpreadsheet, SpreadsheetToRDF, SpreadsheetToTag, SPDXViewer, CompareMultipleSpdxDocs, CompareSpdxDocs, GenerateVerificationCode
https://spdx.dev/resources/tools
30 SPDX Maven Plugin Apaceh-2.0 - POM 파일에 설명된 산풀물에 대한 SPDX 문서를 생성하는 Maven 플러그인 https://github.com/spdx/spdx-maven-plugin
31 TraceCode Toolkit Apaceh-2.0 - 제품에 대해 실제로 배포 또는 배포되는 구성 요소를 결정하는 도구
- 많은 라이선스가 배포에 의해서만 트리거되므로 오픈소스 라이선스 의무를 결정하는 필수 정보
- 추적된 빌드 실행을 분석하는 도구로, 어떤 파일이 바이너리에 빌드되고 궁극적으로 분산 SW에 배포되는지 확인 가능
https://www.aboutcode.org
32 Tern BSD-2-Clause - 컨테이너용 SW 패키지 검사도구(Python). 컨테이너 이미지에 설치된 패키지의 메타데이터 검색
- Dockerfile에서 레이어를 생성하는 데 사용된 컴포넌트 정보 제공
- 작업 수행 단계
1) overlayfs를 사용하여 컨테이너 이미지의 첫번째 파일 시스템 계층을 마운트
2) chroot 환경의 명령 라이브러리에서 스크립트를 실행하여 해당 계층에 설치된 패키지에 대한 정보 수집
- : 해당 정보를 기반으로 컨테이너 이미지의 나머지 레이어에 대하 1단계와 2단계를 계속 반복
- 3) 완료되면 다양한 형식의 보고서 생성. 기본 보고서는 어떤 계층이 어떤 SW 구성요소를 가져왔는지에 대한 설명
https://github.com/tern-tools/tern
33 Vulnerability Assessment Tool Apache-2.0 - 응용 개발 중 오픈소스 구성 요소의 안전한 사용과 관련하여 SW 개발 조직 지원
- Java 및 Python 응용 분석하여 알려진 취약성이 있는 오픈소스 구성요소애 의존하는지 여부를 감지하고, 지정된 응용 컨텍스트에서 취약한 코드 실행에 관한 증거를 수집 지원
- 데이터 유출의 근본 원인인 알려진 취약성이 있는 구성 요소 사용, OWASP 상위 10대 보안위험 A9 해결
https://github.com/eclipse/steady
34 REUSE - 프로젝트 라이선스를 쉽게 부여할 수 있는 권장사항들 제공 https://reuse.software
35 ClearlyDefined CC0-1.0, MIT - ScanCode, FOSSology 통하여 사용가능한 데이터를 수집하고 모호함이나 격차가 발생할 때 해당 정보의 큐레이션을 크라우드 소싱함
- 목표는 업스트림 프로젝트에 새로 발견된 명확성을 제공하여 다음 릴리즈에 업데이트를 포함하여 보다 명확하게 정의되도록 하는 것
https://clearlydefined.io