
Быстрый сканер безопасности кода, предназначенный для ручного анализа безопасности кода экспертами. Выводит результаты с указанием номеров строк в текстовые файлы для удобной фильтрации и приоритизации.
Code Query — универсальный инструмент сканирования кода на предмет безопасности.
CQ сканирует код на предмет уязвимостей безопасности и других элементов, представляющих интерес для специалистов по ревизии кода в области безопасности. Он выводит текстовые файлы, содержащие ссылки на найденные проблемы, в выходной каталог. Эти выходные файлы затем можно просматривать, фильтровать с помощью стандартных утилит командной строки unix, таких как grep, или использовать как средство «перехода» в кодовую базу по указанной ссылке файл:строка.
Один из популярных способов использования — рассматривать выходные файлы как список задач («todo»), удаляя ссылки по мере их просмотра и либо считая их ложными срабатываниями, либо копируя ссылки в какой-либо файл отчёта для детального рассмотрения или в качестве основы для отчёта об ошибке.
Инструмент чрезвычайно прост, по большей части ручной и предполагает глубокое знание уязвимостей безопасности приложений и ревизии кода. Тем не менее, он обладает преимуществами: относительно быстр и надёжен, а также работает даже при наличии лишь частичного кода.
CQ — это Code Query, или Sécurité, или CQD, или «Seek You».
CQ предназначен для использования в контексте ревизии безопасности кода экспертами-людьми. Он не предназначен для использования в автоматизированных сценариях, хотя может применяться и в этом контексте.
CQ выводит обычные текстовые файлы, как правило, с одной находкой на строку, используя соглашение полный путь:номер строки для представления местоположений в кодовой базе. Этот формат используется для обеспечения удобства обработки стандартными утилитами командной строки unix, такими как grep, wc, sed и подобными, а также построчными возможностями многих редакторов, таких как vi, Sublime Text, Atom и Visual Studio Code.
Ориентация на сообщение обо всех представляющих интерес элементах приводит к тому, что инструмент находит множество точек интереса практически в любой кодовой базе, но также сообщает о большом количестве «ложных срабатываний». Эти ложные срабатывания можно удалить из результатов либо путём просмотра, либо автоматизированным способом, благодаря построчному методу отчётов.
Пояснения проблем практически не предоставляются; предполагается, что вы осведомлены о контексте, влиянии и характеристиках сообщаемых проблем.