Этот отчет не переведен на запрошенный язык. Вместо него показан канонический отчет на английском языке.

Версионная оценка безопасности

ID отчёта: SA-DBE0E719

7/8/2026, 8:27:04 AM

azure-cloud-migrate оценка безопасности v5

Отчёт о сертификации безопасности навыка

История аудитов
Модель аудита: codex Исторический отчет
Название навыка
azure-cloud-migrate
Версия
v5
Сопровождающий
microsoft
Охват
32 Просканировано файлов · 4,622 Проанализировано строк
Версия политики
Недоступно

Наивысшая серьёзность подтверждённого результата

Высокий

Подтверждённые проблемы безопасности (9) требуют внимания.

Контекст установки

Исторические доказательства

Этот отчёт может не описывать артефакт, доступный для установки в настоящее время. Откройте текущую страницу Навыка для получения рекомендаций по установке.

Открыть текущую страницу Навыка

Этот отчёт не блокирует и не разрешает манифест или ZIP.

Most static findings are documentation false positives from Markdown links, code fences, Azure managed identity examples, and visible migration commands. Confirmed risks remain where the guides retrieve shared keys, export Kubernetes secrets, or pass decoded secret values through command-line arguments during migration.

Позиция отчета

Исторический отчет

Откройте историю аудита перед использованием этого отчета для установки.

Аттестация аудита

Не подлежит аттестации

Требуемая неизменяемая привязка не завершена.

Проверка человеком

Не проверено

Для этого отчета не зафиксирована проверка человеком.

Охват

32 Просканировано файлов · 4,622 Проанализировано строк

23 элементов показано для проверки

Ограничения

Этот отчёт не заявляет о выполнении во время работы или в песочнице и не доказывает отсутствие побочных эффектов.

Цепочка доказательств

Проследите доказательства от привязки источника до контракта установки. Доступные доказательства подтверждают возможность проверки; они не являются гарантией безопасности.

  1. Источник

    Привязка недоступна

  2. Артефакт

    Идентификация неполная

  3. Аудит

    Завершено

  4. Контракт установки

    Открыть манифест для проверки

    Открыть манифест

Обнаруженные возможности

«Обнаружено» означает, что в этом отчете зафиксированы подтверждающие доказательства. «Не зафиксировано» не доказывает отсутствие возможности.

Содержит скрипты

Может выполнять код, включённый в Skill.

Обнаружено в 12 местах расположения доказательств

Доступ к сети

Может подключаться к внешним службам.

Обнаружено в 23 местах расположения доказательств

Доступ к файловой системе

Может читать или записывать локальные файлы.

Обнаружено в 7 местах расположения доказательств

Переменные окружения

Может считывать значения из окружения процесса.

Обнаружено в 34 местах расположения доказательств

Внешние команды

Может вызывать команды или программы вне Навыка.

Обнаружено в 171 местах расположения доказательств

Пункты проверки возможностей (14)
Высокий
Shell command substitution
--value "$(gcloud secrets versions access latest --secret=<secret-id> --project="$GCP_PROJECT")"
The line recommends or uses command-line secret transfer through az keyvault secret set --value. That can expose decoded secret material through process arguments, logs, or shell history.
Высокий
Shell command substitution
az keyvault secret set --vault-name myapp-kv --name password --value "$(kubectl get secret mysecret
The line recommends or uses command-line secret transfer through az keyvault secret set --value. That can expose decoded secret material through process arguments, logs, or shell history.
Высокий
Database connection strings
read -s -p "Enter database password: " DB_PASSWORD
The example asks for a database password and writes it into a temporary file for Key Vault import. Cleanup is present, but the flow still materializes secret data locally.
Высокий
Database connection strings
echo -n "$DB_PASSWORD" > "$SECRET_FILE"
The example asks for a database password and writes it into a temporary file for Key Vault import. Cleanup is present, but the flow still materializes secret data locally.
Средний
Shell command substitution
LOG_KEY=$(az monitor log-analytics workspace get-shared-keys -g "$RG" -n "${RG}-logs" --query primar
The command retrieves cloud shared keys into shell variables. These keys are sensitive credentials and can be exposed through logs, history, or subsequent command arguments.
Средний
Shell command substitution
LOG_KEY=$(az monitor log-analytics workspace get-shared-keys --resource-group myapp-rg --workspace-n
The command retrieves cloud shared keys into shell variables. These keys are sensitive credentials and can be exposed through logs, history, or subsequent command arguments.
Средний
Ruby/shell backtick execution
aws secretsmanager get-secret-value --secret-id <secret-id> --region <region> `
The command extracts live AWS Secrets Manager values during migration. The guide uses cleanup controls, but the secret is still materialized in the local execution environment.
Средний
Shell command substitution
secret_file="$(mktemp)"
The temp file is created specifically for secret migration. Permissions and cleanup reduce exposure, but local secret materialization remains a security risk.
Средний
Temp file creation
secret_file="$(mktemp)"
The temp file is created specifically for secret migration. Permissions and cleanup reduce exposure, but local secret materialization remains a security risk.
Средний
Ruby/shell backtick execution
--azure-file-account-name "$STORAGE_ACCOUNT" --azure-file-account-key "$STORAGE_KEY" `
The line passes a retrieved cloud key as a command argument. This is a legitimate deployment pattern, but it increases the chance of secret exposure in local process or logging surfaces.
Средний
Shell command substitution
LOG_KEY=$(az monitor log-analytics workspace get-shared-keys --resource-group spring-rg --workspace-
The command retrieves cloud shared keys into shell variables. These keys are sensitive credentials and can be exposed through logs, history, or subsequent command arguments.
Средний
Shell command substitution
STORAGE_KEY=$(az storage account keys list --account-name "$STORAGE_ACCOUNT" --resource-group spring
The command retrieves cloud shared keys into shell variables. These keys are sensitive credentials and can be exposed through logs, history, or subsequent command arguments.
Средний
Shell command substitution
SECRET_FILE=$(mktemp)
The temp file is created specifically for secret migration. Permissions and cleanup reduce exposure, but local secret materialization remains a security risk.
Средний
Temp file creation
SECRET_FILE=$(mktemp)
The temp file is created specifically for secret migration. Permissions and cleanup reduce exposure, but local secret materialization remains a security risk.

Результаты оценки рисков

Подтверждённые проблемы безопасности отделены от элементов, которые всё ещё требуют проверки.

Подтверждённые проблемы безопасности (9)

RISK-001 Высокий
System reconnaissance
> **Tip**: Prefer piping decoded secret values directly to `az keyvault secret set --value` to avoid
The line recommends or uses command-line secret transfer through az keyvault secret set --value. That can expose decoded secret material through process arguments, logs, or shell history.
RISK-002 Высокий
Kubernetes Secrets Exported Into Workspace
The Kubernetes deployment guide creates an export directory and writes all resources, including Secret objects, to all-resources.yaml. Kubernetes Secret values are base64 encoded, not encrypted, so this can leave sensitive data in the workspace.
The command explicitly includes secret resources in a YAML export file. This is direct evidence of local secret materialization during assessment.
RISK-003 Высокий
Decoded Secrets Passed Through CLI Arguments
Several migration examples pass decoded secret values to az keyvault secret set with --value. This can expose secrets in process listings, command logging, terminal scrollback, or shell history.
The cited lines show decoded Kubernetes or GCP secret values being passed as CLI values. The risk is clear even though the migration intent is legitimate.
RISK-004 Средний
System reconnaissance
--logs-workspace-id "$LOG_ID" --logs-workspace-key "$LOG_KEY"
The line passes a retrieved cloud key as a command argument. This is a legitimate deployment pattern, but it increases the chance of secret exposure in local process or logging surfaces.
RISK-005 Средний
System reconnaissance
--logs-workspace-id $workspace.customerId --logs-workspace-key $keys.primarySharedKey
The line passes a retrieved cloud key as a command argument. This is a legitimate deployment pattern, but it increases the chance of secret exposure in local process or logging surfaces.
RISK-006 Средний
System reconnaissance
--logs-workspace-id "$LOG_ID" --logs-workspace-key "$LOG_KEY" \
The line passes a retrieved cloud key as a command argument. This is a legitimate deployment pattern, but it increases the chance of secret exposure in local process or logging surfaces.
RISK-007 Средний
System reconnaissance
--logs-workspace-id $workspace.customerId --logs-workspace-key $keys.primarySharedKey `
The line passes a retrieved cloud key as a command argument. This is a legitimate deployment pattern, but it increases the chance of secret exposure in local process or logging surfaces.
RISK-008 Средний
System reconnaissance
aws secretsmanager get-secret-value --secret-id <secret-id> --region <region> \
The command extracts live AWS Secrets Manager values during migration. The guide uses cleanup controls, but the secret is still materialized in the local execution environment.
RISK-009 Средний
System reconnaissance
aws secretsmanager get-secret-value --secret-id <secret-id> --region <region> `
The command extracts live AWS Secrets Manager values during migration. The guide uses cleanup controls, but the secret is still materialized in the local execution environment.

Меры по устранению

В ходе этого аудита были зафиксированы рекомендуемые исправления. Их применение является ответственностью сопровождающего.

  1. FIX-001
    Высокий
    Decoded secrets are passed with az keyvault secret set --value in Kubernetes and Cloud Run migration examples.
    Replace --value secret transfer with protected file input, stdin-safe tooling, or a documented manual step that avoids process arguments and shell history.
  2. FIX-002
    Высокий
    Kubernetes exports include Secret resources in local YAML output.
    Exclude Secret objects from broad exports by default, or write redacted metadata only unless the user explicitly approves secret migration.
  3. FIX-003
    Средний
    Some deployment examples retrieve Log Analytics or storage account shared keys into shell variables.
    Prefer identity-based or keyless Azure Monitor and storage patterns, and clearly mark shared-key fallbacks as sensitive manual operations.
  4. FIX-004
    Средний
    Temporary files are used for secret import flows.
    Keep restrictive permissions and cleanup, but warn users not to run those steps in shared, recorded, or synchronized workspaces.

Экспертные доказательства

Неизменяемая идентификация субъекта, метаданные сканера, отклонённые совпадения и доказательства на уровне источника.

Субъект артефакта

Коммит Marketplace
Недоступно
Хеш содержимого
Недоступно
Хеш дерева
Недоступно
Путь Skill
Недоступно
Хеш данных аудита
Недоступно

Метаданные анализа

Модель аудита: codex

Состояние анализа: Завершено

Область действия ограничена зафиксированными файлами, строками, методами и доказательствами. Выполнение во время работы или в песочнице не заявляется.

Проверить и экспортировать

Манифест и lockfile привязывают артефакты установки к криптографическим хешам. Это заявление о целостности не связано с оценкой безопасности.

Аттестация аудита: not_attestable