CVE-2026-110314
Publiée le 2026-10-26 · Dernière modification le 2026-10-26
Les versions 0.5.1 à 1.13.x de Bandit sont concernées. Bandit est un serveur HTTP/WebSocket pour les applications Elixir. La faille provient du fait que le serveur continue de traiter les trames de données entrantes même après avoir envoyé un signal « Close » pour interrompre la connexion.
Un attaquant distant peut contourner certains contrôles de sécurité, tels que les jetons d'authentification, pour effectuer des actions non autorisées. Cela affecte à la fois la confidentialité et l'intégrité en permettant l'accès à des fonctions restreintes. L'exploitation est relativement facile à exécuter via le réseau et ne nécessite ni authentification préalable ni interaction de l'utilisateur.
DÉTAIL DU VECTEUR CVSS
RÉFÉRENCES
Description officielle du NVD (en anglais)
Client-Side Enforcement of Server-Side Security vulnerability in the WebSocket connection handling of mtrudel bandit allows a remote client to keep running WebSock handler code after the server has stopped its connection, via data frames sent after ignoring the server's Close frame. When a WebSock callback returns {:stop, ...}, Bandit.WebSocket.Connection calls terminate/2, sends Close and shuts down the write side, but keeps the connection process running in a :closing state. handle_frame/3 and handle_info/3 never check that state, so later frames still reach handle_in/2 and later messages reach handle_info/2, with the state from the stop tuple, until the client sends Close, TCP drops or the idle timeout fires. A client refused in init/1 after a failed token check could still run an admin-only action. This issue affects bandit: from 0.5.1 before 1.14.0.