ScadaBR uses a Java/Tomcat HTTP session cookie (JSESSIONID) that is issued before authentication and is not regenerated after a user successfully logs in. Because the same pre-authentication session identifier becomes an authenticated session once a victim loggs in, an attacker who can obtain a victim’s JSESSIONID prior to login can reuse that session identifier from another browser/client to access authenticated resources.
This is a session fixation vulnerability (CWE-384).
- ScadaBR 1.12.4(tested)

- ScadaBR 0.9 (default installation)
- ScadaBR 1.0CE (tested)
- ScadaBR Virtual Machine image referenced by OpenPLC documentation (tested)
- Open Browser A and visit:
http://<target>:<port>/ScadaBR/watch_list.shtm- You will be redirected to
http://<target>:<port>/ScadaBR/login.htm
- In Browser A, capture the pre-auth session cookie from developer tools/storage:
JSESSIONID=<valueA>
- Open Browser B and visit:
http://<target>:<port>/ScadaBR/login.htm(or any page it will redirect to login)
- In Browser B, overwrite its
JSESSIONIDcookie with the value from Browser A:- Set
JSESSIONID=<valueA>
- Set
- In Browser A, log in with valid credentials.
- In Browser B (without logging in), request an authenticated page such as:
http://<target>:<port>/ScadaBR/watch_list.shtm
- Observe that Browser B can access authenticated content while Browser A remains logged in.
- Log out from Browser A and confirm Browser B access stops.
Successful exploitation allows an attacker to hijack an authenticated ScadaBR session if they can obtain the victim’s pre-authentication session ID. This can result in unauthorized access to SCADA monitoring pages and other authenticated functionality until logout or session expiration.
- Regenerate the session identifier upon successful authentication (e.g.,
request.changeSessionId()or invalidate and recreate session after login). - Ensure cookies are set with appropriate flags (
HttpOnly,Securewith HTTPS, andSameSitewhere applicable). - Enforce HTTPS to reduce risk of session theft on the network.
Discovered by Chiranjib Mohapatra, Raja Kulukuri, Divya Bridgit Tomy, Teja Sai Hanish Gudepu, Jan 2026.
- Upstream repository: https://github.com/ScadaBR/ScadaBR
- OpenPLC ScadaBR VM install reference: https://github.com/openplcproject/openplcproject.github.io/blob/master/reference/scadabr/index.md
- ScadaBR Manual (SourceForge): https://sourceforge.net/p/scadabr/wiki/Manual%20ScadaBR%20English%200%20Summary/