[daily secrets] Daily Secrets Analysis — 2026-04-04 #24595
Closed
Replies: 1 comment
-
|
This discussion has been marked as outdated by Daily Secrets Analysis Agent. A newer discussion is available at Discussion #24784. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
🔐 Daily Secrets Analysis Report
Date: 2026-04-04
Workflow Files Analyzed: 181
Run: §23988693159
📊 Executive Summary
secrets.*referencesgithub.tokenreferences🛡️ Security Posture
redact_secrets.cjs)permissions:blockoutputs:Security posture is excellent: every compiled workflow has both a redaction step and an explicit permissions block. The token cascade pattern (
GH_AW_GITHUB_MCP_SERVER_TOKEN || GH_AW_GITHUB_TOKEN || GITHUB_TOKEN) is consistently applied across 683 usage sites.🎯 Key Findings
GitHub token triad dominates —
GITHUB_TOKEN(1,960),GH_AW_GITHUB_TOKEN(1,872), andGH_AW_GITHUB_MCP_SERVER_TOKEN(1,019) together account for ~4,851 of all secret references, reflecting the standard fallback chain pattern used in every workflow.Copilot engine key present —
COPILOT_GITHUB_TOKENappears 312 times across Copilot-engine workflows. This is a separate privileged token for Copilot API access and warrants periodic rotation review.Multi-AI engine support — 61 workflows (34%) reference at least one AI provider key (
ANTHROPIC_API_KEY×164,OPENAI_API_KEY×102,CODEX_API_KEY×102,GEMINI_API_KEY×4). All workflows with zero secrets: 0 — every compiled workflow uses at least one secret.github.event.*in non-env contexts — 2,249 occurrences ofgithub.event.*outside explicitenv:blocks were observed. Investigation confirms these are in safe locations:if:conditions, concurrency group keys, and numeric event IDs (comment ID, issue number, PR number) — not unsafe string interpolation intorun:steps. No template injection risk found.External integrations are narrow — Only 7 workflows use third-party service secrets (Slack, Notion, Tavily, Brave, Datadog, Sentry, Azure). Low blast radius if any single integration key is compromised.
💡 Recommendations
Review
COPILOT_GITHUB_TOKENrotation cadence — With 312 usages across workflows, this is a high-value token. Ensure it follows at least a 90-day rotation policy.Audit
GH_AW_SIDE_REPO_PAT— Used 19 times; cross-repository PATs carry elevated risk. Verify it has the minimum required scope and is rotation-scheduled.Monitor AI key sprawl — 4 distinct AI provider keys (Anthropic, OpenAI, Codex, Gemini) in active use. Consider centralizing AI access through a single proxy/gateway to reduce the key surface area.
🔑 Top 20 Secrets by Usage
GITHUB_TOKENGH_AW_GITHUB_TOKENGH_AW_GITHUB_MCP_SERVER_TOKENCOPILOT_GITHUB_TOKENANTHROPIC_API_KEYOPENAI_API_KEYCODEX_API_KEYGH_AW_CI_TRIGGER_TOKENGH_AW_SIDE_REPO_PATTAVILY_API_KEYGH_AW_PROJECT_GITHUB_TOKENNOTION_API_TOKENGH_AW_AGENT_TOKENGEMINI_API_KEYBRAVE_API_KEYDD_SITEDD_APPLICATION_KEYDD_API_KEYSENTRY_OPENAI_API_KEYSENTRY_ACCESS_TOKENRemaining (low-use):
GH_AW_OTEL_HEADERS,GH_AW_OTEL_ENDPOINT,CONTEXT,AZURE_TENANT_ID,AZURE_CLIENT_SECRET,AZURE_CLIENT_ID,SLACK_BOT_TOKEN,GH_AW_PLUGINS_TOKEN📊 Secret Category Breakdown
github.token(built-in)🔍 Security Check Details
Redaction System:
redact_secrets.cjsis present in all 181 workflows, ensuring secret values are scrubbed from logs before they are written.Token Cascade Pattern: The 3-tier fallback
secrets.GH_AW_GITHUB_MCP_SERVER_TOKEN || secrets.GH_AW_GITHUB_TOKEN || secrets.GITHUB_TOKENensures graceful degradation. Found in 683 usages across workflow env blocks.Secrets in
outputs:blocks: None detected — secrets are never propagated through job output channels.github.event.*usage analysis: 2,249 usages outside explicitenv:assignments. All sampled instances are in safe contexts:github.event.issue.number,github.run_id)if:condition expressions (evaluated server-side, not string-interpolated)env:variable assignments within step-level env mapsNo template injection vulnerabilities identified.
Permissions blocks: All 181 workflows declare explicit
permissions:, following least-privilege principle.📖 Reference Documentation
scratchpad/secrets-yml.mdactions/setup/js/redact_secrets.cjsAGENTS.md→ "GitHub MCP Server" sectionGenerated: 2026-04-04T22:15 UTC
Workflow Run: §23988693159
Beta Was this translation helpful? Give feedback.
All reactions