v2026.09.08
onyx-dot-app/onyxv2026.09.08Sep 8, 2026by knu
Upgrading?
AI Summary
This security release addresses critical vulnerabilities regarding HTML injection, unauthorized file reading, and cross-origin request handling, while also hardening deployment defaults.
Key Highlights
- Fixes HTML injection vulnerability in Scenario descriptions and icons.
- Fixes unauthorized file read vulnerability affecting installations with untrusted users.
- Fixes cross-origin request handling by adding sandbox CSP to web request handlers.
- Docker configurations no longer ship a fixed APP_SECRET_TOKEN.
- Devise paranoid mode is enabled to hide account existence.
Breaking Changes
- TwitterStreamAgent is retired.
- Web request handlers now use sandbox CSP, potentially breaking scripts that call Huginn's own API from served pages.
Full Release Notes
This security release fixes three issues: - A Scenario description containing HTML could execute script in the browser of a user importing the Scenario, both in the import preview and after the import. Scenario icons were likewise stored without validation. - Any authenticated user could read any file readable by the Huginn process by handing a file pointer to a file-consuming Agent, even with `ENABLE_INSECURE_AGENTS` disabled. Reading `.env` exposes `APP_SECRET_TOKEN`, which allows forging an administrator session. - Pages served by LiquidOutputAgent, DataOutputAgent and other web request handlers ran on Huginn's own origin, so a page authored by one user could act on Huginn as another user viewing it. The file-read issue affects installations where untrusted users have accounts. Operators of such installations should rotate `APP_SECRET_TOKEN` and any other secrets stored in `.env` after upgrading, since a secret leaked before the fix remains usable. The Scenario import issue affects anyone importing a Scenario from an untrusted source. The web request issue affects multi-user installations. Operators should upgrade promptly. Responses from the web request route now carry `Content-Security-Policy: sandbox allow-scripts allow-forms allow-popups`. Pages that relied on calling Huginn's own API from within a served page will stop working. This release also hardens deployment defaults: - The Docker configurations no longer ship a fixed `APP_SECRET_TOKEN`. A random one is generated on container start unless `APP_SECRET_TOKEN` is set; set it to a value of your own to keep sessions valid across container restarts. Deployments still supplying the previously shipped value get a warning and a generated secret instead. - `rake db:seed` generates a random admin password and prints it once unless `SEED_PASSWORD` is set. - DataOutputAgent and LiquidOutputAgent get a random default secret. - Devise paranoid mode is enabled, so the password reset, unlock and confirmation forms no longer reveal whether an account exists. - TwitterStreamAgent is retired, as the Twitter streaming API it depended on was shut down in 2023. Existing Agents remain loadable but new ones cannot be created. Full details: - https://github.com/huginn/huginn/security/advisories/GHSA-x738-j22q-h2jw - https://github.com/huginn/huginn/security/advisories/GHSA-p347-7m45-694r - https://github.com/huginn/huginn/security/advisories/GHSA-p748-5grc-mcf5 **Full Changelog**: https://github.com/huginn/huginn/compare/v2026.08.27...v2026.09.08
Related Repositories
public-apis/public-apis★ 491,222
A collective list of free APIs
NousResearch/hermes-agent★ 256,093
The agent that grows with you
yt-dlp/yt-dlp★ 200,268
A feature-rich command-line audio/video downloader
microsoft/markitdown★ 191,563
Python tool for converting files and office documents to Markdown.
Significant-Gravitas/AutoGPT★ 187,700
AutoGPT is the vision of accessible AI for everyone, to use and to build on. Our mission is to provide the tools, so that you can focus on what matters.