<?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://cve.radiocsirt.org</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>Tue, 06 Oct 2026 05:07:26 +0000</lastBuildDate>
    <item>
      <title>EUVD-2026-280100</title>
      <link>https://cve.radiocsirt.org/vuln/euvd-2026-280100</link>
      <description>EUVD-2026-280100</description>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/euvd-2026-280100</guid>
    </item>
    <item>
      <title>fkie_cve-2026-34825</title>
      <link>https://cve.radiocsirt.org/vuln/fkie_cve-2026-34825</link>
      <description>&lt;p&gt;NocoBase is an AI-powered no-code/low-code platform for building business applications and enterprise solutions. Prior to version 2.0.30, NocoBase plugin-workflow-sql substitutes template variables directly into raw SQL strings via getParsedValue() without parameterization or escaping. Any user who triggers a workflow containing a SQL node with template variables from user-controlled data can inject arbitrary SQL. This issue has been patched in version 2.0.30.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;NocoBase is an AI-powered no-code/low-code platform for building business applications and enterprise solutions. Prior to version 2.0.30, NocoBase plugin-workflow-sql substitutes template variables directly into raw SQL strings via getParsedValue() without parameterization or escaping. Any user who triggers a workflow containing a SQL node with template variables from user-controlled data can inject arbitrary SQL. This issue has been patched in version 2.0.30.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/fkie_cve-2026-34825</guid>
    </item>
    <item>
      <title>GHSA-vx58-fwwq-5g8j — NocoBase Has SQL Injection via template variable substitution in workflow SQL node</title>
      <link>https://cve.radiocsirt.org/vuln/ghsa-vx58-fwwq-5g8j</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; npm: @nocobase/plugin-workflow-sql&lt;/p&gt;
&lt;p&gt;## Summary&lt;/p&gt;
&lt;p&gt;NocoBase &amp;lt;= 2.0.8 `plugin-workflow-sql` substitutes template variables directly into raw SQL strings via `getParsedValue()` without parameterization or escaping. Any user who triggers a workflow containing a SQL node with template variables from user-controlled data can inject arbitrary SQL.&lt;/p&gt;
&lt;p&gt;## Affected Versions&lt;/p&gt;
&lt;p&gt;- Affected: all versions through 2.0.8&lt;/p&gt;
&lt;p&gt;## Details&lt;/p&gt;
&lt;p&gt;The `SQLInstruction` in `packages/plugins/@nocobase/plugin-workflow-sql/src/server/SQLInstruction.ts` line 28 processes SQL templates:&lt;/p&gt;
&lt;p&gt;```typescript
// SQLInstruction.ts:28
const sql = processor.getParsedValue(node.config.sql || &amp;#39;&amp;#39;, node.id).trim();
```&lt;/p&gt;
&lt;p&gt;Then executes the resulting string directly:&lt;/p&gt;
&lt;p&gt;```typescript
// SQLInstruction.ts:35
const [result] = await collectionManager.db.sequelize.query(sql, {
  transaction: this.workflow.useDataSourceTransaction(dataSourceName, processor.transaction),
});
```&lt;/p&gt;
&lt;p&gt;`getParsedValue()` performs simple string substitution of `{{$context.data.fieldName}}` placeholders with values from the workflow trigger data. No escaping, quoting, or parameterized binding is applied.&lt;/p&gt;
&lt;p&gt;When an admin creates a SQL node with a template like:
```sql
SELECT * FROM users WHERE nickname = &amp;#39;{{$context.data.nickname}}&amp;#39;
```&lt;/p&gt;
&lt;p&gt;Any user who triggers the workflow with a crafted value can break out of the string literal and inject arbitrary SQL.&lt;/p&gt;
&lt;p&gt;## Proof of Concept&lt;/p&gt;
&lt;p&gt;1. Login as admin
2. Create a collection-trigger workflow on the `users` table (mode: after create)
3. Add a SQL node with:
```sql…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; npm: @nocobase/plugin-workflow-sql&lt;/p&gt;
&lt;p&gt;## Summary&lt;/p&gt;
&lt;p&gt;NocoBase &amp;lt;= 2.0.8 `plugin-workflow-sql` substitutes template variables directly into raw SQL strings via `getParsedValue()` without parameterization or escaping. Any user who triggers a workflow containing a SQL node with template variables from user-controlled data can inject arbitrary SQL.&lt;/p&gt;
&lt;p&gt;## Affected Versions&lt;/p&gt;
&lt;p&gt;- Affected: all versions through 2.0.8&lt;/p&gt;
&lt;p&gt;## Details&lt;/p&gt;
&lt;p&gt;The `SQLInstruction` in `packages/plugins/@nocobase/plugin-workflow-sql/src/server/SQLInstruction.ts` line 28 processes SQL templates:&lt;/p&gt;
&lt;p&gt;```typescript
// SQLInstruction.ts:28
const sql = processor.getParsedValue(node.config.sql || &amp;#39;&amp;#39;, node.id).trim();
```&lt;/p&gt;
&lt;p&gt;Then executes the resulting string directly:&lt;/p&gt;
&lt;p&gt;```typescript
// SQLInstruction.ts:35
const [result] = await collectionManager.db.sequelize.query(sql, {
  transaction: this.workflow.useDataSourceTransaction(dataSourceName, processor.transaction),
});
```&lt;/p&gt;
&lt;p&gt;`getParsedValue()` performs simple string substitution of `{{$context.data.fieldName}}` placeholders with values from the workflow trigger data. No escaping, quoting, or parameterized binding is applied.&lt;/p&gt;
&lt;p&gt;When an admin creates a SQL node with a template like:
```sql
SELECT * FROM users WHERE nickname = &amp;#39;{{$context.data.nickname}}&amp;#39;
```&lt;/p&gt;
&lt;p&gt;Any user who triggers the workflow with a crafted value can break out of the string literal and inject arbitrary SQL.&lt;/p&gt;
&lt;p&gt;## Proof of Concept&lt;/p&gt;
&lt;p&gt;1. Login as admin
2. Create a collection-trigger workflow on the `users` table (mode: after create)
3. Add a SQL node with:
```sql…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/ghsa-vx58-fwwq-5g8j</guid>
    </item>
  </channel>
</rss>
