<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
  <id>https://vulnerability.circl.lu/rss/recent/all/10</id>
  <title>Most recent entries from all</title>
  <updated>2026-10-01T06:00:05.049345+00:00</updated>
  <author>
    <name>Vulnerability-Lookup</name>
    <email>info@circl.lu</email>
  </author>
  <link href="https://vulnerability.circl.lu" rel="alternate"/>
  <generator uri="https://lkiesow.github.io/python-feedgen" version="1.0.0">python-feedgen</generator>
  <subtitle>Contains only the most 10 recent entries.</subtitle>
  <entry>
    <id>https://vulnerability.circl.lu/vuln/fkie_cve-2026-59960</id>
    <title>fkie_cve-2026-59960</title>
    <updated>2026-10-01T06:00:05.311563+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>Argos JavaScript provides official Argos SDKs for JavaScript. Prior to Argos core package version 6.2.1, attacker-controlled CI branch or ref values from GITHUB_HEAD_REF or ARGOS_BRANCH can flow through config.branch and getMergeBaseCommitSha() when hasRemoteContentAccess is false. The gitFetch() and gitMergeBase() functions in packages/core/src/ci-environment/git.ts interpolate these values into execSync() command strings executed by /bin/sh -c, so shell metacharacters in a pull-request branch name can execute arbitrary commands with the Argos upload process privileges on the CI runner. Successful exploitation can expose CI secrets, alter build artifacts, or compromise the runner. This issue is fixed in Argos core package version 6.2.1.</p>
      </div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/fkie_cve-2026-59960"/>
  </entry>
  <entry>
    <id>https://vulnerability.circl.lu/vuln/ghsa-4x45-gxvp-6283</id>
    <title>GHSA-4x45-gxvp-6283 — @argos-ci/core: CI Branch Name OS Command Injection</title>
    <updated>2026-10-01T06:00:05.311768+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> npm: @argos-ci/core</p>
<p>## CI Branch Name OS Command Injection in @argos-ci/core</p>
<p>### Summary</p>
<p>`@argos-ci/core@6.2.0` passes attacker-controlled CI branch/ref strings directly into an `execSync()` template literal in `packages/core/src/ci-environment/git.ts:89`. When a CI project has `hasRemoteContentAccess: false`, the Argos upload flow calls `getMergeBaseCommitSha()`, which invokes `gitFetch()` with the unsanitized branch name. Because `execSync()` passes the command string to `/bin/sh -c`, shell metacharacters such as `$()` command substitution are evaluated before `git` runs, enabling an attacker who can influence the branch name (e.g., via a pull request) to execute arbitrary OS commands on the CI runner. CVSS Base Score: 7.5 (High).</p>
<p>### Details</p>
<p>The vulnerable sink is in `packages/core/src/ci-environment/git.ts:87-90`:</p>
<p>```ts
function gitFetch(input: { ref: string; depth: number; target: string }) {
  execSync(
    `git fetch --force --update-head-ok --depth ${input.depth} origin ${input.ref}:${input.target}`,
  );
}
```</p>
<p>`execSync()` with a template-literal string invokes `/bin/sh -c "&lt;command&gt;"`. The shell expands `$()`, backticks, `;`, and other metacharacters before spawning `git`, so any special characters present in `input.ref` or `input.target` are interpreted as shell instructions.</p>
<p>A secondary sink exists at `packages/core/src/ci-environment/git.ts:67`:</p>
<p>```ts
execSync(`git merge-base ${input.head} ${input.base}`)
```</p>
<p>**Complete data flow (source → sink):**</p>
<p>1. `packages/core/src/c…</p></div>
    </content>
    <link href="https://vulnerability.circl.lu/vuln/ghsa-4x45-gxvp-6283"/>
  </entry>
</feed>
