
CQ, 코드 보안 스캐너
Code Query, 범용 코드 보안 스캐닝 도구.
CQ는 보안 취약점과 보안 중심 코드 리뷰어에게 관심을 끄는 기타 항목을 코드에서 스캔합니다. 발견된 문제에 대한 참조가 포함된 텍스트 파일을 출력 디렉토리에 생성합니다. 이 출력 파일들은 이후 검토하거나, grep과 같은 unix 명령줄 도구로 필터링하거나, 지정된 file:line 참조에서 코드베이스로 '점프'하는 수단으로 사용할 수 있습니다.
널리 사용되는 방식 중 하나는 출력 파일을 '할 일(todo)' 목록으로 간주하여, 검토하면서 오탐(false positive)으로 판단되는 참조를 삭제하거나, 상세 검토를 위해 또는 버그 보고서의 기초를 제공하기 위해 참조를 일부 보고서 파일에 복사하는 것입니다.
이 도구는 매우 기본적이며 대부분 수동으로 작동하고, 애플리케이션 보안 취약점과 코드 리뷰에 대한 깊은 지식을 전제로 합니다. 그러나 상대적으로 빠르고 안정적이며, 일부 코드만 사용할 수 있는 경우에도 작동한다는 장점이 있습니다.
CQ는 Code Query, 또는 Sécurité, 또는 CQD, 또는 "Seek You"입니다.
CQ는 인간 전문가가 보안 코드 리뷰 맥락에서 사용하도록 설계되었습니다. 자동화된 시나리오에서의 사용을 위한 것은 아니지만, 그 맥락에서 적용될 수도 있습니다.
CQ는 일반적으로 한 줄에 하나의 발견 항목을 포함하는 일반 텍스트 파일을 출력하며, 코드베이스의 위치를 나타내기 위해 전체 경로:줄 번호 규칙을 사용합니다. 이 형식은 표준 unix 명령줄 유틸리티를 사용한 쉬운 조작을 위해 마련되었습니다. 예를 들어 grep, wc, sed 및 이와 유사한 도구들과, vi, Sublime Text, Atom, Visual Studio Code와 같은 많은 편집기의 줄 기반 기능을 활용할 수 있습니다.
관심 있는 모든 항목을 보고하는 데 초점을 맞춘 결과, 이 도구는 거의 모든 코드베이스에서 많은 관심 지점을 찾아내지만, 동시에 많은 수의 '오탐(false positive)'도 보고합니다. 이러한 오탐은 줄 기반 보고 방식 덕분에 육안 검사 또는 자동화된 방식으로 결과에서 제거할 수 있습니다.
문제에 대한 설명은 거의 또는 전혀 제공되지 않습니다. 보고된 문제의 맥락, 영향 및 특성을 이미 알고 있다고 가정합니다.