<?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>Sat, 17 Oct 2026 16:10:19 +0000</lastBuildDate>
    <item>
      <title>EUVD-2026-277675</title>
      <link>https://cve.radiocsirt.org/vuln/euvd-2026-277675</link>
      <description>EUVD-2026-277675</description>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/euvd-2026-277675</guid>
    </item>
    <item>
      <title>fkie_cve-2026-33468</title>
      <link>https://cve.radiocsirt.org/vuln/fkie_cve-2026-33468</link>
      <description>&lt;p&gt;Kysely is a type-safe TypeScript SQL query builder. Prior to version 0.28.14, Kysely&amp;#39;s `DefaultQueryCompiler.sanitizeStringLiteral()` only escapes single quotes by doubling them (`&amp;#39;` → `&amp;#39;&amp;#39;`) but does not escape backslashes. When used with the MySQL dialect (where `NO_BACKSLASH_ESCAPES` is OFF by default), an attacker can use a backslash to escape the trailing quote of a string literal, breaking out of the string context and injecting arbitrary SQL. This affects any code path that uses `ImmediateValueTransformer` to inline values — specifically `CreateIndexBuilder.where()` and `CreateViewBuilder.as()`. Version 0.28.14 contains a fix.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;Kysely is a type-safe TypeScript SQL query builder. Prior to version 0.28.14, Kysely&amp;#39;s `DefaultQueryCompiler.sanitizeStringLiteral()` only escapes single quotes by doubling them (`&amp;#39;` → `&amp;#39;&amp;#39;`) but does not escape backslashes. When used with the MySQL dialect (where `NO_BACKSLASH_ESCAPES` is OFF by default), an attacker can use a backslash to escape the trailing quote of a string literal, breaking out of the string context and injecting arbitrary SQL. This affects any code path that uses `ImmediateValueTransformer` to inline values — specifically `CreateIndexBuilder.where()` and `CreateViewBuilder.as()`. Version 0.28.14 contains a fix.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/fkie_cve-2026-33468</guid>
    </item>
    <item>
      <title>GHSA-8cpq-38p9-67gx — Kysely has a MySQL SQL Injection via Insufficient Backslash Escaping in `sql.lit(string)` usage or similar methods that…</title>
      <link>https://cve.radiocsirt.org/vuln/ghsa-8cpq-38p9-67gx</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; npm: kysely&lt;/p&gt;
&lt;p&gt;## Summary&lt;/p&gt;
&lt;p&gt;Kysely&amp;#39;s `DefaultQueryCompiler.sanitizeStringLiteral()` only escapes single quotes by doubling them (`&amp;#39;` → `&amp;#39;&amp;#39;`) but does not escape backslashes. When used with the MySQL dialect (where `NO_BACKSLASH_ESCAPES` is OFF by default), an attacker can use a backslash to escape the trailing quote of a string literal, breaking out of the string context and injecting arbitrary SQL. This affects any code path that uses `ImmediateValueTransformer` to inline values — specifically `CreateIndexBuilder.where()` and `CreateViewBuilder.as()`.&lt;/p&gt;
&lt;p&gt;## Details&lt;/p&gt;
&lt;p&gt;The root cause is in `DefaultQueryCompiler.sanitizeStringLiteral()`:&lt;/p&gt;
&lt;p&gt;**`src/query-compiler/default-query-compiler.ts:1819-1821`**
```typescript
protected sanitizeStringLiteral(value: string): string {
  return value.replace(LIT_WRAP_REGEX, &amp;#34;&amp;#39;&amp;#39;&amp;#34;)
}
```&lt;/p&gt;
&lt;p&gt;Where `LIT_WRAP_REGEX` is defined as `/&amp;#39;/g` (line 121). This only doubles single quotes — it does not escape backslash characters.&lt;/p&gt;
&lt;p&gt;The function is called from `appendStringLiteral()` which wraps the sanitized value in single quotes:&lt;/p&gt;
&lt;p&gt;**`src/query-compiler/default-query-compiler.ts:1841-1845`**
```typescript
protected appendStringLiteral(value: string): void {
  this.append(&amp;#34;&amp;#39;&amp;#34;)
  this.append(this.sanitizeStringLiteral(value))
  this.append(&amp;#34;&amp;#39;&amp;#34;)
}
```&lt;/p&gt;
&lt;p&gt;This is reached when `visitValue()` encounters an immediate value node (line 525-527), which is created by `ImmediateValueTransformer` used in `CreateIndexBuilder.where()`:&lt;/p&gt;
&lt;p&gt;**`src/schema/create-index-builder.ts:266-278`**
```typesc…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; npm: kysely&lt;/p&gt;
&lt;p&gt;## Summary&lt;/p&gt;
&lt;p&gt;Kysely&amp;#39;s `DefaultQueryCompiler.sanitizeStringLiteral()` only escapes single quotes by doubling them (`&amp;#39;` → `&amp;#39;&amp;#39;`) but does not escape backslashes. When used with the MySQL dialect (where `NO_BACKSLASH_ESCAPES` is OFF by default), an attacker can use a backslash to escape the trailing quote of a string literal, breaking out of the string context and injecting arbitrary SQL. This affects any code path that uses `ImmediateValueTransformer` to inline values — specifically `CreateIndexBuilder.where()` and `CreateViewBuilder.as()`.&lt;/p&gt;
&lt;p&gt;## Details&lt;/p&gt;
&lt;p&gt;The root cause is in `DefaultQueryCompiler.sanitizeStringLiteral()`:&lt;/p&gt;
&lt;p&gt;**`src/query-compiler/default-query-compiler.ts:1819-1821`**
```typescript
protected sanitizeStringLiteral(value: string): string {
  return value.replace(LIT_WRAP_REGEX, &amp;#34;&amp;#39;&amp;#39;&amp;#34;)
}
```&lt;/p&gt;
&lt;p&gt;Where `LIT_WRAP_REGEX` is defined as `/&amp;#39;/g` (line 121). This only doubles single quotes — it does not escape backslash characters.&lt;/p&gt;
&lt;p&gt;The function is called from `appendStringLiteral()` which wraps the sanitized value in single quotes:&lt;/p&gt;
&lt;p&gt;**`src/query-compiler/default-query-compiler.ts:1841-1845`**
```typescript
protected appendStringLiteral(value: string): void {
  this.append(&amp;#34;&amp;#39;&amp;#34;)
  this.append(this.sanitizeStringLiteral(value))
  this.append(&amp;#34;&amp;#39;&amp;#34;)
}
```&lt;/p&gt;
&lt;p&gt;This is reached when `visitValue()` encounters an immediate value node (line 525-527), which is created by `ImmediateValueTransformer` used in `CreateIndexBuilder.where()`:&lt;/p&gt;
&lt;p&gt;**`src/schema/create-index-builder.ts:266-278`**
```typesc…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/ghsa-8cpq-38p9-67gx</guid>
    </item>
  </channel>
</rss>
