🚨 CVE-2026-66917
Joomla Extension - joomgalleryfriends.net - Stored XSS in JoomGallery < 4.4.0 - An authenticated, privileged can store an XSS payload in any image causing JS execution in every visitor's browser.
🎖@cveNotify
Joomla Extension - joomgalleryfriends.net - Stored XSS in JoomGallery < 4.4.0 - An authenticated, privileged can store an XSS payload in any image causing JS execution in every visitor's browser.
🎖@cveNotify
www.joomgalleryfriends.net
JoomGallery friends – Startseite
JoomGallery friends ist die Community, die die Entwicklung und Veröffentlichung der Galerie-Komponente von Joomla! vorantreibt. 🖼️
🚨 CVE-2026-77988
A weakness has been identified in TRENDnet TEW-823DRU 1.1.02b01. This vulnerability affects the function nvram_get of the component CLI Configuration Tool. This manipulation causes command injection. The attack is possible to be carried out remotely. The exploit has been made available to the public and could be used for attacks.
🎖@cveNotify
A weakness has been identified in TRENDnet TEW-823DRU 1.1.02b01. This vulnerability affects the function nvram_get of the component CLI Configuration Tool. This manipulation causes command injection. The attack is possible to be carried out remotely. The exploit has been made available to the public and could be used for attacks.
🎖@cveNotify
GitHub
WAVLINK-WN530H4-Command-Injection-in-set_add_routing/TEW-823DRU_bin_cli_NVRAM_Command_Injection.md at main · dxz0069/WAVLINK-WN530H4…
submit . Contribute to dxz0069/WAVLINK-WN530H4-Command-Injection-in-set_add_routing development by creating an account on GitHub.
🚨 CVE-2026-4244
The Post Duplicator plugin for WordPress is vulnerable to unauthorized modification of data due to a missing capability check on the `duplicate_post()` function in all versions up to, and including, 3.0.11. This is due to the function not verifying that the user has `edit_others_posts` capability before accepting a `selectedAuthorId` parameter via the `duplicate-post` REST endpoint. This makes it possible for authenticated attackers, with Contributor-level access and above, to create duplicated posts attributed to any user, including administrators.
🎖@cveNotify
The Post Duplicator plugin for WordPress is vulnerable to unauthorized modification of data due to a missing capability check on the `duplicate_post()` function in all versions up to, and including, 3.0.11. This is due to the function not verifying that the user has `edit_others_posts` capability before accepting a `selectedAuthorId` parameter via the `duplicate-post` REST endpoint. This makes it possible for authenticated attackers, with Contributor-level access and above, to create duplicated posts attributed to any user, including administrators.
🎖@cveNotify
🚨 CVE-2026-56380
AVideo through commit 9c39d8c8 contains an information exposure vulnerability in feed/index.php that allows unauthenticated attackers to retrieve channel owner email addresses by supplying a public channel name parameter. Attackers can enumerate all creator email addresses by iterating through public channel names and extract them from the itunes:email and itunes:author RSS elements, enabling account takeover attempts and phishing campaigns.
🎖@cveNotify
AVideo through commit 9c39d8c8 contains an information exposure vulnerability in feed/index.php that allows unauthenticated attackers to retrieve channel owner email addresses by supplying a public channel name parameter. Attackers can enumerate all creator email addresses by iterating through public channel names and extract them from the itunes:email and itunes:author RSS elements, enabling account takeover attempts and phishing campaigns.
🎖@cveNotify
GitHub
Exposure of private personal information: `feed/index.php` emits a channel owner's email address into `<itunes:email>` for unauthenticated…
## Summary
`feed/index.php` publishes the email address of any channel owner to unauthenticated callers. When `channelName` is supplied, `feed/index.php:42` loads the owner's full user row and...
`feed/index.php` publishes the email address of any channel owner to unauthenticated callers. When `channelName` is supplied, `feed/index.php:42` loads the owner's full user row and...
🚨 CVE-2026-57944
AVideo through commit 9c39d8c8 contains a cross-site request forgery vulnerability in channelToGallery.json.php that allows attackers to modify site-wide Gallery configuration by performing unauthorized writes to plugin data. Attackers can craft a cross-site GET request carrying an administrator's session cookie to promote arbitrary channels to the front page or delete curated sections without token validation.
🎖@cveNotify
AVideo through commit 9c39d8c8 contains a cross-site request forgery vulnerability in channelToGallery.json.php that allows attackers to modify site-wide Gallery configuration by performing unauthorized writes to plugin data. Attackers can craft a cross-site GET request carrying an administrator's session cookie to promote arbitrary channels to the front page or delete curated sections without token validation.
🎖@cveNotify
GitHub
CSRF: `plugin/Gallery/channelToGallery.json.php` rewrites site-wide front-page configuration with no token, while its sibling …
## Summary
`plugin/Gallery/channelToGallery.json.php` rewrites the site's front-page configuration and its only check is `User::isAdmin()` at `:17`. It reads `$_REQUEST` at `:10-11`, so the wr...
`plugin/Gallery/channelToGallery.json.php` rewrites the site's front-page configuration and its only check is `User::isAdmin()` at `:17`. It reads `$_REQUEST` at `:10-11`, so the wr...
🚨 CVE-2026-57998
better-npm-audit through 3.11.0, and the 4.0.0-rc.2 prerelease, builds its npm audit command by interpolating the user-supplied --registry option into a command string in src/handlers/handleInput.ts without validation or quoting, then passes that string to child_process.exec() in index.ts, which spawns a shell. A registry value containing shell metacharacters such as a semicolon, pipe, or command substitution executes arbitrary operating system commands with the privileges of the process running the audit.
🎖@cveNotify
better-npm-audit through 3.11.0, and the 4.0.0-rc.2 prerelease, builds its npm audit command by interpolating the user-supplied --registry option into a command string in src/handlers/handleInput.ts without validation or quoting, then passes that string to child_process.exec() in index.ts, which spawns a shell. A registry value containing shell metacharacters such as a semicolon, pipe, or command substitution executes arbitrary operating system commands with the privileges of the process running the audit.
🎖@cveNotify
GitHub
GitHub - jeemok/better-npm-audit: The goal of this project is to provide additional features on top of the existing npm audit options
The goal of this project is to provide additional features on top of the existing npm audit options - jeemok/better-npm-audit
🔥1
🚨 CVE-2026-58001
WWBN AVideo through commit 9c39d8c8 contains a cross-site request forgery vulnerability in objects/videoEditLight.php that lacks request authenticity checks and accepts GET requests. Attackers can store an img tag in a video description that transfers video ownership to an attacker-controlled account when an administrator views the video page.
🎖@cveNotify
WWBN AVideo through commit 9c39d8c8 contains a cross-site request forgery vulnerability in objects/videoEditLight.php that lacks request authenticity checks and accepts GET requests. Attackers can store an img tag in a video description that transfers video ownership to an attacker-controlled account when an administrator views the video page.
🎖@cveNotify
GitHub
CSRF: `objects/videoEditLight.php` has no authenticity check and is not a `*.json.php` file, so a stored `<img>` transfers ownership…
## Summary
`objects/videoEditLight.php` has no request-authenticity check of any kind, reads `$_REQUEST`, and can transfer video ownership. It is not a `*.json.php` file, so the automatic guard at...
`objects/videoEditLight.php` has no request-authenticity check of any kind, reads `$_REQUEST`, and can transfer video ownership. It is not a `*.json.php` file, so the automatic guard at...
🚨 CVE-2026-58002
WWBN AVideo through commit 9c39d8c8b4c1f75540788d6b391740852ceb0732 contains an authorization bypass vulnerability in the Users_affiliations add.json.php endpoint that allows authenticated users to forge two-party consent records by supplying the counterparty's agreement timestamp. Attackers can create a forged affiliation with status='a' and then reassign video ownership to arbitrary users through the videoAddNew.json.php endpoint, which trusts the forged affiliation as an authorization term.
🎖@cveNotify
WWBN AVideo through commit 9c39d8c8b4c1f75540788d6b391740852ceb0732 contains an authorization bypass vulnerability in the Users_affiliations add.json.php endpoint that allows authenticated users to forge two-party consent records by supplying the counterparty's agreement timestamp. Attackers can create a forged affiliation with status='a' and then reassign video ownership to arbitrary users through the videoAddNew.json.php endpoint, which trusts the forged affiliation as an authorization term.
🎖@cveNotify
GitHub
Missing authorization: `Users_affiliations/add.json.php` lets one party forge the counterparty's consent, and `videoAddNew.json.php`…
## Summary
`plugin/CustomizeUser/View/Users_affiliations/add.json.php` lets a caller write both sides of a two-party consent record. For a regular user the endpoint pins only the caller's own ...
`plugin/CustomizeUser/View/Users_affiliations/add.json.php` lets a caller write both sides of a two-party consent record. For a regular user the endpoint pins only the caller's own ...
🚨 CVE-2026-58003
WWBN AVideo through commit 9c39d8c8 contains a cross-site request forgery vulnerability in the releaseVideoNow.json.php endpoint that lacks authenticity checks and accepts GET requests. Attackers can craft a malicious cross-site GET request carrying an administrator's session cookie to permanently publish any embargoed video by manipulating the videos_id parameter.
🎖@cveNotify
WWBN AVideo through commit 9c39d8c8 contains a cross-site request forgery vulnerability in the releaseVideoNow.json.php endpoint that lacks authenticity checks and accepts GET requests. Attackers can craft a malicious cross-site GET request carrying an administrator's session cookie to permanently publish any embargoed video by manipulating the videos_id parameter.
🎖@cveNotify
GitHub
CSRF: `plugin/Scheduler/releaseVideoNow.json.php` has no authenticity check and accepts GET, force-publishing any embargoed video…
## Summary
`plugin/Scheduler/releaseVideoNow.json.php` publishes a scheduled video and has no request-authenticity check. The file contains no `forbidIfIsUntrustedRequest()`, no `isTokenValid()` a...
`plugin/Scheduler/releaseVideoNow.json.php` publishes a scheduled video and has no request-authenticity check. The file contains no `forbidIfIsUntrustedRequest()`, no `isTokenValid()` a...
🚨 CVE-2026-59256
WWBN AVideo through commit 9c39d8c8 contains an authorization bypass vulnerability where getToken() creates tokens without binding to user identity or purpose, and plugin/Gallery/view/sections.php issues valid tokens to unauthenticated visitors. Attackers can retrieve a token from the Gallery endpoint and use it to bypass authorization checks in other subsystems like view/hls.php to access restricted video content.
🎖@cveNotify
WWBN AVideo through commit 9c39d8c8 contains an authorization bypass vulnerability where getToken() creates tokens without binding to user identity or purpose, and plugin/Gallery/view/sections.php issues valid tokens to unauthenticated visitors. Attackers can retrieve a token from the Gallery endpoint and use it to bypass authorization checks in other subsystems like view/hls.php to access restricted video content.
🎖@cveNotify
GitHub
Insufficiently protected credentials: `getToken()` binds no subject or purpose and `plugin/Gallery/view/sections.php` mints one…
## Summary
`getToken()` signs no identity and no purpose, and `plugin/Gallery/view/sections.php` hands a valid token to any unauthenticated visitor. `getToken()` places only `$global['salt'...
`getToken()` signs no identity and no purpose, and `plugin/Gallery/view/sections.php` hands a valid token to any unauthenticated visitor. `getToken()` places only `$global['salt'...
🚨 CVE-2026-59808
AVideo through commit 9c39d8c8 contains an authentication bypass vulnerability where deduplicateByEncoderQueueId() returns video_id_hash credentials for any video by encoder_queue_id without ownership verification, and useVideoHashOrLogin() converts this hash into passwordless login as the video owner. Attackers with upload permission can retrieve an administrator's video_id_hash by omitting the videos_id parameter, then use that hash in an unauthenticated request to gain administrative session access and modify system configuration.
🎖@cveNotify
AVideo through commit 9c39d8c8 contains an authentication bypass vulnerability where deduplicateByEncoderQueueId() returns video_id_hash credentials for any video by encoder_queue_id without ownership verification, and useVideoHashOrLogin() converts this hash into passwordless login as the video owner. Attackers with upload permission can retrieve an administrator's video_id_hash by omitting the videos_id parameter, then use that hash in an unauthenticated request to gain administrative session access and modify system configuration.
🎖@cveNotify
GitHub
Authentication bypass: `deduplicateByEncoderQueueId()` returns another user's `video_id_hash`, and `useVideoHashOrLogin()` turns…
## Summary
`objects/aVideoEncoder.json.php` looks a video up by the caller-supplied `encoder_queue_id` and returns that video's `video_id_hash` without checking who owns the video. `Video::get...
`objects/aVideoEncoder.json.php` looks a video up by the caller-supplied `encoder_queue_id` and returns that video's `video_id_hash` without checking who owns the video. `Video::get...
🚨 CVE-2026-59809
SiYuan before v3.8.0 interpolates secret placeholders into the destination URL parameter of the http_request MCP tool, allowing attackers to exfiltrate stored secrets. An MCP client can craft a request with an attacker-controlled URL containing secret placeholders to send plaintext secret values to any public host without confirmation.
🎖@cveNotify
SiYuan before v3.8.0 interpolates secret placeholders into the destination URL parameter of the http_request MCP tool, allowing attackers to exfiltrate stored secrets. An MCP client can craft a request with an attacker-controlled URL containing secret placeholders to send plaintext secret values to any public host without confirmation.
🎖@cveNotify
GitHub
Secret placeholders in the http_request MCP tool are interpolated into the destination URL, enabling exfiltration of stored secrets…
## Summary
`Secrets.Resolve()` substitutes `{{secrets.NAME}}` placeholders with plaintext secret values
wherever it's called. `mcp/tools/http_request.go` applies this substitution to the `u...
`Secrets.Resolve()` substitutes `{{secrets.NAME}}` placeholders with plaintext secret values
wherever it's called. `mcp/tools/http_request.go` applies this substitution to the `u...
🚨 CVE-2026-60083
SiYuan versions before v3.8.0 contain an incomplete path blocklist in the MCP file tool that fails to restrict access to sensitive workspace files protected by the HTTP API. Authenticated administrators can read plaintext publish-mode passwords from data/.siyuan/publishAccess.json and access other sensitive files like data/templates and data/snippets/conf.json.
🎖@cveNotify
SiYuan versions before v3.8.0 contain an incomplete path blocklist in the MCP file tool that fails to restrict access to sensitive workspace files protected by the HTTP API. Authenticated administrators can read plaintext publish-mode passwords from data/.siyuan/publishAccess.json and access other sensitive files like data/templates and data/snippets/conf.json.
🎖@cveNotify
GitHub
Title: MCP file tool's blocklist is incomplete relative to the HTTP file API it claims to align with, exposing publish-mode passwords…
## Summary
`kernel/mcp/tools/file.go`'s `resolvePath()` includes an explicit comment stating its
sensitive-path blocklist is meant to align with the HTTP file API's established blacklis...
`kernel/mcp/tools/file.go`'s `resolvePath()` includes an explicit comment stating its
sensitive-path blocklist is meant to align with the HTTP file API's established blacklis...
🚨 CVE-2026-60084
SiYuan versions before v3.7.4 contain an arbitrary file deletion vulnerability in the /api/search/removeTemplate endpoint that accepts an unvalidated path parameter passed directly to os.RemoveAll. Authenticated admin attackers can supply absolute filesystem paths to recursively delete any file or directory the kernel process has permission to remove, anywhere on the host filesystem.
🎖@cveNotify
SiYuan versions before v3.7.4 contain an arbitrary file deletion vulnerability in the /api/search/removeTemplate endpoint that accepts an unvalidated path parameter passed directly to os.RemoveAll. Authenticated admin attackers can supply absolute filesystem paths to recursively delete any file or directory the kernel process has permission to remove, anywhere on the host filesystem.
🎖@cveNotify
GitHub
Unrestricted arbitrary file/directory deletion via /api/search/removeTemplate: the client-supplied "path" parameter is passed directly…
Checked against the public advisory database before drafting: distinct
from GHSA-8fx8-pffw-w498/CVE-2025-21609 (`/api/history/getDocHistoryContent`,
different endpoint, fixed long ago) and from t...
from GHSA-8fx8-pffw-w498/CVE-2025-21609 (`/api/history/getDocHistoryContent`,
different endpoint, fixed long ago) and from t...
🚨 CVE-2026-62204
SiYuan versions before v3.7.4 fail to validate that packageName matches the downloaded package content in bazaar install endpoints. Attackers with same-origin access can overwrite existing trusted plugins by supplying mismatched packageName and repoURL parameters, achieving persistence across application restarts.
🎖@cveNotify
SiYuan versions before v3.7.4 fail to validate that packageName matches the downloaded package content in bazaar install endpoints. Attackers with same-origin access can overwrite existing trusted plugins by supplying mismatched packageName and repoURL parameters, achieving persistence across application restarts.
🎖@cveNotify
GitHub
Missing consistency check between packageName and repoURL/repoHash in bazaar package install allows overwriting an existing, trusted…
## Summary
`installBazaarPlugin` (and the equivalent endpoints for widgets/icons/templates/themes) accept
`packageName`, `repoURL`, and `repoHash` as independent request fields with no validati...
`installBazaarPlugin` (and the equivalent endpoints for widgets/icons/templates/themes) accept
`packageName`, `repoURL`, and `repoHash` as independent request fields with no validati...
🚨 CVE-2026-62243
Netty (io.netty:netty-handler) versions from 4.2.0.Final through 4.2.16.Final and versions through 4.1.136.Final disable TLS hostname verification on the SslProvider.OPENSSL client path when a plain (non-extended) X509TrustManager is used and Unsafe-based trust-manager wrapping is unavailable (Java 25+). In this configuration the OpenSSL client does not perform hostname verification, allowing a man-in-the-middle attacker to present a certificate issued for a different hostname that is accepted without validation. Fixed in 4.2.17.Final and 4.1.137.Final.
🎖@cveNotify
Netty (io.netty:netty-handler) versions from 4.2.0.Final through 4.2.16.Final and versions through 4.1.136.Final disable TLS hostname verification on the SslProvider.OPENSSL client path when a plain (non-extended) X509TrustManager is used and Unsafe-based trust-manager wrapping is unavailable (Java 25+). In this configuration the OpenSSL client does not perform hostname verification, allowing a man-in-the-middle attacker to present a certificate issued for a different hostname that is accepted without validation. Fixed in 4.2.17.Final and 4.1.137.Final.
🎖@cveNotify
GitHub
Hostname verification disabled on the OpenSSL client path when trust-manager wrapping is unavailable (Java 25+)
### Summary
The CVE-2026-50010 fix relies on JDK-internal wrapping to add hostname verification to a plain `X509TrustManager`. On the `SslProvider.OPENSSL` path that wrapping comes from an `Unsafe...
The CVE-2026-50010 fix relies on JDK-internal wrapping to add hostname verification to a plain `X509TrustManager`. On the `SslProvider.OPENSSL` path that wrapping comes from an `Unsafe...
🚨 CVE-2026-62380
Netty (io.netty:netty-codec-socks) versions 4.2.0.Final through 4.2.16.Final and 4.1.x through 4.1.136.Final contain null byte, CRLF, and credential injection vulnerabilities in the SOCKS4 (Socks4ClientEncoder) and SOCKS5 (Socks5ClientEncoder) client encoders, which fail to validate domain address and authentication (username/password) fields. An attacker able to control these fields can inject null bytes or CRLF characters to truncate or alter values, potentially enabling domain spoofing, SOCKS4 userid truncation, authentication data injection, and protocol confusion. Fixed in 4.2.17.Final and 4.1.137.Final.
🎖@cveNotify
Netty (io.netty:netty-codec-socks) versions 4.2.0.Final through 4.2.16.Final and 4.1.x through 4.1.136.Final contain null byte, CRLF, and credential injection vulnerabilities in the SOCKS4 (Socks4ClientEncoder) and SOCKS5 (Socks5ClientEncoder) client encoders, which fail to validate domain address and authentication (username/password) fields. An attacker able to control these fields can inject null bytes or CRLF characters to truncate or alter values, potentially enabling domain spoofing, SOCKS4 userid truncation, authentication data injection, and protocol confusion. Fixed in 4.2.17.Final and 4.1.137.Final.
🎖@cveNotify
GitHub
SOCKS4/5 Proxy Encoder Null Byte and Credential Injection
# Security Vulnerability Report: SOCKS4/5 Proxy Encoder Null Byte and Credential Injection in Netty
## 1. Vulnerability Summary
| Field | Value |
|-------|-------|
| **Product** | Netty |
...
## 1. Vulnerability Summary
| Field | Value |
|-------|-------|
| **Product** | Netty |
...
🚨 CVE-2026-62381
luci-lib-px5g (LuCI) contains a heap-based buffer overflow in the native ASN.1 encoding routine asn1_add_obj (x509write.c) when signing a certificate with a 2040-bit RSA key. For a 255-byte signature, the BIT STRING allocation is computed from the DER length encoding of 255 bytes, but the payload written after prepending the unused-bits byte is 256 bytes, requiring one additional DER length octet. As a result the allocation is 259 bytes while the tag, length, unused-bits byte, and signature require 260 bytes, and the final memcpy writes one byte beyond the heap buffer. The overflow is reachable through the exported Lua interface via create_selfsigned(); whether it is remotely exploitable depends on the embedding application. The vulnerable code is present on the openwrt-18.06 through openwrt-25.12 release branches and is absent from master, where the luci-lib-px5g package has been removed rather than patched.
🎖@cveNotify
luci-lib-px5g (LuCI) contains a heap-based buffer overflow in the native ASN.1 encoding routine asn1_add_obj (x509write.c) when signing a certificate with a 2040-bit RSA key. For a 255-byte signature, the BIT STRING allocation is computed from the DER length encoding of 255 bytes, but the payload written after prepending the unused-bits byte is 256 bytes, requiring one additional DER length octet. As a result the allocation is 259 bytes while the tag, length, unused-bits byte, and signature require 260 bytes, and the final memcpy writes one byte beyond the heap buffer. The overflow is reachable through the exported Lua interface via create_selfsigned(); whether it is remotely exploitable depends on the embedding application. The vulnerable code is present on the openwrt-18.06 through openwrt-25.12 release branches and is absent from master, where the luci-lib-px5g package has been removed rather than patched.
🎖@cveNotify
GitHub
2040-bit certificate signing causes a heap buffer overflow in `luci-lib-px5g`
## Summary
The native `luci-lib-px5g` Lua module underallocates an ASN.1 BIT STRING when signing a certificate with a 2040-bit RSA key. The resulting signature is 255 bytes. `asn1_add_obj()` cal...
The native `luci-lib-px5g` Lua module underallocates an ASN.1 BIT STRING when signing a certificate with a 2040-bit RSA key. The resulting signature is 255 bytes. `asn1_add_obj()` cal...
🚨 CVE-2026-62382
PasswordPusher versions v1.45.11 through v2.9.5 contain an improper authorization vulnerability in the push deletion logic. The ownership check compares @push.user against current_user; for an anonymously created push both values are nil, and Ruby evaluates nil == nil as true, so the check passes and the deletable_by_viewer restriction is never enforced. An attacker who knows only the secret URL can permanently delete an anonymous push even when the creator disabled viewer deletion and even without the passphrase. Only deployments that allow anonymous pushes (the default) are affected. The issue is fixed in v2.9.6.
🎖@cveNotify
PasswordPusher versions v1.45.11 through v2.9.5 contain an improper authorization vulnerability in the push deletion logic. The ownership check compares @push.user against current_user; for an anonymously created push both values are nil, and Ruby evaluates nil == nil as true, so the check passes and the deletable_by_viewer restriction is never enforced. An attacker who knows only the secret URL can permanently delete an anonymous push even when the creator disabled viewer deletion and even without the passphrase. Only deployments that allow anonymous pushes (the default) are affected. The issue is fixed in v2.9.6.
🎖@cveNotify
GitHub
Improper Authorization Allows Unauthenticated Destruction Of Shared Secrets
# Improper Authorization Allows Unauthenticated Destruction Of Shared Secrets
## Summary
The ownership check that guards push deletion compares `@push.user` against
`current_user`. For a pus...
## Summary
The ownership check that guards push deletion compares `@push.user` against
`current_user`. For a pus...
🚨 CVE-2026-2996
The Advanced Product Fields (Product Addons) for WooCommerce plugin for WordPress is vulnerable to Improper Input Validation in all versions up to, and including, 1.6.21. This is due to a logic flaw in the 'validate_cart_data' function. This makes it possible for unauthenticated attackers to bypass required paid addons and complete purchases at the base product price only, effectively stealing products by paying a fraction of the intended total. The vulnerability was partially patched in version 1.6.19.
🎖@cveNotify
The Advanced Product Fields (Product Addons) for WooCommerce plugin for WordPress is vulnerable to Improper Input Validation in all versions up to, and including, 1.6.21. This is due to a logic flaw in the 'validate_cart_data' function. This makes it possible for unauthenticated attackers to bypass required paid addons and complete purchases at the base product price only, effectively stealing products by paying a fraction of the intended total. The vulnerability was partially patched in version 1.6.19.
🎖@cveNotify
🚨 CVE-2026-4559
The Image Photo Gallery Final Tiles Grid plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'delay' shortcode attribute in all versions up to, and including, 3.6.12 due to insufficient input sanitization and output escaping. This makes it possible for authenticated attackers, with Contributor-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.
🎖@cveNotify
The Image Photo Gallery Final Tiles Grid plugin for WordPress is vulnerable to Stored Cross-Site Scripting via the 'delay' shortcode attribute in all versions up to, and including, 3.6.12 due to insufficient input sanitization and output escaping. This makes it possible for authenticated attackers, with Contributor-level access and above, to inject arbitrary web scripts in pages that will execute whenever a user accesses an injected page.
🎖@cveNotify