<?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>LibreOffice — CraftedSignal Threat Feed</title><link>https://feed.craftedsignal.io/vendors/libreoffice/</link><description>Trending threats, MITRE ATT&amp;CK coverage, and detection metadata — refreshed continuously.</description><generator>Hugo</generator><language>en</language><managingEditor>hello@craftedsignal.io</managingEditor><webMaster>hello@craftedsignal.io</webMaster><lastBuildDate>Thu, 07 May 2026 00:57:03 +0000</lastBuildDate><atom:link href="https://feed.craftedsignal.io/vendors/libreoffice/feed.xml" rel="self" type="application/rss+xml"/><item><title>Gotenberg SSRF Vulnerability in LibreOffice Conversion Endpoint</title><link>https://feed.craftedsignal.io/briefs/2024-01-02-gotenberg-ssrf/</link><pubDate>Thu, 07 May 2026 00:57:03 +0000</pubDate><author>hello@craftedsignal.io</author><guid isPermaLink="true">https://feed.craftedsignal.io/briefs/2024-01-02-gotenberg-ssrf/</guid><description>Gotenberg is vulnerable to Server-Side Request Forgery (SSRF) due to insufficient hardening in the LibreOffice conversion endpoint, allowing attackers to make outbound HTTP requests by embedding external URLs in uploaded documents, bypassing Gotenberg's SSRF filters, affecting versions up to 8.31.0, and potentially enabling access to internal services, data exfiltration, or port scanning.</description><content:encoded><![CDATA[<p>Gotenberg, a Docker-based stateless API for PDF files, is vulnerable to a Server-Side Request Forgery (SSRF) vulnerability in its LibreOffice conversion endpoint. Specifically, the SSRF hardening implemented in version 8.31.0 does not adequately cover LibreOffice&rsquo;s handling of external URLs embedded in uploaded documents. An attacker can craft a malicious document, such as a DOCX file containing external image references, that, when processed by the <code>/forms/libreoffice/convert</code> endpoint, causes LibreOffice to make outbound HTTP requests to attacker-controlled servers or internal resources. This bypasses the intended SSRF protections, potentially exposing internal services and sensitive data. This vulnerability was verified on version 8.31.0 using a crafted DOCX file and matters to defenders because it allows attackers to bypass network segmentation and access internal resources normally inaccessible from the internet.</p>
<h2 id="attack-chain">Attack Chain</h2>
<ol>
<li>Attacker crafts a malicious document (e.g., DOCX, XLSX, PPTX, ODT, ODS, ODP, RTF) embedding an external URL reference.</li>
<li>The malicious document contains a relationship file (e.g., <code>word/_rels/document.xml.rels</code>) with a <code>TargetMode=&quot;External&quot;</code> attribute pointing to an attacker-controlled URL.</li>
<li>The attacker uploads the crafted document to the <code>/forms/libreoffice/convert</code> endpoint of a vulnerable Gotenberg instance.</li>
<li>Gotenberg&rsquo;s <code>pkg/modules/libreoffice/routes.go</code> passes the uploaded document directly to the LibreOffice process via <code>libreOffice.Pdf()</code>.</li>
<li>LibreOffice parses the document and, due to the external URL reference, initiates an HTTP request to the specified URL.</li>
<li>The request bypasses Gotenberg&rsquo;s Go-level SSRF protection mechanisms, as LibreOffice handles the HTTP connection directly using libcurl.</li>
<li>LibreOffice makes an HTTP GET request (and potentially an OPTIONS request) to the attacker-controlled server, potentially leaking information through the User-Agent header.</li>
<li>The attacker gains access to internal resources, exfiltrates response data, or performs other malicious actions based on the SSRF vulnerability.</li>
</ol>
<h2 id="impact">Impact</h2>
<p>Successful exploitation of this SSRF vulnerability allows attackers to make outbound HTTP requests from the LibreOffice process, potentially reaching internal services and sensitive data. An attacker can target internal services within the container&rsquo;s network, such as localhost or internal IP ranges (10.x, 192.168.x), access cloud metadata at <code>http://169.254.169.254/</code> to obtain AWS/GCP/Azure IAM credentials, or perform port scanning of the internal network. The vulnerability affects various document formats, including <code>.docx</code>, <code>.docm</code>, <code>.xlsx</code>, <code>.xlsm</code>, <code>.pptx</code>, <code>.pptm</code>, <code>.odt</code>, <code>.ods</code>, <code>.odp</code>, <code>.rtf</code>. The v8.31.0 SSRF hardening is ineffective, as it only covers Go HTTP calls, not LibreOffice&rsquo;s connections.</p>
<h2 id="recommendation">Recommendation</h2>
<ul>
<li>Implement network segmentation by running LibreOffice with <code>unshare --net</code> to isolate the subprocess and prevent network access. This mitigates the risk of outbound requests, as recommended in the advisory.</li>
<li>Develop and deploy a Sigma rule to detect suspicious process execution involving LibreOffice initiating network connections. Use process_creation logs and filter on Image containing &ldquo;libreoffice&rdquo; and Initiated: &ldquo;true&rdquo;.</li>
<li>As defense in depth, scan uploaded OOXML files for <code>_rels/*.rels</code> entries with <code>TargetMode=&quot;External&quot;</code> and validate/strip those URLs before passing the file to LibreOffice.</li>
</ul>
]]></content:encoded><category domain="severity">high</category><category domain="type">advisory</category><category>ssrf</category><category>gotenberg</category><category>libreoffice</category><category>vulnerability</category></item></channel></rss>