<?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://db.gcve.eu/rss/recent/all/10</id>
  <title>Most recent entries from all</title>
  <updated>2026-10-01T20:44:20.373657+00:00</updated>
  <author>
    <name>Vulnerability-Lookup</name>
    <email>info@gcve.eu</email>
  </author>
  <link href="https://db.gcve.eu" 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://db.gcve.eu/vuln/fkie_cve-2026-58270</id>
    <title>fkie_cve-2026-58270</title>
    <updated>2026-10-01T20:44:20.408787+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml">
        <p>Sync-in Server is an open-source platform for file storage, sharing, collaboration, and syncing. Prior to version 2.4.0, the sync diff endpoint compiles a user-supplied string into a `RegExp` with no complexity validation. A catastrophic-backtracking pattern (e.g. `^(a+)+b`) blocks the Node.js event loop, making the entire server unresponsive to all users until the container is restarted. Version 2.4.0 patches the issue.</p>
      </div>
    </content>
    <link href="https://db.gcve.eu/vuln/fkie_cve-2026-58270"/>
  </entry>
  <entry>
    <id>https://db.gcve.eu/vuln/ghsa-jx63-h26r-8cph</id>
    <title>GHSA-jx63-h26r-8cph — Sync-in Server has a ReDoS via Unsanitized Regex in Sync Diff `pathFilters`</title>
    <updated>2026-10-01T20:44:20.409267+00:00</updated>
    <content type="xhtml">
      <div xmlns="http://www.w3.org/1999/xhtml"><p><strong>Affected:</strong> npm: @sync-in/server</p>
<p>**Affected component:** Sync-in Server v2.3.0, `POST /api/app/sync/operation/diff/:id`, vulnerable implementation of `pathFilters` in `backend/src/applications/sync/dtos/sync-operations.dto.ts`.</p>
<p>## Summary</p>
<p>In the vulnerable version, the sync diff endpoint accepted a user-controlled regex pattern through `pathFilters` and compiled it into a `RegExp` without complexity validation. The resulting regex was then executed synchronously against relative file paths during diff generation.</p>
<p>A catastrophic-backtracking pattern, such as `^(a+)+b`, can block the affected Node.js event loop when evaluated against a worst-case path shape. In a single-process deployment, this can make the server unavailable to other users while the regex evaluation is running. Repeated malicious requests can sustain the denial of service.</p>
<p>## Details</p>
<p>`SyncDiffDto` transformed user input directly into a `RegExp` without validating regex complexity:
```typescript
// backend/src/applications/sync/dtos/sync-operations.dto.ts
@IsOptional()
@Transform(({ value }) =&gt; (typeof value === 'string' &amp;&amp; value.length &gt; 0 ? new RegExp(value, 'i') : null))
pathFilters?: RegExp = null
```
The compiled regex was then executed synchronously during sync diff traversal:
```typescript
// backend/src/applications/sync/services/sync-manager.service.ts
if (ctx.syncDiff.pathFilters &amp;&amp; ctx.syncDiff.pathFilters.test(filePath)) {
```
Because `.test()` is synchronous, a catastrophic-backtracking pattern can block the Node.js event lo…</p></div>
    </content>
    <link href="https://db.gcve.eu/vuln/ghsa-jx63-h26r-8cph"/>
  </entry>
</feed>
