# Post Carousel <= 4.0.8 - Unauthenticated Password-Protected Post Content and Non-Public Post Disclosure via sp_smart_post_block_all_post_query AJAX Action

- **ID:** WPSEC-2026-1455
- **Plugin:** Smart Post – Post Grid, Post Carousel, Post Slider Gutenberg Blocks for Blog & News (`post-carousel`), https://wordpress.org/plugins/post-carousel/
- **Affected versions:** from 4.0.0 before 4.0.9
- **Fixed in:** 4.0.9 (Update to 4.0.9 or later.)
- **Severity:** Medium 5.3 (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N)
- **Weakness:** CWE-200
- **Usage among sites WPSec scans:** plugin Medium, affected versions Medium (as of 2026-10-22)
- **Attack surface analysis:** https://attacksurface.wpsec.com/plugin/post-carousel
- **Fix released:** 2026-10-21
- **Published:** 2026-10-22
- **URL:** https://wpsec.com/vuln/WPSEC-2026-1455/

## Description

The Smart Post plugin for WordPress is vulnerable to Sensitive Information Exposure via the sp_smart_post_block_all_post_query AJAX action in all versions from 4.0.0 up to, and including, 4.0.8. This is due to the action being registered for unauthenticated users with no capability check, accepting arbitrary post types, and returning complete WP_Post objects, including the post_content and post_password fields. The nonce it checks is printed on front-end pages that contain the plugin's blocks. This makes it possible for unauthenticated attackers to read the content and stored passwords of password-protected published posts, and the published entries of non-public post types.

## References

- https://wpsec.com/vuln/WPSEC-2026-1455/
- https://plugins.svn.wordpress.org/post-carousel/tags/4.0.9/
- https://wordpress.org/plugins/post-carousel/

Source: WPSec, https://wpsec.com/vuln/WPSEC-2026-1455/

License: CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/). Free to use, share and adapt, also commercially, if you credit WPSec and link to this advisory.
