Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

ЛентыКонтактыКонфиденциальность© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
VCG — VisualCodeGrepper - инструмент для сканирования безопасности кода. | Kitploit
Инструменты/GitHubGitHub/nccgroup/vcg
Оборонительные ИнструментыСтатический анализ кода (SAST)Анализ уязвимостейАнализ КодаАудит конфигурацииDevSecOpsНеправильная Конфигурация
GitHubnccgroup/vcg

VCG

VisualCodeGrepper - инструмент для сканирования безопасности кода.

Репозиторий
550118413 лет назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

VCG (VisualCodeGrepper)

Текущая версия: 2.3.2

====================================================================================

Содержание:

  1. Обзор
  2. Последние дополнения в VCG V2.3.2
  3. Использование VCG Входные файлы/кодовая база Опции и настройки Сканирование Файлы конфигурации Вывод Параметры командной строки

==================================================================================== Обзор

VCG — это автоматизированный инструмент проверки безопасности кода, который поддерживает C/C++, Java, C#, VB, PL/SQL, PHP и COBOL. У него есть несколько функций, которые, будем надеяться, окажутся полезными всем, кто проводит проверки безопасности кода, особенно когда время ограничено:

  1. Помимо выполнения некоторых более сложных проверок, он также имеет файл конфигурации для каждого языка, который в основном позволяет добавлять любые плохие функции (или другой текст), которые вы хотите искать
  2. Он пытается найти около 20 фраз в комментариях, которые могут указывать на сломанный код (ToDo, FixMe, Kludge и т. д.)
  3. Он предоставляет удобную круговую диаграмму (для всей кодовой базы и для отдельных файлов), показывающую относительные пропорции кода, пробелов, комментариев, комментариев в стиле ToDo и плохого кода

Я старался создать что-то, что не возвращает большое количество ложных срабатываний, которые возвращают некоторые инструменты, и что также интеллектуально ищет, чтобы выявлять переполнения буфера и сравнения знаковых/беззнаковых значений.

==================================================================================== Последние дополнения в VCG V2.3.2

Новые функции: 1) Изменение GUI означает, что выбор целевого языка осуществляется через выпадающий список вместо меню (как в V2.3.1). 2) Бета-функциональность теперь включает сканирование R Script (как в V2.3.1). 3) Незначительные исправления ошибок для решения различных проблем и восстановления возможности запуска нескольких экземпляров приложения.

==================================================================================== Использование VCG

Входные файлы/кодовая база:

Перед сканированием кода убедитесь, что выбран правильный язык, так как VCG будет проверять только проблемы, связанные с выбранным языком, и сканировать только соответствующие типы файлов. Язык можно выбрать в меню настроек или в диалоговом окне параметров. Выберите каталог, содержащий код для сканирования, с помощью File=>New Target... Затем VCG загрузит все файлы с указанными окончаниями.

Значения по умолчанию приведены ниже, но их можно изменить с помощью диалогового окна Options: C/C++: .c .h .cpp .hpp Java: .java .jsp web.xml config.xml (файлы xml включены для проверки валидации ввода с помощью Struts и т. д.) PL/SQL: .pls .sql .pkb .pks C#: .cs .asp .aspx web.config (файл web.config включён для проверки валидации ввода, настроек отладки и т. д.) VB: .vb .asp .aspx web.config (файл web.config включён для проверки валидации ввода, настроек отладки и т. д.) PHP: .php php.ini (файл php.ini включён для проверки плохих конфигураций, таких как register_globals) COBOL: .cob .cbl .clt .cl2 .cics R: .r


Опции и настройки:

Типы файлов — используйте этот параметр, чтобы изменить типы файлов, которые VCG будет сканировать для каждого типа кода. Чтобы сканировать все файлы в каталоге, добавьте .* в список или удалите все типы и отправьте пустую строку. Файлы конфигурации — укажите файл конфигурации для каждого языка. Он содержит перечень функций или фрагментов кода, которые могут считаться рискованными и требуют отчёта. По сути, эта функция добавляет дополнительный уровень проверок поверх более сложных операций, выполняемых в рамках сканирования кода. Уровень серьёзности — VCG можно настроить так, чтобы он сообщал только об ошибках выше определённого уровня серьёзности. Например, выберите «Medium», чтобы в отчёт попадали только Medium, High и Critical. Настройки COBOL — необходимо указать начальную колонку, то есть первую колонку после номеров строк. Обычно это 1 для листинга без номеров строк или 7 для листинга с номерами строк. Может потребоваться другая настройка, если строки кода/комментариев в листинге начинаются в другой колонке. Настройка z/OS может использоваться для включения проверок безопасного использования CICS API и т. д. Настройки OWASP (только Java) — если выбраны, они выявляют два нарушения лучших практик OWASP для программирования на Java, перечисленных на страницах OWASP по безопасному кодированию. Будут отмечены вложенные классы и незакрытые (non-final) публичные классы — поскольку таких нарушений, вероятно, будет много без существенного риска, предусмотрена возможность отключить любую из этих проверок. Выходной файл — если выбран, в этот файл будет записан вывод в формате ASCII. Бета-функциональность — выберите, использовать ли какую-либо бета-функциональность, установив соответствующий флажок в разделе Options -> Beta Functionality. В настоящее время доступна следующая бета-функциональность: определение местоположения знаковых/беззнаковых сравнений в C (очень ненадёжно) и сканирование R (протестировано, работает достаточно хорошо — близко к включению в следующий выпуск).


Сканирование:

Сканирование может выполняться тремя способами:

  1. Только комментарии — VCG пытается выявить любые комментарии, указывающие на сломанный или незавершённый код, на основе списка примерно из 16 фраз, которые обычно встречаются в таких комментариях («ToDo», «FixMe» и т. д.).
  2. Только код — VCG сканирует и сообщает о потенциальных проблемах безопасности кода и любых опасных функциях и т. д. из файла конфигурации, которые обнаружены в коде.
  3. Только опасные функции — VCG сканирует и сообщает только о любых опасных функциях и т. д. из файла конфигурации, которые обнаружены в коде.
  4. Код, опасные функции и комментарии — также известное как полное сканирование (Full Scan) в меню Scan, это комбинированное сканирование как кода, так и комментариев, охватывающее всё вышеперечисленное.

Файлы конфигурации:

Файлы конфигурации существуют для каждого из шести языков, которые сканирует VCG. Они обеспечивают дополнительный уровень сканирования, дополняющий встроенные сложные проверки для каждого языка. Содержимое файлов конфигурации состоит из списка функций/фрагментов кода для поиска вместе со связанным описанием, которое отображается в результатах. Описание включает необязательную настройку уровня серьёзности в квадратных скобках и отделяется от функции символом '=>' в следующем формате: имя функции[=>][[N]][описание] (где N — рейтинг серьёзности от 1 (Critical) до 3 (Medium) (или, опционально, 0 для «normal»))

Например: strcat=>[3]String concatenation function which facilitates buffer overflow conditions. Appears in Microsoft's banned function list.


Вывод:

Visual Code Breakdown будет показан после завершения сканирования.

Результаты записываются в панель результатов в порядке их обнаружения. Результаты имеют следующий формат: SEVERITY: Code issue Line number - File name Description [code fragment]

Заголовок проблемы имеет следующие цветовые коды для наглядности: Critical — пурпурный High — красный Medium — оранжевый Standard/Normal — жёлтый/сепия Low — серо-голубой Potential Issue/Best Practice — зелёный Suspicious comment indicating broken code — тёмно-синий

Скачать инструмент