Snowflake GitHub Actions Flaw Exposed Internal Jira Credentials via Command Injection
A critical vulnerability in Snowflake’s public snowflake-connector-net GitHub repository allowed unauthenticated attackers to execute arbitrary commands on a GitHub-hosted runner and potentially exfiltrate internal Jira credentials. The flaw, discovered by Wiz’s AI-powered security tool Red Agent, existed in the repository’s jira_issue.yml workflow, which triggered whenever a user opened a new issue.
The issue stemmed from unsafe GitHub Actions expression interpolation, where the attacker-controlled issue title was directly embedded into a shell command. A specially crafted title containing a single quote could escape the intended string, enabling command injection. The vulnerability was introduced on June 18, 2026, via a merged pull request (PR #1218) that replaced a secure input-handling method using environment variables and jq –arg parsing with direct interpolation of ${{ github.event.issue.title }}.
Despite GitHub Advanced Security scans, the flaw went undetected. An attempted security gate in the workflow also failed, as it checked for pull-request attributes (null in issue events), allowing any GitHub user to trigger the vulnerable automation. Wiz’s Red Agent autonomously validated the exploit, adjusting its injection payload after an initial Bash syntax error, and successfully accessed Jira environment variables. The recovered token authenticated as [email protected], granting read access to sensitive internal projects.
Snowflake received Wiz’s responsible disclosure on June 23, 2026, and remediated the issue the same day by restoring the secure parsing method, revoking and rotating the exposed Jira credential, and reviewing audit logs. Both companies confirmed that Wiz was the only party to access the data during the five-day exposure window, with all proof-of-concept data securely deleted.
The incident underscores the risks of CI/CD workflows as attack surfaces when untrusted inputs are improperly handled, as well as the limitations of automated security tools in detecting context-specific vulnerabilities.
Source: https://gbhackers.com/critical-snowflake-github-actions-flaw/
Snowflake cybersecurity rating report: https://www.rankiteo.com/company/snowflake-computing
GitHub cybersecurity rating report: https://www.rankiteo.com/company/github
"id": "SNOGIT1787203094",
"linkid": "snowflake-computing, github",
"type": "Vulnerability",
"date": "6/2026",
"severity": "25",
"impact": "1",
"explanation": "Attack without any consequences"
{'affected_entities': [{'industry': 'Cloud Data Warehousing',
'name': 'Snowflake',
'type': 'Company'}],
'attack_vector': 'GitHub Actions Workflow',
'data_breach': {'data_exfiltration': 'Potential (validated by Wiz’s Red '
'Agent)',
'sensitivity_of_data': 'High (access to internal projects)',
'type_of_data_compromised': 'Internal Jira credentials '
'(authentication token)'},
'date_detected': '2026-06-23',
'date_resolved': '2026-06-23',
'description': 'A critical vulnerability in Snowflake’s public '
'*snowflake-connector-net* GitHub repository allowed '
'unauthenticated attackers to execute arbitrary commands on a '
'GitHub-hosted runner and potentially exfiltrate internal Jira '
'credentials. The flaw existed in the repository’s '
'`jira_issue.yml` workflow, which triggered whenever a user '
'opened a new issue. The issue stemmed from unsafe GitHub '
'Actions expression interpolation, where the '
'attacker-controlled issue title was directly embedded into a '
'shell command, enabling command injection.',
'impact': {'brand_reputation_impact': 'Moderate (public disclosure of CI/CD '
'security flaw)',
'data_compromised': 'Internal Jira credentials (token for *[email '
'protected]*)',
'operational_impact': 'Potential unauthorized access to internal '
'Jira projects',
'systems_affected': 'GitHub-hosted runner, Snowflake’s internal '
'Jira projects'},
'investigation_status': 'Closed (remediated and validated)',
'lessons_learned': 'The incident underscores the risks of CI/CD workflows as '
'attack surfaces when untrusted inputs are improperly '
'handled, as well as the limitations of automated security '
'tools in detecting context-specific vulnerabilities.',
'motivation': 'Security Research / Responsible Disclosure',
'post_incident_analysis': {'corrective_actions': ['Restored secure '
'input-handling method '
'using environment '
'variables and `jq –arg` '
'parsing',
'Revoked and rotated '
'exposed Jira credential',
'Reviewed audit logs to '
'confirm no unauthorized '
'access beyond Wiz’s '
'proof-of-concept',
'Deleted all '
'proof-of-concept data'],
'root_causes': ['Unsafe GitHub Actions expression '
'interpolation in `jira_issue.yml` '
'workflow',
'Failure of security gate to '
'account for issue-triggered '
'events (PR attributes were null)',
'Lack of automated detection for '
'context-specific vulnerabilities '
'in GitHub Advanced Security '
'scans']},
'recommendations': ['Avoid direct interpolation of untrusted inputs in GitHub '
'Actions workflows',
'Use secure parsing methods (e.g., environment variables, '
'`jq –arg`)',
'Implement stricter security gates in automation '
'workflows',
'Regularly audit CI/CD pipelines for vulnerabilities'],
'references': [{'source': 'Wiz Blog / Security Research'}],
'response': {'containment_measures': 'Revoked and rotated exposed Jira '
'credential',
'recovery_measures': 'Reviewed audit logs to confirm no '
'unauthorized access beyond Wiz’s '
'proof-of-concept',
'remediation_measures': 'Restored secure parsing method in '
'GitHub Actions workflow',
'third_party_assistance': 'Wiz (security research and '
'disclosure)'},
'threat_actor': 'Wiz (Red Agent - AI-powered security tool for validation)',
'title': 'Snowflake GitHub Actions Flaw Exposed Internal Jira Credentials via '
'Command Injection',
'type': 'Command Injection',
'vulnerability_exploited': 'Unsafe GitHub Actions expression interpolation in '
'`jira_issue.yml` workflow'}