소스코드 점검 도구를 비교하고자 정리를 해봤습니다.
국내에서는 아래 표 중에서 Fortify와 Veracode, Sparrow, Checkmarx를 많이 사용하고 있다고 합니다.
구분 |
특징 |
주의사항 |
비고 |
Armorize Technologies |
• Hypertext Preprocessor(PHP)를 위주로 분석한다. • 소스코드의 보안기능뿐만 아니라 품질에 관련된 기능도 추가되고 있다. • 국내보다는 유렵이나 미국에서 많이 사용중이다. | • 아직은 규모가 작으며 브랜드 인지도가 낮다. • 분석이 가능한 프로그래밍 언어가 VBNET, JAVA, C#, PHP 등으로 다양하지는 않다. |
|
Checkmarx |
• 타 솔루션들보다 비교적으로 분석속도가 빠르며 분석이 가능한 프로그래밍 언어가 다양하다. • Apex, JAVA, C#, VB.NET 및 C, C++ 등이 가능하다. |
• 아직 많이 알려져 있지 않아 국내에 레퍼런스가 많지는 않다. |
|
Coverity |
• 소스코드 점검 시 보안과 품질을 검사하며 프로그래밍이 동작하며 장애를 유발할 수 있는 문제점을 검출하고 데이터 흐름을 추적이 가능하다. |
• 보안보다는 품질에 더 초점이 잡혀있다고 하며 회사 브랜드에 대한 인지도가 낮다고 한다. |
|
Sparrow | • 소스코드를 점검한 결과를 쉽게 조치할 수 있다. • 커스터마이징 및 룰셋 적용/변경이 쉽다고한다. | • 국내에서는 많이 사용하고 있으나 알려진 바로는 해외 레퍼런스가 비교적 적다고 한다. | |
GrammaTech |
• 소스코드 분석 시 보안적인 측면과 품질적인 측면을 분석하며 주요 특징은 소스코드 분석뿐만 아니라 바이너리 코드도 분석을 하고 있다. |
• 분석이 가능한 언어가 C와 C++만이 있으며 SQL Injection이나 크로스 사이트 스크립팅과 같은 취약점은 분석하지 않는다. |
|
HP (Fortify Software) |
• 소스코드 점검 도구 중 가장 많은 언어를 지원하며 정탐율이 높은 편이다. |
• 솔루션 중에서 가장 비싸며 국내에서는 커스터마이징을 위한 작업이 따로 필요하다. • 유지보수비 외에도 솔루션 업데이트나 언어 팩 업데이트에 대해서도 비용을 별도로 청구한다. |
|
IBM |
• 잠재적으로 손상된 데이터 소스를 확인하고 흐름을 추적하는 taint analysis 기능이 존재한다 • 분석이 가능한 언어로는 Java, C, C++ 등 다양한 언어를 제공한다. |
• 비교적 HP보다 지원하는 언어가 적다. |
|
Parasoft | • 품질 및 보안에 대한 테스트를 수행하며 분석이 가능한 언어도 유사 업체들과 비슷하다. • 보안 테스트 전문가를 대상으로 보안 테스트 오퍼링을 출시하기도 했다. | • 보안 전문가들 사이에서 회사 및 브랜드 인지도가 부족하다. | |
Klocwork | • klocwork사는 다양한 분야의 시장에서 입증된 공급업체이며 하드웨어 벤드 및 하드웨어 임베디드 어플리케이션에 대한 정적 코드 분석이 입증된 업체이다. | • 보안 전문가들 사이에서 회사 및 브랜드 인지도가 부족하다. | |
Veracode |
• C/C++용 원시 바이너리 코드 분석이 가능하다. • 자동 분석 결과를 공급업체의 전문가들이 한번 더 검토를 하여 오탐의 수를 줄인다고 한다. • Virtual Machine Container내에 캡슐화된 바이너리를 분석할 수 있다. • 분석이 가능한 프로그래밍 언어로는 Java, C, C++ 등 다양한 언어를 지원한다. |
• 분석을 위해서 byte나 binary 코드를 해당 공급업체의 사이트로 업로드를 해야한다고 한다. • 플랫폼 특징 상 모든 바이너리를 분석할 수는 없다고 한다. |
|
출처 : ftp://ftp.software.ibm.com/software/kr/download/Gartner_MQ_Static_Application_KR_v1.5.pdf
'Security' 카테고리의 다른 글
융합 보안.. orchestration..? (0) | 2017.04.02 |
---|---|
취약점 진단과 모의해킹 차이점 (0) | 2017.04.01 |
nohup 제대로된 사용법 (0) | 2017.03.31 |
난독화 종류 (0) | 2017.03.28 |
Apache Struts2 취약점 (CVE-2017-5638) (0) | 2017.03.27 |