<?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>Wed, 14 Oct 2026 14:12:32 +0000</lastBuildDate>
    <item>
      <title>EUVD-2026-280225</title>
      <link>https://cve.radiocsirt.org/vuln/euvd-2026-280225</link>
      <description>EUVD-2026-280225</description>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/euvd-2026-280225</guid>
    </item>
    <item>
      <title>fkie_cve-2026-29782</title>
      <link>https://cve.radiocsirt.org/vuln/fkie_cve-2026-29782</link>
      <description>&lt;p&gt;OpenSTAManager is an open source management software for technical assistance and invoicing. Prior to version 2.10.2, the oauth2.php file in OpenSTAManager is an unauthenticated endpoint ($skip_permissions = true). It loads a record from the zz_oauth2 table using the attacker-controlled GET parameter state, and during the OAuth2 configuration flow calls unserialize() on the access_token field without any class restriction. This issue has been patched in version 2.10.2.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;OpenSTAManager is an open source management software for technical assistance and invoicing. Prior to version 2.10.2, the oauth2.php file in OpenSTAManager is an unauthenticated endpoint ($skip_permissions = true). It loads a record from the zz_oauth2 table using the attacker-controlled GET parameter state, and during the OAuth2 configuration flow calls unserialize() on the access_token field without any class restriction. This issue has been patched in version 2.10.2.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/fkie_cve-2026-29782</guid>
    </item>
    <item>
      <title>GHSA-whv5-4q2f-q68g — OpenSTAManager Affected by Remote Code Execution via Insecure Deserialization in OAuth2</title>
      <link>https://cve.radiocsirt.org/vuln/ghsa-whv5-4q2f-q68g</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Packagist: devcode-it/openstamanager&lt;/p&gt;
&lt;p&gt;## Description&lt;/p&gt;
&lt;p&gt;The `oauth2.php` file in OpenSTAManager is an **unauthenticated** endpoint (`$skip_permissions = true`). It loads a record from the `zz_oauth2` table using the attacker-controlled GET parameter `state`, and during the OAuth2 configuration flow calls `unserialize()` on the `access_token` field **without any class restriction**.&lt;/p&gt;
&lt;p&gt;An attacker who can write to the `zz_oauth2` table (e.g., via the arbitrary SQL injection in the Aggiornamenti module reported in [GHSA-2fr7-cc4f-wh98](https://github.com/devcode-it/openstamanager/security/advisories/GHSA-2fr7-cc4f-wh98)) can insert a malicious serialized PHP object (gadget chain) that upon deserialization executes arbitrary commands on the server as the `www-data` user.&lt;/p&gt;
&lt;p&gt;## Affected code&lt;/p&gt;
&lt;p&gt;### Entry point — `oauth2.php`&lt;/p&gt;
&lt;p&gt;```php
$skip_permissions = true;                              // Line 23: NO AUTHENTICATION
include_once __DIR__.&amp;#39;/core.php&amp;#39;;&lt;/p&gt;
&lt;p&gt;$state = $_GET[&amp;#39;state&amp;#39;];                               // Line 28: attacker-controlled
$code = $_GET[&amp;#39;code&amp;#39;];&lt;/p&gt;
&lt;p&gt;$account = OAuth2::where(&amp;#39;state&amp;#39;, &amp;#39;=&amp;#39;, $state)-&amp;gt;first(); // Line 33: fetches injected record
$response = $account-&amp;gt;configure($code, $state);          // Line 51: triggers the chain
```&lt;/p&gt;
&lt;p&gt;### Deserialization — `src/Models/OAuth2.php`&lt;/p&gt;
&lt;p&gt;```php
// Line 193 (checkTokens):
$access_token = $this-&amp;gt;access_token ? unserialize($this-&amp;gt;access_token) : null;&lt;/p&gt;
&lt;p&gt;// Line 151 (getAccessToken):
return $this-&amp;gt;attributes[&amp;#39;access_token&amp;#39;] ? unserialize($this-&amp;gt;attributes[&amp;#39;access_token&amp;#39;]) : null…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Packagist: devcode-it/openstamanager&lt;/p&gt;
&lt;p&gt;## Description&lt;/p&gt;
&lt;p&gt;The `oauth2.php` file in OpenSTAManager is an **unauthenticated** endpoint (`$skip_permissions = true`). It loads a record from the `zz_oauth2` table using the attacker-controlled GET parameter `state`, and during the OAuth2 configuration flow calls `unserialize()` on the `access_token` field **without any class restriction**.&lt;/p&gt;
&lt;p&gt;An attacker who can write to the `zz_oauth2` table (e.g., via the arbitrary SQL injection in the Aggiornamenti module reported in [GHSA-2fr7-cc4f-wh98](https://github.com/devcode-it/openstamanager/security/advisories/GHSA-2fr7-cc4f-wh98)) can insert a malicious serialized PHP object (gadget chain) that upon deserialization executes arbitrary commands on the server as the `www-data` user.&lt;/p&gt;
&lt;p&gt;## Affected code&lt;/p&gt;
&lt;p&gt;### Entry point — `oauth2.php`&lt;/p&gt;
&lt;p&gt;```php
$skip_permissions = true;                              // Line 23: NO AUTHENTICATION
include_once __DIR__.&amp;#39;/core.php&amp;#39;;&lt;/p&gt;
&lt;p&gt;$state = $_GET[&amp;#39;state&amp;#39;];                               // Line 28: attacker-controlled
$code = $_GET[&amp;#39;code&amp;#39;];&lt;/p&gt;
&lt;p&gt;$account = OAuth2::where(&amp;#39;state&amp;#39;, &amp;#39;=&amp;#39;, $state)-&amp;gt;first(); // Line 33: fetches injected record
$response = $account-&amp;gt;configure($code, $state);          // Line 51: triggers the chain
```&lt;/p&gt;
&lt;p&gt;### Deserialization — `src/Models/OAuth2.php`&lt;/p&gt;
&lt;p&gt;```php
// Line 193 (checkTokens):
$access_token = $this-&amp;gt;access_token ? unserialize($this-&amp;gt;access_token) : null;&lt;/p&gt;
&lt;p&gt;// Line 151 (getAccessToken):
return $this-&amp;gt;attributes[&amp;#39;access_token&amp;#39;] ? unserialize($this-&amp;gt;attributes[&amp;#39;access_token&amp;#39;]) : null…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/ghsa-whv5-4q2f-q68g</guid>
    </item>
  </channel>
</rss>
