Skip to main content

Эта версия GitHub Enterprise Server была прекращена 2024-09-25. Исправления выпускаться не будут даже при критических проблемах безопасности. Для повышения производительности, повышения безопасности и новых функций выполните обновление до последней версии GitHub Enterprise Server. Чтобы получить справку по обновлению, обратитесь в службу поддержки GitHub Enterprise.

Изучение потока данных с помощью запросов пути

Запросы CodeQL можно выполнять в Visual Studio Code для отслеживания потока данных через программу, выделения областей, которые являются потенциальными уязвимостями безопасности.

Сведения о запросах пути

Запрос пути — это запрос CodeQL с свойством @kind path-problem. Их можно найти в стандартных библиотеках CodeQL .

Вы можете выполнять стандартные запросы пути CodeQL для выявления уязвимостей системы безопасности и просмотра результатов вручную. Дополнительные сведения о том, как CodeQL отслеживает поток данных, см. в документации по CodeQL.

Когда вы знакомы с анализом потока данных и существующими запросами, вы можете написать собственные запросы пути в CodeQL. Дополнительные сведения см. в разделе Дальнейшие действия.

Выполнение запросов пути в локальном режиме VS Code

  1. Откройте запрос пути в VS Code.
  2. Щелкните правой кнопкой мыши окно с открытым запросом и выберите CodeQL: выполните запрос в выбранной базе данных. Кроме того, его можно запустить из VS Code Command Palette.
  3. После завершения выполнения запроса вы увидите результаты в представлении "Результаты" (в alerts раскрывающемся меню). Каждый результат запроса описывает поток информации между источником и приемником.
  4. Разверните результат, чтобы просмотреть отдельные шаги, которые следует выполнить данным.
  5. Щелкните каждый шаг, чтобы перейти к нему в исходном коде и изучить проблему дальше.

Следующие шаги

Сведения о том, как использовать правильный формат и метаданные для собственных запросов пути, см. в документации по CodeQL. Документация по CodeQL также содержит подробные сведения о том, как определить новые источники и приемники, а также шаблоны и примеры расширения стандартных библиотек CodeQL для анализа.