제품 이해하기
1. Sparrow On-Demand 기능
Sparrow On-Demand는 개발 환경에 추가적인 프로그램을 설치하지 않고 스패로우의 핵심 기술인 정적 분석, 구성요소 분석, 동적 분석과 같은 기능을 수행할 수 있는 API 기반 보안 분석 서비스입니다. 사용자는 RESTful API 또는 SDK 형태로 제공되는 서비스를 통해 Sparrow On-Demand를 사용할 수 있습니다.
Sparrow On-Demand를 통해 다음과 같은 기능을 사용할 수 있습니다.
🎯 분석 수행
- 분석 요청: 분석 요청 API를 통해 분석을 요청합니다.
- 분석 요청 응답: 분석 요청이 정상적으로 처리되면 즉시 분석 요청에 대한 응답을 수신합니다.
- 분석 결과 전달 (콜백): 분석이 진행되는 과정이나 완료된 경우 분석 요청에서 입력한 callbackUrl에 분석 결과를 전달 받습니다.
📌 요청 및 분석 조회
- 요청 정보 조회: 특정 요청 ID에 해당하는 요청 정보를 확인합니다.
- 분석 정보 조회: 특정 분석 ID에 해당하는 분석 정보를 확인합니다.
🔎 결과 다운로드
- 분석 결과 다운로드: 완료된 분석 ID를 입력해서 결과를 파일로 다운로드합니다.
- 검출 규칙 다운로드: 분석에 사용한 규칙에 대한 정보를 파일로 다운로드합니다.
2. Sparrow On-Demand 분석 과정
분석 흐름도
샘플 프로젝트로 테스트 분석을 진행해보는 것이 좋습니다. 테스트 분석으로 인증, 분석 요청, 응답 흐름을 미리 확인하세요.
👤 INIT초기화
- 분석 요청을 접수 받아 분석에 사용할 수 있는 분석기가 준비되기를 기다리는 단계입니다.
- Sparrow On-Demand는 오토 스케일링을 지원하기 때문에 분석 요청을 수신한 후에 분석기를 배정하고 분석을 시작합니다.
📦 READY준비
- 배정된 분석기에 분석 대상을 전달하는 과정입니다.
- 소스코드 분석 혹은 오픈소스 분석에서 Git 저장소를 분석할 때 저장소를 clone하는 시간도 포함됩니다.
- 웹취약점 분석은 준비 단계 없이 바로 다음 단계로 진행됩니다.
🔍 PRE_PROCESS전처리
- 분석 프로세스의 시작점입니다. 분석 대상의 속성을 확인하고, 분석에 필요한 정보를 모으는 단계입니다.
- 소스코드 분석 혹은 오픈소스 분석에서는 사용자가 입력한 분석 대상을 스캔하고 분석에 필요한 정보를 모읍니다.
- 웹취약점 분석에서는 주어진 URL로부터 접근 가능한 ULR을 수집합니다.
🧠 ANALYSIS분석
- 분석 준비 과정이 끝나고 본격적으로 분석을 수행하는 단계입니다.
- 소스코드 분석에서는 이슈 검출 규칙에 따라 위에서 수집한 정보를 검사하고 이슈를 검출합니다.
- 오픈소스 분석에서는 위에서 수집한 정보를 데이터베이스와 비교하여 컴포넌트를 식별하고 이슈 검출 규칙에 따라 이슈를 검출합니다.
- 웹취약점 분석에서는 위에서 수집한 정보로 다수의 공격을 시도함으로써 취약점을 검출합니다.
🧾 POST_PROCESS후처리
- 분석이 끝난 뒤 분석에서 확인한 결과를 정리하는 단계입니다.
- 소스코드 분석, 오픈소스 분석, 웹취약점 분석에서 알아낸 결과를 데이터베이스에 등록하고 파일로 저장합니다.
✅ COMPLETE완료
- 분석이 종료되어 모든 프로세스가 완료된 상태입니다.
- 분석이
성공했거나중지되었거나실패하면 분석이 종료됩니다.
3. Sparrow On-Demand 데이터 처리
데이터 흐름
Sparrow On-Demand에서 사용자의 데이터는 다음과 같이 사용됩니다.
👤 INPUT데이터 입력
- 사용자는 API나 SDK, UI Kit의 입력창을 통해 Git 저장소 URL 및 인증 데이터를 입력합니다.
- 등록된 토큰은 분석 목적에 한하여 Read-Only 권한으로 사용됩니다.
📦 CLONE데이터 복제
- 저장소는 독립된 컨테이너에 복제됩니다.
- 지정된 브랜치, 커밋, 태그 혹은 지정되지 않은 경우 기본 브랜치의 최신 커밋을
git clone방식으로 가져옵니다.
🧠 ANALYZE데이터 분석
- 컨테이너에서 Sparrow On-Demand 엔진이 복제된 데이터를 분석합니다.
- 분석 결과 데이터가 생성되고 분석이 종료되면 컨테이너도 사라집니다.
✉️ RETURN데이터 전달
- 사용자가 요청한 경우 분석이 진행되는 동안 진행 상태를 콜백 URL에 전달합니다.
- 분석이 완료된 후 사용자가 요청하는 경우 생성된 분석 결과를 전달합니다.
데이터 보호, 보관 및 삭제
Sparrow On-Demand에서 사용자의 데이터는 다음과 같은 방법으로 처리됩니다.
🔒 PROTECT데이터 보호
- 모든 통신은 HTTPS를 사용합니다.
- 분석이 수행되는 컨테이너는 독립된 환경으로 생성 및 삭제됩니다.
- Sparrow On-Demand 서비스에서 분석하기 위한 용도로만 사용자의 저장소 및 분석 데이터에 접근합니다.
📦 STORE데이터 보관
- 원본 코드는 분석이 종료되는 즉시 삭제됩니다.
- 분석 결과물은 다운로드를 위해 24시간 동안 보관된 후 삭제됩니다.
🗑️ DELETE데이터 삭제
- 사용자가 별도로 요구하는 경우 분석 결과물을 즉시 삭제할 수 있습니다.
- 삭제된 데이터는 다시 복구할 수 없습니다.
4. Sparrow On-Demand 2508.1 세부 버전
엔진 버전
Sparrow SAST v5.6.2506.2, Sparrow DAST v2.6.2506.2, Sparrow SCA v1.6.2506.2
SDK 버전
Java v1.2506.1 Node v1.2504.1
결과 버전
v2
릴리즈 날짜
2025-08-28