<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Alchemy CMS (&gt;= 8.0.0.a, &lt;= 8.0.14) - CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/products/alchemy-cms--8.0.0.a--8.0.14/</link><description>Trending threats, MITRE ATT&amp;CK coverage, and detection metadata. Fed continuously.</description><generator>Hugo</generator><language>en</language><managingEditor>hello@craftedsignal.io</managingEditor><webMaster>hello@craftedsignal.io</webMaster><lastBuildDate>Fri, 19 Jun 2026 17:53:42 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/products/alchemy-cms--8.0.0.a--8.0.14/feed.xml" rel="self" type="application/rss+xml"/><item><title>AlchemyCMS: Unauthenticated Nested Page API Leaks Restricted &amp; Unpublished Content</title><link>https://feed.craftedsignal.io/briefs/2026-06-alchemycms-nested-api-leak/</link><pubDate>Fri, 19 Jun 2026 17:53:42 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2026-06-alchemycms-nested-api-leak/</guid><description>An unauthenticated API endpoint, `GET /api/pages/nested`, in Alchemy CMS versions up to 8.2.5 (including all 8.x versions prior to a fix and all 7.x versions up to 7.4.14), fails to enforce authorization and scoping checks, allowing any anonymous user to retrieve the complete page tree, encompassing restricted and unpublished pages, and, with `?elements=true`, the full content of these sensitive pages, completely bypassing intended access controls and leading to unauthorized information disclosure.</description><content:encoded><![CDATA[<p>A critical information disclosure vulnerability exists within Alchemy CMS, affecting versions up to 8.2.5 (including 8.0.0.a-8.0.14, 8.1.0-8.1.13, and 8.2.0-8.2.5), and all 7.x versions up to 7.4.14. The flaw lies in the <code>Api::PagesController#nested</code> endpoint, specifically <code>GET /api/pages/nested</code>, which allows any unauthenticated user to retrieve the full internal page tree, including metadata for pages marked as restricted or unpublished. More critically, appending <code>?elements=true</code> to the request exposes the actual content of these sensitive pages, completely bypassing intended access controls. This vulnerability stems from a lack of authorization checks (<code>authorize!</code>) and proper content scoping within the <code>nested</code> action, contrasting with other API actions that correctly enforce these security measures. This can lead to the unauthorized exposure of confidential organizational data.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li><strong>Target Identification</strong>: An attacker identifies a public-facing website running a vulnerable version of Alchemy CMS through various reconnaissance methods (e.g., banner grabbing, web application scanning, or examining publicly available information).</li>
<li><strong>Initial Information Gathering (Metadata)</strong>: The attacker sends an unauthenticated <code>GET</code> request to the <code>/api/pages/nested</code> endpoint (e.g., <code>curl -s http://target.com/api/pages/nested</code>).</li>
<li><strong>Discovery of Sensitive Pages</strong>: The API response provides a JSON object containing the full page tree, including metadata for all pages. This response reveals which pages are marked as <code>&quot;restricted&quot;:true</code> or <code>&quot;public&quot;:false</code>, indicating content that should be hidden from anonymous users.</li>
<li><strong>Targeted Content Request</strong>: Based on the identified sensitive page metadata, the attacker constructs a new <code>GET</code> request to the same <code>/api/pages/nested</code> endpoint, this time appending the <code>elements=true</code> parameter (e.g., <code>curl -s &quot;http://target.com/api/pages/nested?elements=true&quot;</code>).</li>
<li><strong>Exfiltration of Confidential Data</strong>: The vulnerable Alchemy CMS application responds to this request by providing the full content (elements/ingredients) of the previously identified restricted and unpublished pages, including sensitive text like &quot;TOPSECRET_RESTRICTED_BODY_proof123&quot;, effectively bypassing all access control mechanisms.</li>
<li><strong>Impact and Analysis</strong>: The attacker successfully obtains confidential information, intellectual property, or other sensitive data, which can then be used for competitive advantage, further system compromise, or to cause significant reputational and financial damage.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>The vulnerability allows for complete and unauthenticated information disclosure of any content stored within Alchemy CMS that has been marked as restricted or unpublished. This could include sensitive business documents, intellectual property, draft communications, private user data, or internal plans. If exploited, organizations face severe consequences such as data breaches, regulatory non-compliance, reputational damage, and financial losses due to the exposure of proprietary or confidential information. The severity is highlighted by the observed ability to leak specific &quot;TOPSECRET_RESTRICTED_BODY_proof123&quot; content.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li><strong>Patch CVE-XXXX-YYYY</strong>: Immediately upgrade your Alchemy CMS installation to a fixed version beyond 8.2.5 (e.g., 8.2.6 or later for the 8.x series) or 7.4.14 (for the 7.x series) to remediate the vulnerability described in the GHSA-mqq5-j7w8-2hgh advisory.</li>
<li><strong>Enable Webserver Logging</strong>: Ensure comprehensive logging is enabled for your web server (e.g., Apache, Nginx) to capture full HTTP request details, including <code>cs-method</code>, <code>cs-uri-stem</code>, and <code>cs-uri-query</code>.</li>
<li><strong>Deploy Sigma Rules</strong>: Deploy the provided Sigma rules <code>Detects Alchemy CMS /api/pages/nested metadata leak attempt</code> and <code>Detects Alchemy CMS /api/pages/nested sensitive content leak attempt</code> to your SIEM solution and tune them for your environment.</li>
<li><strong>Review Logs</strong>: Proactively review historical web server logs for any past exploitation attempts matching the patterns identified in the Sigma rules.</li>
</ul>
]]></content:encoded><category domain="severity">high</category><category domain="type">advisory</category><category>web-vulnerability</category><category>information-disclosure</category><category>cms</category><category>rails</category><category>ruby</category></item></channel></rss>