GitHub Advisoryadvisory · Packagist
GHSA-q58j-g3f4-h26h CoreShop Vulnerable to Remote Code Execution (RCE) via Insecure `pull_request_target` Configuration
HIGH
Official page ↗
- Aliases
- CVE-2026-41249
- Ecosystem
- Packagist
- Packages
- coreshop/core-shop
- Severity
- High
- CVSS vector
- CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:N
- Weaknesses
- CWE-94
- Reviewed
- 2026-05-14
Affected packages
• Packagist coreshop/core-shop: 5.0.0 (no fix yet)
Description
Summary
The GitHub Actions workflow (`.github/workflows/static.yml`) uses the `pull_request_target` trigger but dangerously checks out the unverified code from the pull request head (`ref: ${{ github.event.pull_request.head.ref }}`). Subsequently, it executes a script (`bin/console`) from this untrusted checkout.
This allows any external attacker to achieve Remote Code Execution (RCE) on the GitHub Actions runner simply by submitting a malicious Pull Request. Also known as a "Pwn Request" vulnerability.
Steps to Reproduce:
1. Fork the target repository.
2. In the forked repository, modify a file that satisfies the `paths` condition (e.g., `src/dummy.php` or `composer.json`) to trigger the workflow.
3. Modify the `bin/console` file (which is executed in the workflow steps) with the following malicious payload:
```bash
!/bin/bash
echo "=== PWNED ==="
echo "whoami:"
whoami
```
4. Commit the changes and open a Pull Request against the `5.0` or `next` branch of the base repository.
5. The `Static Tests` workflow will trigger automatically. Navigate to the Actions tab and inspect the logs for the `Validate YAML` (or any step executing `bin/console`).
6. You will see the output of `whoami` (typically `runner`), proving that the arbitrary code was successfully executed in the runner's context.
Impact:
Because `pull_request_target` runs in the context of the base repository, the runner has access to repository secrets (e.g., `PIMCORE_SECRET`, `PIMCORE_PRODUCT_KEY`) loaded in the environment. An attacker can exfiltrate these secrets, modify repository contents (if the token has write permissions), or abuse the runner's computing resources.
Recommended Mitigation:
Do not checkout untrusted PR code (`head.ref`) when using `pull_request_target` if the code will be built or executed.
Consider adopting a separated architecture using the `workflow_run` event:
1. Use the `pull_request` event to safely run the build/tests in an unprivileged sandbox and upload artifacts.
2. Use the `workflow_run` event (which is privileged) to download the artifacts and perform actions requiring secrets.
Related
Alias · CVE (1)
- CVE-2026-41249 CoreShop is a Pimcore enhanced eCommerce solution. vulnerability
Weakness · CWE (1)
- CWE-94 Improper Control of Generation of Code weakness
References
- https://github.com/coreshop/CoreShop/security/advisories/GHSA-q58j-g3f4-h26h web
- https://nvd.nist.gov/vuln/detail/CVE-2026-41249 advisory
- https://github.com/coreshop/CoreShop/commit/cc1e3f547228ec5ebfc1dc0472f9a3cc5f4137a4 web
- https://github.com/coreshop/CoreShop package
- https://github.com/coreshop/CoreShop/blob/5.1.0-beta.1/.github/workflows/static.yml#L14 web