Safeguard
Vulnerability Analysis•

CVE-2025-39348: Critical PHP Object Injection in Grand Restaurant

CVE-2025-39348 is a critical PHP object injection in the Grand Restaurant WordPress theme up to 7.0. No official patch is listed, so replace or remove the

Safeguard Security Team
4 min read

CVE-2025-39348 is a critical deserialization flaw (CVSS 9.8) in the Grand Restaurant WordPress theme, in versions up to and including 7.0. It allows PHP object injection and needs no login. Patchstack lists no official patch, so check with the theme author, and remove or replace the theme if you cannot get a fixed version.

What's affected

The record names the ThemeGoods Grand Restaurant theme, from n/a through 7.0. The weakness is deserialization of untrusted data, which the record says allows object injection.

Patchstack's page for this entry lists 7.0 as the vulnerable version and shows no official patched version at the time I read it. The vendor may have shipped a fix since then, so check the theme's changelog and the channel you bought it from.

The record lists the weakness as CWE-502 (deserialization of untrusted data). The CVSS 3.1 score is 9.8 (critical), with the vector CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H. The vector shows the flaw can be reached over the network, and no login is needed. Confidentiality impact is rated high, integrity high and availability high.

The record does not say this flaw is exploited in the wild, and the CISA Known Exploited Vulnerabilities flag is false. Patchstack's page rates the issue as high priority and expects it to be exploited at scale, which is a forecast and not a report of attacks. Treat internet facing sites as the priority.

How to check if you're exposed

Check each WordPress install for the theme and its version.

  1. With WP-CLI, list the theme and its version on each site:
wp theme list --fields=name,status,version | grep -i grand
  1. Without WP-CLI, open the Themes page in the dashboard and read the version under Grand Restaurant. Compare it with 7.0.
  2. Look for a changelog or update notice from the theme author that mentions a fix for object injection. If none exists, plan to replace the theme.
  3. Remember that an inactive theme or plugin can still be reachable on disk. Check the folder under wp-content as well, and delete anything you do not use.

If you manage many sites, the free in-browser dependency scan covers application dependencies, and the Gold directory lets you look up other CVEs by product. Themes and plugins still need to be checked on each site.

What to do now

  1. Update the Grand Restaurant theme to a fixed version if the author has published one. Confirm the version is newer than 7.0.
  2. If no fixed version exists, switch to a different theme and delete the vulnerable one from the server. Deactivating alone leaves the files on disk.
  3. Put a web application firewall rule in front of the site if you must keep the theme running for a short time.
  4. Check the site for new administrator accounts, changed files and unknown scheduled tasks.
  5. Take a fresh backup before changing themes, and test the new theme on a staging copy.
  6. Keep a list of the themes and plugins on every site so you can answer the next advisory in minutes.

Why it matters

PHP object injection happens when an application turns stored text back into PHP objects without checking where that text came from. If an attacker can supply the text, the application may build objects it never meant to. Whether that becomes a real problem depends on the classes available in the code that is loaded, which is why themes and plugins that ship many classes are common sources.

The record lists CWE-502, deserialization of untrusted data, and a score of 9.8, which is the high end for a network flaw that needs no privileges. Themes are easy to overlook in a patch process because they are not updated through the same route as WordPress core. A site can run for years on a theme that no longer gets fixes.

Try it yourself

Click through it at your own pace, or open it full screen.

Quick check

Is there a patched version of the Grand Restaurant theme?

Patchstack's page lists no official patch at the time of review. Check the theme's changelog and the marketplace you bought it from before assuming one exists.

What if I cannot replace the theme today?

Reduce exposure first: put the site behind a firewall rule or restrict access while you plan the switch, and watch for unexpected admin accounts or file changes.

Sources

Last reviewed: 18 October 2026.

Never miss an update

Weekly insights on software supply chain security, delivered to your inbox.

We email you a link to confirm, and only then add you to the list. Unsubscribe in one click. Privacy

Self-healing security runs on Safeguard.

Your first fix PR is minutes away.

No sales call required, even your agent can complete the purchase over MCP.