<?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://db.gcve.eu</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>Mon, 12 Oct 2026 12:54:13 +0000</lastBuildDate>
    <item>
      <title>fkie_cve-2026-57458</title>
      <link>https://db.gcve.eu/vuln/fkie_cve-2026-57458</link>
      <description>&lt;p&gt;Vikunja is an open-source self-hosted task management platform. In version 2.3.0, a scoped API token limited to the `oauth.authorize` permission can call `POST /api/v1/oauth/authorize`, obtain an OAuth authorization code, and exchange the code at `POST /api/v1/oauth/token` for a normal bearer JSON Web Token (JWT) and refresh token. The resulting credentials are not restricted by the original API token&amp;#39;s permissions, allowing access to routes outside its declared scope for the same user. Version 2.4.0 fixes the vulnerability.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;Vikunja is an open-source self-hosted task management platform. In version 2.3.0, a scoped API token limited to the `oauth.authorize` permission can call `POST /api/v1/oauth/authorize`, obtain an OAuth authorization code, and exchange the code at `POST /api/v1/oauth/token` for a normal bearer JSON Web Token (JWT) and refresh token. The resulting credentials are not restricted by the original API token&amp;#39;s permissions, allowing access to routes outside its declared scope for the same user. Version 2.4.0 fixes the vulnerability.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://db.gcve.eu/vuln/fkie_cve-2026-57458</guid>
    </item>
    <item>
      <title>GHSA-v3p6-34mc-hj7v — Vikunja: Scoped API token can mint unrestricted OAuth session credentials</title>
      <link>https://db.gcve.eu/vuln/ghsa-v3p6-34mc-hj7v</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Go: code.vikunja.io/api&lt;/p&gt;
&lt;p&gt;## Summary&lt;/p&gt;
&lt;p&gt;A scoped API token can bypass its declared permissions by using the OAuth authorization flow to mint normal session credentials.&lt;/p&gt;
&lt;p&gt;A token limited to:&lt;/p&gt;
&lt;p&gt;```json
{&amp;#34;oauth&amp;#34;:[&amp;#34;authorize&amp;#34;]}
```&lt;/p&gt;
&lt;p&gt;can call `/api/v1/oauth/authorize`, receive an OAuth authorization code, exchange it at `/api/v1/oauth/token`, and obtain a normal bearer JWT plus refresh token. The resulting credentials are not restricted by the original API-token permissions.&lt;/p&gt;
&lt;p&gt;## Affected Component&lt;/p&gt;
&lt;p&gt;* Scoped API tokens
* OAuth authorization flow
* `POST /api/v1/oauth/authorize`
* `POST /api/v1/oauth/token`&lt;/p&gt;
&lt;p&gt;## Impact&lt;/p&gt;
&lt;p&gt;A narrowly scoped API token with only `oauth.authorize` can be converted into normal session credentials for the same user.&lt;/p&gt;
&lt;p&gt;This bypasses the intended API-token permission boundary. An attacker who obtains or is delegated such a limited token can mint a normal JWT and refresh token, then access routes outside the original token scope.&lt;/p&gt;
&lt;p&gt;Runtime validation showed that the original scoped token could not access `GET /api/v1/user`, but the minted OAuth access token could access:&lt;/p&gt;
&lt;p&gt;* `GET /api/v1/user`
* `GET /api/v1/projects`&lt;/p&gt;
&lt;p&gt;No cross-user access, privilege escalation to admin, or access to another account was validated.&lt;/p&gt;
&lt;p&gt;## Technical Details&lt;/p&gt;
&lt;p&gt;The issue is caused by an authentication-context mismatch between scoped API-token authentication and OAuth authorization-code issuance.&lt;/p&gt;
&lt;p&gt;The vulnerable chain is:&lt;/p&gt;
&lt;p&gt;1. A scoped API token authenticates the request and sets the current user context.
2. `/api/v1/…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Go: code.vikunja.io/api&lt;/p&gt;
&lt;p&gt;## Summary&lt;/p&gt;
&lt;p&gt;A scoped API token can bypass its declared permissions by using the OAuth authorization flow to mint normal session credentials.&lt;/p&gt;
&lt;p&gt;A token limited to:&lt;/p&gt;
&lt;p&gt;```json
{&amp;#34;oauth&amp;#34;:[&amp;#34;authorize&amp;#34;]}
```&lt;/p&gt;
&lt;p&gt;can call `/api/v1/oauth/authorize`, receive an OAuth authorization code, exchange it at `/api/v1/oauth/token`, and obtain a normal bearer JWT plus refresh token. The resulting credentials are not restricted by the original API-token permissions.&lt;/p&gt;
&lt;p&gt;## Affected Component&lt;/p&gt;
&lt;p&gt;* Scoped API tokens
* OAuth authorization flow
* `POST /api/v1/oauth/authorize`
* `POST /api/v1/oauth/token`&lt;/p&gt;
&lt;p&gt;## Impact&lt;/p&gt;
&lt;p&gt;A narrowly scoped API token with only `oauth.authorize` can be converted into normal session credentials for the same user.&lt;/p&gt;
&lt;p&gt;This bypasses the intended API-token permission boundary. An attacker who obtains or is delegated such a limited token can mint a normal JWT and refresh token, then access routes outside the original token scope.&lt;/p&gt;
&lt;p&gt;Runtime validation showed that the original scoped token could not access `GET /api/v1/user`, but the minted OAuth access token could access:&lt;/p&gt;
&lt;p&gt;* `GET /api/v1/user`
* `GET /api/v1/projects`&lt;/p&gt;
&lt;p&gt;No cross-user access, privilege escalation to admin, or access to another account was validated.&lt;/p&gt;
&lt;p&gt;## Technical Details&lt;/p&gt;
&lt;p&gt;The issue is caused by an authentication-context mismatch between scoped API-token authentication and OAuth authorization-code issuance.&lt;/p&gt;
&lt;p&gt;The vulnerable chain is:&lt;/p&gt;
&lt;p&gt;1. A scoped API token authenticates the request and sets the current user context.
2. `/api/v1/…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://db.gcve.eu/vuln/ghsa-v3p6-34mc-hj7v</guid>
    </item>
  </channel>
</rss>
