Skip to main content
CVE Vulnerability Database
Vulnerability Database/CVE-2026-44590

CVE-2026-44590: Sherlock GitHub Actions RCE Vulnerability

CVE-2026-44590 is a remote code execution vulnerability in Sherlock's GitHub Actions workflow that allows attackers to inject commands and steal tokens. This post covers the technical details, affected versions, and mitigation.

Published:

CVE-2026-44590 Overview

CVE-2026-44590 is a command injection vulnerability in Sherlock, an open-source tool that hunts down social media accounts by username across social networks. Versions prior to 0.16.1 ship a GitHub Actions workflow named validate_modified_targets.yml that is triggered by the pull_request_target event. The workflow executes attacker-controlled input from pull requests, enabling arbitrary command execution on the CI runner. Any GitHub user can exploit this by opening a pull request, with no approval, review, or merge required. The vulnerability is tracked under [CWE-78] (OS Command Injection) and is fixed in version 0.16.1.

Critical Impact

Unauthenticated attackers can execute arbitrary commands on the Sherlock CI runner and exfiltrate the GITHUB_TOKEN, enabling repository compromise.

Affected Products

  • Sherlock versions prior to 0.16.1
  • The validate_modified_targets.yml GitHub Actions workflow
  • CI/CD pipelines using the vulnerable Sherlock repository configuration

Discovery Timeline

  • 2026-05-27 - CVE-2026-44590 published to NVD
  • 2026-05-27 - Last updated in NVD database

Technical Details for CVE-2026-44590

Vulnerability Analysis

The vulnerability resides in the validate_modified_targets.yml GitHub Actions workflow shipped with Sherlock. The workflow uses the pull_request_target trigger, which runs in the context of the base repository and has access to repository secrets including the GITHUB_TOKEN. Unlike the pull_request trigger, pull_request_target does not require maintainer approval to execute on pull requests from forks. The workflow incorporates pull request content into shell commands without sanitization, allowing an attacker to inject arbitrary commands by crafting a malicious pull request.

Root Cause

The root cause is unsafe handling of untrusted pull request data within a privileged workflow context. Combining pull_request_target with direct interpolation of pull request fields into shell steps creates an injection sink. The workflow trusts attacker-controlled content as if it were repository-internal data.

Attack Vector

An attacker forks the Sherlock repository and opens a pull request containing payloads in fields referenced by the vulnerable workflow. When GitHub schedules the workflow, the injected commands execute on the runner with the privileges of the base repository. The attacker can then read environment variables, exfiltrate the GITHUB_TOKEN, and use it to push commits, modify releases, or alter repository settings. No maintainer interaction is required for execution.

No verified proof-of-concept code is published. Refer to the GitHub Security Advisory for additional technical details.

Detection Methods for CVE-2026-44590

Indicators of Compromise

  • Unexpected pull requests from unknown forks targeting branches monitored by validate_modified_targets.yml.
  • GitHub Actions workflow runs that spawn shell commands referencing pull request titles, branch names, or commit messages.
  • Outbound network connections from CI runners to attacker-controlled hosts during workflow execution.
  • Unauthorized use of GITHUB_TOKEN to create commits, modify workflows, or alter repository settings.

Detection Strategies

  • Audit all GitHub Actions workflows for use of pull_request_target combined with checkout of untrusted code or interpolation of github.event.pull_request.* fields into shell steps.
  • Review GitHub audit logs for token usage originating from workflow runs tied to external pull requests.
  • Inspect repository commit history for unauthorized changes made via GITHUB_TOKEN during the vulnerable window.

Monitoring Recommendations

  • Enable GitHub Advanced Security and dependency scanning to surface vulnerable workflow patterns.
  • Forward GitHub audit logs and Actions logs to a centralized SIEM for correlation and retention.
  • Alert on workflow steps that execute network egress commands such as curl, wget, or nc from runners handling external pull requests.

How to Mitigate CVE-2026-44590

Immediate Actions Required

  • Upgrade Sherlock to version 0.16.1 or later, which contains the fix for the vulnerable workflow.
  • Rotate any secrets, tokens, or deploy keys that may have been exposed to runners executing the vulnerable workflow.
  • Review recent pull request activity and workflow runs for signs of exploitation prior to patching.

Patch Information

The maintainers fixed CVE-2026-44590 in Sherlock 0.16.1. The patch removes the unsafe interpolation pattern in validate_modified_targets.yml. See the GitHub Security Advisory GHSA-v6wr-ccr4-x8g9 for the full advisory and remediation details.

Workarounds

  • Disable the validate_modified_targets.yml workflow until the upgrade to 0.16.1 is applied.
  • Replace the pull_request_target trigger with pull_request to remove access to repository secrets from fork-based runs.
  • Require workflow approval for first-time contributors under repository Actions settings to limit unauthenticated execution.
  • Pass untrusted pull request data via environment variables rather than direct shell interpolation in workflow steps.

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

Default Legacy - Prefooter | Experience the World’s Most Advanced Cybersecurity Platform

Experience the Most Advanced Cybersecurity Platform

See how the world’s most intelligent, autonomous cybersecurity platform can protect your organization today and into the future.