Transmission 4.0.0 before 4.1.3 Permissive CORS Leaks RPC Anti-CSRF Token
Impact
Transmission 4.0.0 before 4.1.3 contains a permissive CORS vulnerability in handle_request() in rpc-server.cc that exposes the X-Transmission-Session-Id anti-CSRF token to any web origin. Malicious web pages can read the token from the 409 handshake response and replay it to issue RPC calls, enabling script-torrent-done execution, download-dir changes, or torrent and data deletion.
Source excerpt · VulnCheckAffected packages
Affected products
Vendor version evidence. Product records are separate from automatic dependency matching.
transmission · transmission
Other versions: unaffected
| Version / range | Source status |
|---|---|
| 4.0.0 to before 4.1.3 | affected |
Original source description
Transmission 4.0.0 before 4.1.3 contains a permissive CORS vulnerability in handle_request() in rpc-server.cc that exposes the X-Transmission-Session-Id anti-CSRF token to any web origin. Malicious web pages can read the token from the 409 handshake response and replay it to issue RPC calls, enabling script-torrent-done execution, download-dir changes, or torrent and data deletion.
References
- Patch github.com/transmission/transmission/pull/8938
- Patch github.com/transmission/transmission/commit/c6a1bd2017a0fea9c956737c213f23e4b0f7929e
- Source reference github.com/transmission/transmission
- Release notes github.com/transmission/transmission/releases/tag/4.1.3
- Source reference github.com/transmission/transmission/blob/4.1.2/libtransmission/rpc-server.cc
- Source reference joshua.hu/transmission-cors-rpc-csrf-rce-drive-by-exploit
- Security advisory www.vulncheck.com/advisories/transmission-4.0.0-before-4.1.3-permissive-cors-leaks-rpc-anti-csrf-token