<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title>Most recent entries from all</title>
    <link>https://vulnerability.circl.lu</link>
    <description>Contains only the most 10 recent entries.</description>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>python-feedgen</generator>
    <language>en</language>
    <lastBuildDate>Thu, 01 Oct 2026 23:27:49 +0000</lastBuildDate>
    <item>
      <title>fkie_cve-2026-55565</title>
      <link>https://vulnerability.circl.lu/vuln/fkie_cve-2026-55565</link>
      <description>&lt;p&gt;Yamcs is a mission control framework. Prior to 5.12.8 and 5.13.2, Yamcs LikeExpression.fillCode_getValueReturn in yamcs-core/src/main/java/org/yamcs/yarch/streamsql/LikeExpression.java inserts an unescaped LIKE pattern into Java source compiled by Expression.getCompiledExpression through SimpleCompiler.cook instead of applying ValueExpression.escapeJavaString. The pattern can originate from POST /api/archive/{instance}:executeSql, POST /api/archive/{instance}:streamSql, POST /api/archive/{instance}/tables/{table}:readRows, GET /api/archive/{instance}/events, or activity searches, including paths available with ReadTables, ReadEvents, or ReadActivities. A quote in the pattern can inject Java that runs as the Yamcs server process. This issue is fixed in versions 5.12.8 and 5.13.2.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;Yamcs is a mission control framework. Prior to 5.12.8 and 5.13.2, Yamcs LikeExpression.fillCode_getValueReturn in yamcs-core/src/main/java/org/yamcs/yarch/streamsql/LikeExpression.java inserts an unescaped LIKE pattern into Java source compiled by Expression.getCompiledExpression through SimpleCompiler.cook instead of applying ValueExpression.escapeJavaString. The pattern can originate from POST /api/archive/{instance}:executeSql, POST /api/archive/{instance}:streamSql, POST /api/archive/{instance}/tables/{table}:readRows, GET /api/archive/{instance}/events, or activity searches, including paths available with ReadTables, ReadEvents, or ReadActivities. A quote in the pattern can inject Java that runs as the Yamcs server process. This issue is fixed in versions 5.12.8 and 5.13.2.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/fkie_cve-2026-55565</guid>
    </item>
    <item>
      <title>GHSA-c64q-hj4j-375f — Yamcs vulnerable to authenticated remote code execution via unescaped StreamSQL `LIKE` pattern compiled by Janino (`Lik…</title>
      <link>https://vulnerability.circl.lu/vuln/ghsa-c64q-hj4j-375f</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Maven: org.yamcs:yamcs-core&lt;/p&gt;
&lt;p&gt;## Summary
Yamcs compiles StreamSQL query expressions to Java at runtime with Janino. The `LIKE` operator inserts the user-supplied pattern into the generated Java **unescaped**, inside a `&amp;#34;...&amp;#34;` literal, so a pattern containing `&amp;#34;` breaks out and injects arbitrary Java (e.g. a `static{}` block that runs an OS command when the compiled filter class loads). Result: RCE as the OS user running Yamcs.&lt;/p&gt;
&lt;p&gt;The pattern is embedded raw whether it comes from a SQL string literal or a bound `?` argument, so the sink is reachable from any endpoint that builds a `LIKE` from user input, at routine **read-only** privileges, not just `executeSql`:
- `POST /api/archive/{instance}:executeSql` and `:streamSql` (privilege `ControlArchiving`)
- `POST /api/archive/{instance}/tables/{table}:readRows` via the `query` field (privilege `ReadTables`)
- `GET /api/archive/{instance}/events?q=` and the event export/stream variants (privilege `ReadEvents`)
- `listActivities` `q` (privilege `ReadActivities`)&lt;/p&gt;
&lt;p&gt;The Events page search box feeds `q` directly.&lt;/p&gt;
&lt;p&gt;Independent of the May-2026 algorithm-override RCEs (CVE-2026-46562/46621/44632): it needs none of `ChangeMissionDatabase` and is not affected by the `overrideAlgorithmsEnabled` gate.&lt;/p&gt;
&lt;p&gt;## Details
- **Sink:** `Expression#getCompiledExpression` compiles generated source with `SimpleCompiler.cook(...)` (`Expression.java:205`) and instantiates it (`Expression.java:213`) at stream prep, before any tuple flows.
- **Injection:** `LikeExpression#fillCode_getValue…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Maven: org.yamcs:yamcs-core&lt;/p&gt;
&lt;p&gt;## Summary
Yamcs compiles StreamSQL query expressions to Java at runtime with Janino. The `LIKE` operator inserts the user-supplied pattern into the generated Java **unescaped**, inside a `&amp;#34;...&amp;#34;` literal, so a pattern containing `&amp;#34;` breaks out and injects arbitrary Java (e.g. a `static{}` block that runs an OS command when the compiled filter class loads). Result: RCE as the OS user running Yamcs.&lt;/p&gt;
&lt;p&gt;The pattern is embedded raw whether it comes from a SQL string literal or a bound `?` argument, so the sink is reachable from any endpoint that builds a `LIKE` from user input, at routine **read-only** privileges, not just `executeSql`:
- `POST /api/archive/{instance}:executeSql` and `:streamSql` (privilege `ControlArchiving`)
- `POST /api/archive/{instance}/tables/{table}:readRows` via the `query` field (privilege `ReadTables`)
- `GET /api/archive/{instance}/events?q=` and the event export/stream variants (privilege `ReadEvents`)
- `listActivities` `q` (privilege `ReadActivities`)&lt;/p&gt;
&lt;p&gt;The Events page search box feeds `q` directly.&lt;/p&gt;
&lt;p&gt;Independent of the May-2026 algorithm-override RCEs (CVE-2026-46562/46621/44632): it needs none of `ChangeMissionDatabase` and is not affected by the `overrideAlgorithmsEnabled` gate.&lt;/p&gt;
&lt;p&gt;## Details
- **Sink:** `Expression#getCompiledExpression` compiles generated source with `SimpleCompiler.cook(...)` (`Expression.java:205`) and instantiates it (`Expression.java:213`) at stream prep, before any tuple flows.
- **Injection:** `LikeExpression#fillCode_getValue…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/ghsa-c64q-hj4j-375f</guid>
    </item>
  </channel>
</rss>
