1 |
1
안전성 점수를 산출하는 오픈 소스 소프트웨어 패키지의 안전성 정량화 장치로부터, 상기 오픈 소스 소프트웨어 패키지에 상응하는 공통 취약점 및 노출(CVE) 이력, 패키지 바이너리 파일, 소스 파일 및 패키지 개발 프로젝트 중 적어도 어느 하나에 대한 상기 안전성 점수를 수신하는 안전성 정보 수신부, 상기 안전성 점수를 기반으로, 클라이언트에 설치된 전체 패키지 목록 중에서 제거할 패키지 목록인 제거 대상 패키지 목록을 생성하는 제거 대상 선택부, 상기 클라이언트에 포함된 하나 이상의 가상 머신의 상태를 제어하고, 상기 클라이언트로부터 상기 제거 대상 패키지 목록이 반영된 테스트 케이스의 수행 결과를 수신하는 패키지 테스트부, 그리고 상기 테스트 케이스의 수행 결과를 분석하여, 상기 가상 머신에서 성공한 상기 테스트 케이스를 기반으로 최적 패키지 목록을 생성하는 패키지 최적화부를 포함하는 오픈 소스 소프트웨어 패키지의 최적화 장치
|
2 |
2
제1항에 있어서, 상기 제거 대상 선택부는, 기 설정된 필수 패키지 목록을 이용하여, 상기 제거 대상 패키지 목록을 생성하는 것을 특징으로 하는 오픈 소스 소프트웨어 패키지의 최적화 장치
|
3 |
3
제1항에 있어서, 상기 패키지 테스트부는, 상기 전체 패키지 목록 중에서 상기 제거 대상 패키지를 제거한 잔여 패키지 목록에 대한 상기 테스트 케이스의 수행 결과를 상기 클라이언트로부터 수신하는 것을 특징으로 하는 오픈 소스 소프트웨어 패키지의 최적화 장치
|
4 |
4
제3항에 있어서, 상기 패키지 테스트부는, 상기 가상 머신의 초기 상태를 저장하고, 상기 가상 머신이 제1 제거 대상 패키지를 제거한 상기 잔여 패키지 목록에 대한 상기 테스트 케이스를 수행하도록 제어하며, 상기 테스트 케이스 수행 후 상기 가상 머신을 상기 초기 상태로 복원하고, 상기 가상 머신이 제2 제거 대상 패키지를 제거한 상기 잔여 패키지 목록에 대한 상기 테스트 케이스를 수행하도록 제어하는 것을 특징으로 하는 오픈 소스 소프트웨어 패키지의 최적화 장치
|
5 |
5
제4항에 있어서, 상기 패키지 테스트부는, 기 설정된 테스트 케이스 수행 시간 동안, 상기 클라이언트가 상기 잔여 패키지 목록에 대한 상기 테스트 케이스를 수행하도록 제어하는 것을 특징으로 하는 오픈 소스 소프트웨어 패키지의 최적화 장치
|
6 |
6
삭제
|
7 |
7
오픈 소스 소프트웨어 패키지에 상응하는 공통 취약점 및 노출(CVE) 이력 정보를 기반으로, 공통 취약점 및 노출(CVE)의 안전성 점수를 산출하는 CVE 이력 분석부, 상기 오픈 소스 소프트웨어 패키지의 설치용 바이너리 파일을 분석하여, 바이너리 파일의 안전성 점수를 산출하는 바이너리 파일 분석부, 상기 오픈 소스 소프트웨어 패키지의 소스 파일을 분석하여, 소스 파일의 안전성 점수를 산출하는 소스 파일 분석부, 상기 오픈 소스 소프트웨어 패키지의 패키지 개발 프로젝트 정보를 분석하여, 패키지 개발 프로젝트의 안전성 점수를 산출하는 개발 프로젝트 분석부, 그리고 산출된 각각의 상기 안전성 점수를 합산하여, 상기 오픈 소스 소프트웨어 패키지의 안전성 정보를 생성하는 안전성 점수 산출부를 포함하는 오픈 소스 소프트웨어 패키지의 안전성 정량화 장치
|
8 |
8
제7항에 있어서, 상기 CVE 이력 분석부는, 국가취약점데이터베이스(NVD)에서 상기 오픈 소스 소프트웨어 패키지에 상응하는 상기 공통 취약점 및 노출(CVE) 이력 정보를 조회하고, 조회된 상기 공통 취약점 및 노출 이력의 번호, 명세, 접근 벡터, 이슈의 개수, CVSS 점수의 합계 중 적어도 어느 하나를 포함하는 분석 결과를 이용하여, 상기 공통 취약점 및 노출(CVE)의 안전성 점수를 산출하는 것을 특징으로 하는 오픈 소스 소프트웨어 패키지의 안전성 정량화 장치
|
9 |
9
제7항에 있어서, 상기 바이너리 파일 분석부는, 상기 오픈 소스 소프트웨어 패키지에 상응하는 상기 설치용 바이너리 파일의 크기, 압축 해제한 파일의 크기, ELF 포맷 파일의 개수 및 크기, 상기 ELF 포맷 파일의 텍스트 영역의 크기, 실행권한이 부여된 스크립트 파일의 개수 및 크기, 피의존성 패키지의 종류 및 개수 중 적어도 어느 하나를 포함하는 분석 결과를 이용하여, 상기 바이너리 파일의 안전성 점수를 산출하는 것을 특징으로 하는 오픈 소스 소프트웨어 패키지의 안전성 정량화 장치
|
10 |
10
제7항에 있어서, 상기 소스 파일 분석부는, 상기 소스 파일의 소스 코드 순환 복잡도, 라인 수 및 주석 라인 수 중 적어도 어느 하나를 포함하는 분석 결과를 이용하여, 상기 소스 파일의 안전성 점수를 산출하는 오픈 소스 소프트웨어 패키지의 안전성 정량화 장치
|
11 |
11
제7항에 있어서, 상기 개발 프로젝트 분석부는, 상기 패키지 개발 프로젝트에 상응하는 URL, 개발 언어, 개발 라이선스, 사용자 및 개발 참여자의 인원 수, 소스코드 커밋 빈도, 패치 및 업데이트 빈도 중 적어도 어느 하나를 포함하는 분석 결과를 이용하여, 상기 패키지 개발 프로젝트의 안전성 점수를 산출하는 오픈 소스 소프트웨어 패키지의 안전성 정량화 장치
|
12 |
12
제7항에 있어서, 그래픽 유저 인터페이스를 이용하여, 상기 오픈 소스 소프트웨어 패키지의 안전성 정보를 출력하는 안전성 정보 출력부를 더 포함하는 오픈 소스 소프트웨어 패키지의 안전성 정량화 장치
|
13 |
13
제12항에 있어서, 상기 안전성 정보 출력부는, 상기 안전성 점수의 합계, 산술평균 및 백분율 중 적어도 어느 하나의 형태로 상기 오픈 소스 소프트웨어 패키지의 안전성 정보를 출력하는 것을 특징으로 하는 오픈 소스 소프트웨어 패키지의 안전성 정량화 장치
|
14 |
14
오픈 소스 소프트웨어 패키지의 최적화 장치에 의해 수행되는 오픈 소스 소프트웨어 패키지의 최적화 방법에 있어서, 안전성 점수를 산출하는 오픈 소스 소프트웨어 패키지의 안전성 정량화 장치로부터, 상기 오픈 소스 소프트웨어 패키지에 대한 상기 안전성 점수를 수신하는 단계, 상기 안전성 점수를 기반으로, 클라이언트에 설치된 전체 패키지 목록 중에서 제거할 패키지 목록인 제거 대상 패키지 목록을 생성하는 단계, 상기 클라이언트에 포함된 하나 이상의 가상 머신의 상태를 제어하는 단계, 상기 클라이언트로부터 상기 제거 대상 패키지 목록이 반영된 테스트 케이스의 수행 결과를 수신하는 단계, 그리고 상기 테스트 케이스의 수행 결과를 분석하여, 상기 가상 머신에서 성공한 상기 테스트 케이스를 기반으로 최적 패키지 목록을 생성하는 단계를 포함하는 오픈 소스 소프트웨어 패키지의 최적화 방법
|
15 |
15
제14항에 있어서, 상기 제거 대상 패키지 목록을 생성하는 단계는, 기 설정된 필수 패키지 목록을 이용하여, 상기 제거 대상 패키지 목록을 생성하는 것을 특징으로 하는 오픈 소스 소프트웨어 패키지의 최적화 방법
|
16 |
16
제14항에 있어서, 상기 테스트 케이스의 수행 결과를 수신하는 단계는, 상기 전체 패키지 목록 중에서 상기 제거 대상 패키지를 제거한 잔여 패키지 목록에 대한 상기 테스트 케이스의 수행 결과를 상기 클라이언트로부터 수신하는 것을 특징으로 하는 오픈 소스 소프트웨어 패키지의 최적화 방법
|
17 |
17
제16항에 있어서, 상기 가상 머신의 상태를 제어하는 단계는, 상기 가상 머신의 초기 상태를 저장하는 단계, 상기 가상 머신이 제1 제거 대상 패키지가 제거된 상기 잔여 패키지 목록에 대한 상기 테스트 케이스를 수행하도록 제어하는 단계, 상기 테스트 케이스 수행 후 상기 가상 머신을 상기 초기 상태로 복원하는 단계, 그리고 상기 가상 머신이 제2 제거 대상 패키지를 제거한 상기 잔여 패키지 목록에 대한 상기 테스트 케이스를 수행하도록 제어하는 단계를 포함하는 오픈 소스 소프트웨어 패키지의 최적화 방법
|
18 |
18
제17항에 있어서, 상기 가상 머신의 상태를 제어하는 단계는, 기 설정된 테스트 케이스 수행 시간 동안, 상기 클라이언트가 상기 잔여 패키지 목록에 대한 상기 테스트 케이스를 수행하도록 제어하는 것을 특징으로 하는 오픈 소스 소프트웨어 패키지의 최적화 방법
|
19 |
19
삭제
|
20 |
20
제14항에 있어서, 상기 안전성 점수는, 상기 오픈 소스 소프트웨어 패키지에 상응하는 공통 취약점 및 노출(CVE) 이력, 패키지 바이너리 파일, 소스 파일 및 패키지 개발 프로젝트 중 적어도 어느 하나에 대한 안전성 점수인 것을 특징으로 하는 오픈 소스 소프트웨어 패키지의 최적화 방법
|