Critical · published September 27, 2025
🚨 A missing JWT signature check is like leaving your front door wide open with a sign saying, "Help yourself!" 🔥 Imagine a restaurant where anyone can forge a reservation and get a table, as the host doesn't check if that reservation is real or just made up. That's what happens when the validation routine decodes JWTs without verifying their signatures — it’s a free pass for attackers! An attacker who figures out a victim's user ID can craft a fraudulent JWT with an 'alg: none' header, granting them access to authenticate like a trusted user. This could lead to unauthorized password resets, allowing attackers to take control of accounts, which is absolutely devastating!
Imagine a restaurant where anyone can forge a reservation and get a table, as the host doesn't check if that reservation is real or just made up. That's what happens when the validation routine decodes JWTs without verifying their signatures — it’s a free pass for attackers! Prior to version 4.0.1, Formbricks lacked proper JWT signature verification in its token validation process, meaning tokens could be decoded but not verified for authenticity, expiration, issuer, or audience.
An attacker who figures out a victim's user ID can craft a fraudulent JWT with an 'alg: none' header, granting them access to authenticate like a trusted user. This could lead to unauthorized password resets, allowing attackers to take control of accounts, which is absolutely devastating! Upgrade Formbricks to version 4.0.1 immediately to implement JWT signature verification. Additionally, review your existing JWT handling processes to ensure robust validation checks are in place. You’ve got this! Follow these steps, and you’ll have your Formbricks setup secured in no time. 🛡️