SchwachstellendatenbankGHSA-g478-vjq4-75hf

GHSA-g478-vjq4-75hf: 
PHP Schwachstellenanalyse und -minderung

Summary

The public GraphQL read queries of the blog module don't check publication state, store view or authorization. A request without any token can read content that the storefront itself hides.

Details

blogPosts only applies the filters the client sends. It never forces status = published or the current store view, so it returns every row in mageos_blog_post: drafts, scheduled posts, archived posts and posts assigned only to another store view. Each item includes the full content, the meta fields and the status. A client can also ask for the hidden rows on purpose with filter: { status: ... }. blogPost(id: ...) has the same gap. blogPost(url_key: ...) is scoped to the current store view, but it doesn't check the status either, so a draft is readable as soon as its URL key is known or guessed. blogCategories, blogCategory, blogTags, blogTag, blogAuthors and blogAuthor have the same gap for inactive entities. Categories and tags that belong only to another store view are returned too. The nested categories, tags and author fields on a post don't check whether the entity is active. The resolvers also never look at the blog's enabled setting, so a store that installed the module but hasn't switched the blog on (the default) is exposed as well. The create, update and delete mutations already require admin authorization and aren't affected. The storefront pages, the RSS feed, the sitemap and the search results check the post status, so the problem is limited to the GraphQL API. There's no REST API in the module.

Impact

Unauthenticated information disclosure. Unpublished content (drafts, scheduled announcements, archived posts) and content meant for a different store view can be read by anyone who can reach /graphql. There's no integrity or availability impact.

Patches

Fixed in 1.4.4. The list and detail queries now return only what the storefront shows: published posts, and active categories, tags and authors, restricted to the current store view. An admin token with the matching ACL resource (MageOS_Blog::post, MageOS_Blog::category, MageOS_Blog::tag, MageOS_Blog::author) can still read everything.

Workarounds

There's no configuration switch. Until you can update, block GraphQL requests that select the blogPost, blogPosts, blogCategory, blogCategories, blogTag, blogTags, blogAuthor or blogAuthors fields at the web server or WAF, or disable the module with bin/magento module:disable MageOS_Blog.


Quelle: NVD

Verwandte Themen PHP Schwachstellen:

CVE-ID

Schwere

Punktzahl

Technologieen

Bauteilname

CISA KEV-Exploit

Hat Lösung

Veröffentlichungsdatum

GHSA-25rf-99hr-7pmrHIGH8.1
  • PHP logoPHP
  • codeigniter4/framework
NeinJaNov 01, 2026
GHSA-rgjx-wcgv-pw7gHIGH7.5
  • PHP logoPHP
  • adminneo-org/adminneo
NeinJaNov 01, 2026
GHSA-ggh8-3chg-48w7HIGH7.2
  • PHP logoPHP
  • adminneo-org/adminneo
NeinJaNov 01, 2026
GHSA-g478-vjq4-75hfMEDIUM5.3
  • PHP logoPHP
  • mage-os/module-blog
NeinJaNov 02, 2026
GHSA-q5vv-mh5m-fxvmMEDIUMN/A
  • PHP logoPHP
  • adminneo-org/adminneo
NeinJaNov 01, 2026

Kostenlose Verwundbarkeitsbewertung

Benchmark für Ihre Cloud-Sicherheitslage

Bewerten Sie Ihre Cloudsicherheitspraktiken in 9 Sicherheitsbereichen, um Ihr Risikoniveau zu bewerten und Schwachstellen in Ihren Verteidigungen zu identifizieren.

Anforderungsbewertung

Zusätzliche Wiz-Ressourcen

Eine personalisierte Demo anfordern

Sind Sie bereit, Wiz in Aktion zu sehen?

"Die beste Benutzererfahrung, die ich je gesehen habe, bietet vollständige Transparenz für Cloud-Workloads."
David EstlickCISO
"„Wiz bietet eine zentrale Oberfläche, um zu sehen, was in unseren Cloud-Umgebungen vor sich geht.“ "
Adam FletcherSicherheitsbeauftragter
"„Wir wissen, dass, wenn Wiz etwas als kritisch identifiziert, es auch wirklich kritisch ist.“"
Greg PoniatowskiLeiter Bedrohungs- und Schwachstellenmanagement