1
0
mirror of synced 2026-01-01 00:04:41 -05:00
Files
docs/translations/ru-RU/content/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/about-code-scanning-with-codeql.md
2022-12-13 17:09:01 +00:00

9.1 KiB
Raw Blame History

title, shortTitle, intro, product, redirect_from, versions, type, topics, ms.openlocfilehash, ms.sourcegitcommit, ms.translationtype, ms.contentlocale, ms.lasthandoff, ms.locfileid
title shortTitle intro product redirect_from versions type topics ms.openlocfilehash ms.sourcegitcommit ms.translationtype ms.contentlocale ms.lasthandoff ms.locfileid
О проверке кода с помощью CodeQL Code scanning with CodeQL Для выявления уязвимостей и ошибок в коде вы можете использовать {% data variables.product.prodname_codeql %}. Результаты отображаются как оповещения {% data variables.product.prodname_code_scanning %} в {% data variables.product.prodname_dotcom %}. {% data reusables.gated-features.code-scanning %}
/code-security/secure-coding/automatically-scanning-your-code-for-vulnerabilities-and-errors/about-code-scanning-with-codeql
fpt ghes ghae ghec
* * * *
overview
Advanced Security
Code scanning
CodeQL
41531627f73e7878cfa5667560b61cd4e21d20b7 47bd0e48c7 HT ru-RU 09/05/2022 147052179

{% data reusables.code-scanning.beta %} {% data reusables.code-scanning.enterprise-enable-code-scanning %}

Сведения о {% data variables.product.prodname_code_scanning %} с {% data variables.product.prodname_codeql %}

{% data reusables.code-scanning.about-codeql-analysis %}

Существуют два основных способа использования анализа {% data variables.product.prodname_codeql %} для {% data variables.product.prodname_code_scanning %}:

{% ifversion ghes or ghae %}

{% note %} В {% data variables.product.product_name %} {% ifversion ghes %}{{ allVersions[currentVersion].currentRelease }} {% endif %} действие {% data variables.product.prodname_codeql %} по умолчанию использует {% data variables.product.prodname_codeql_cli %} версии {% data variables.product.codeql_cli_ghes_recommended_version %}. Мы рекомендуем использовать такую же версию {% data variables.product.prodname_codeql_cli %}, если вы выполняете анализ во внешней системе CI. {% endnote %}

{% endif %}

Сведения о {% data variables.product.prodname_codeql %}

{% data variables.product.prodname_codeql %} обрабатывает код как данные, что позволяет находить потенциальные уязвимости в коде с большей уверенностью, чем при использовании традиционных статических анализаторов.

  1. Создается база данных {% data variables.product.prodname_codeql %} для представления базы кода.
  2. Затем выполняются запросы {% data variables.product.prodname_codeql %} к этой базе данных для выявления проблем в базе кода.
  3. Результаты запроса отображаются как оповещения {% data variables.product.prodname_code_scanning %} в {% data variables.product.product_name %} при использовании {% data variables.product.prodname_codeql %} с {% data variables.product.prodname_code_scanning %}.

{% data variables.product.prodname_codeql %} поддерживает как компилируемые, так и интерпретируемые языки и может находить уязвимости и ошибки в коде, написанном на поддерживаемых языках.

{% data reusables.code-scanning.codeql-languages-bullets %}

Сведения о запросах {% data variables.product.prodname_codeql %}

Эксперты по {% data variables.product.company_short %}, исследователи в области безопасности и участники сообщества пишут и поддерживают запросы по умолчанию {% data variables.product.prodname_codeql %}, используемые для {% data variables.product.prodname_code_scanning %}. Запросы регулярно обновляются для улучшения анализа и уменьшения количества ложноположительных результатов. Запросы имеют открытый код, поэтому можно просматривать и добавлять что-то к ним в репозитории github/codeql. Дополнительные сведения см. в разделе {% data variables.product.prodname_codeql %} на веб-сайте {% data variables.product.prodname_codeql %}. Вы также можете написать собственные запросы. Дополнительные сведения см. в разделе Сведения о {% data variables.product.prodname_codeql %} queries в документации {% data variables.product.prodname_codeql %}.

Можно выполнять дополнительные запросы в рамках анализа проверки кода.

{%- ifversion codeql-packs %} Эти запросы должны принадлежать к опубликованному пакету запросов {% data variables.product.prodname_codeql %} (бета-версия) или пакету QL в репозитории. Пакеты {% data variables.product.prodname_codeql %} (бета-версия) предоставляют следующие преимущества по сравнению с традиционными пакетами QL:

  • При публикации пакета запросов {% data variables.product.prodname_codeql %} (бета-версия) в {% data variables.product.company_short %} {% data variables.product.prodname_container_registry %} все транзитивные зависимости, необходимые для запросов, и кэш компиляции включаются в пакет. Это повышает производительность и гарантирует, что выполнение запросов в пакете дает одинаковые результаты при каждом обновлении до новой версии пакета или CLI.
  • Пакеты QL не включают транзитивные зависимости, поэтому запросы в пакете могут зависеть только от стандартных библиотек (то есть библиотек, на которые ссылается инструкция import LANGUAGE в запросе) или библиотек в том же пакете QL, что и запрос.

Дополнительную информацию см. в разделе Сведения о пакетах {% data variables.product.prodname_codeql %} и Сведения о пакетах {% data variables.product.prodname_ql %} в документации {% data variables.product.prodname_codeql %}.

{% data reusables.code-scanning.beta-codeql-packs-cli %}

{%- else %} Запросы, которые требуется выполнить, должны принадлежать к пакету QL в репозитории. Запросы должны зависеть только от стандартных библиотек (то есть библиотек, на которые ссылается инструкция import LANGUAGE в запросе) или библиотек в том же пакете QL, что и запрос. Дополнительную информацию см. в разделе Сведения о пакетах {% data variables.product.prodname_ql %}. {% endif %}