동작을 위한 의존성 분석
Libbehave는 머지 리퀘스트에 추가된 새로운 의존성을 위험한 동작에 대해 스캔하고 각 동작에 위험 점수를 할당합니다. 결과는 작업 출력, 머지 리퀘스트 댓글 및 작업 아티팩트에 표시됩니다.
Libbehave는 머지 리퀘스트 파이프라인 중에 의존성을 스캔하여 새로 추가된 라이브러리와 잠재적으로 위험한 동작을 식별하는 실험적 기능입니다. 전통적인 의존성 스캔이 알려진 취약점을 찾는 반면, Libbehave는 의존성이 나타내는 기능과 동작에 대한 통찰력을 제공합니다. Libbehave에 의해 감지된 각 기능에는 다음 중 하나의 "위험도" 점수가 할당됩니다: 정보: 위험 없음, 의존성의 기능을 분류하는 데 도움이 될 수 있습니다(예: JSON 사용). 낮음: 작은 위험, 의존성이 암호화 사용과 같이 보안에 민감한 작업을 수행한다는 것을 강조할 수 있습니다. 중간: 중간 수준의 위험, 민감한 데이터가 저장되거나 접근될 수 있는 파일 시스템과 상호 작용하거나 환경 변수를 읽는 데 사용될 수 있습니다. 높음: 가장 높은 수준의 위험, OS 명령 실행이나 코드를 동적으로 평가하는 등 보안 취약점에서 흔히 악용되는 동작입니다. Libbehave가 감지하는 기능에는 다음이 포함됩니다: OS 명령 실행 동적 코드 실행(eval) 파일 읽기/쓰기 네트워크 소켓 열기 아카이브 읽기/확장(ZIP/tar/Gzip) HTTP 클라이언트, Redis, Elastic Cache, 관계형 관리 데이터베이스(RMDB) 서버, SSH, Git을 사용하여 외부 서비스와 상호 작용 다양한 형식으로 데이터 직렬화: XML, YAML, MessagePack, Protocol Buffers, JSON 및 언어별 형식 템플릿 인기 프레임워크 파일 업로드/다운로드 지원되는 각 패키지 관리자 유형에 대한 Libbehave 데모는 Libbehave 데모 프로젝트 를 참조하세요. 지원되는 언어 및 패키지 관리자 # Libbehave에서 지원하는 언어 및 패키지 관리자는 다음과 같습니다: C# ( NuGet ) Directory.Build.props 파일 읽기(발견된 경우 속성 값 대체) *.deps.json 파일 읽기 **/*.dll 및 **/*.exe 파일 읽기 Go go.mod 파일 읽기 Java ( Maven ) pom.xml 파일 읽기(발견된 경우 속성 값 대체) **/gradle.lockfile* 파일 읽기 JavaScript/TypeScript ( npmjs ) **/package-lock.json 파일 읽기 **/yarn.lock 파일 읽기 **/pnpm-lock.yaml 파일 읽기 Python ( pypi ) **/*requirements*.txt 파일 읽기 **/poetry.lock 파일 읽기 **/Pipfile.lock 파일 읽기 **/setup.py 파일 읽기 egg 또는 wheel 설치 디렉토리의 패키지 읽기: **/*dist-info/METADATA , **/*egg-info/PKG-INFO , **/*DIST-INFO/METADATA 및 **/*EGG-INFO/PKG-INFO 파일 읽기 PHP ( Composer/Packagist ) **/installed.json 파일 읽기 **/composer.lock 파일 읽기 **/php/.registry/.ch
