CVE-2026-33488
Received Received - Intake
Weak RSA Key and Unauthenticated Endpoints in WWBN AVideo PGP 2FA

Publication date: 2026-03-23

Last updated on: 2026-03-24

Assigner: GitHub, Inc.

Description
WWBN AVideo is an open source video platform. In versions up to and including 26.0, the `createKeys()` function in the LoginControl plugin's PGP 2FA system generates 512-bit RSA keys, which have been publicly factorable since 1999. An attacker who obtains a target user's public key can factor the 512-bit RSA modulus on commodity hardware in hours, derive the complete private key, and decrypt any PGP 2FA challenge issued by the system β€” completely bypassing the second authentication factor. Additionally, the `generateKeys.json.php` and `encryptMessage.json.php` endpoints lack any authentication checks, exposing CPU-intensive key generation to anonymous users. Commit 00d979d87f8182095c8150609153a43f834e351e contains a patch.
CVSS Scores
EPSS Scores
Probability:
Percentile:
Meta Information
Published
2026-03-23
Last Modified
2026-03-24
Generated
2026-05-27
AI Q&A
2026-03-23
EPSS Evaluated
2026-05-25
NVD
Affected Vendors & Products
Showing 1 associated CPE
Vendor Product Version / Range
wwbn avideo to 26.0 (inc)
Helpful Resources
Exploitability
CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-326 The product stores or transmits sensitive data using an encryption scheme that is theoretically sound, but is not strong enough for the level of protection required.
Attack-Flow Graph
AI Powered Q&A
How can this vulnerability impact me? :

[{'type': 'paragraph', 'content': 'This vulnerability can have serious impacts including:'}, {'type': 'list_item', 'content': "Account Takeover: Attackers who have a user's password can bypass the 2FA protection by factoring the weak RSA keys, leading to full compromise of the user's account."}, {'type': 'list_item', 'content': 'Denial of Service: Because the key generation and encryption endpoints lack authentication, attackers can abuse these endpoints to perform CPU-intensive operations anonymously, potentially degrading or disrupting service availability.'}, {'type': 'list_item', 'content': 'Exposure of all users who enabled PGP 2FA with the built-in key generator to these risks, while users who imported stronger keys are still vulnerable to denial-of-service abuse.'}] [1]


How does this vulnerability affect compliance with common standards and regulations (like GDPR, HIPAA)?:

I don't know


Can you explain this vulnerability to me?

[{'type': 'paragraph', 'content': "CVE-2026-33488 affects the WWBN AVideo platform's LoginControl plugin, specifically its PGP-based two-factor authentication (2FA) system. The vulnerability arises because the system generates weak 512-bit RSA keys for 2FA, which have been publicly factorable since 1999. An attacker who obtains a user's public key can factor the RSA modulus in hours using commodity hardware, reconstruct the private key, and decrypt the 2FA challenge. This allows the attacker to bypass the second authentication factor entirely."}, {'type': 'paragraph', 'content': 'Additionally, two endpoints, generateKeys.json.php and encryptMessage.json.php, lack authentication checks, allowing anonymous users to trigger CPU-intensive cryptographic operations. This can be exploited to cause denial-of-service (DoS) attacks by exhausting server resources.'}] [1]


How can this vulnerability be detected on my network or system? Can you suggest some commands?

[{'type': 'paragraph', 'content': "This vulnerability can be detected by identifying the use of weak 512-bit RSA keys generated by the createKeys() function in the LoginControl plugin's PGP 2FA system. Specifically, you can check if users have 512-bit RSA public keys stored in the database under the key `PGPKey` in the users_externalOptions table."}, {'type': 'paragraph', 'content': 'To detect the vulnerability, you can extract the RSA public keys and check their key size. If the modulus is 512 bits, the system is vulnerable.'}, {'type': 'paragraph', 'content': 'Suggested commands and steps include:'}, {'type': 'list_item', 'content': 'Query the database to retrieve stored PGP public keys for users.'}, {'type': 'list_item', 'content': 'Use GPG or Python libraries to extract the RSA modulus from the public key.'}, {'type': 'list_item', 'content': 'Check the key size of the RSA modulus; if it is 512 bits, it is vulnerable.'}, {'type': 'list_item', 'content': 'Monitor network traffic for unauthenticated access attempts to the endpoints `generateKeys.json.php` and `encryptMessage.json.php`, which are vulnerable to abuse.'}] [1]


What immediate steps should I take to mitigate this vulnerability?

Immediate mitigation steps include:

  • Upgrade the RSA key size used in the createKeys() function from 512 bits to at least 2048 bits to ensure cryptographic strength.
  • Apply authentication checks to the endpoints `generateKeys.json.php` and `encryptMessage.json.php` to prevent unauthenticated users from triggering CPU-intensive cryptographic operations.
  • Enforce minimum key size validation in the system to reject any RSA keys smaller than 2048 bits before saving.

These steps have been implemented in commit 00d979d87f8182095c8150609153a43f834e351e, which patches the vulnerability by increasing key size and adding authentication requirements.


Ask Our AI Assistant
Need more information? Ask your question to get an AI reply (Powered by our expertise)
0/70
EPSS Chart