{"id":"CVE-2024-55603","summary":"Insufficient session invalidation in Kanboard","details":"Kanboard is project management software that focuses on the Kanban methodology. In affected versions sessions are still usable even though their lifetime has exceeded. Kanboard implements a cutom session handler (`app/Core/Session/SessionHandler.php`), to store the session data in a database. Therefore, when a `session_id` is given, kanboard queries the data from the `sessions` sql table. At this point, it does not correctly verify, if a given `session_id` has already exceeded its lifetime (`expires_at`).\nThus, a session which's lifetime is already `\u003e time()`, is still queried from the database and hence a valid login. The implemented **SessionHandlerInterface::gc** function, that does remove invalid sessions, is called only **with a certain probability** (_Cleans up expired sessions. Called by `session_start()`, based on `session.gc_divisor`, `session.gc_probability` and `session.gc_maxlifetime` settings_) accordingly to the php documentation. In the official Kanboard docker image these values default to: session.gc_probability=1, session.gc_divisor=1000. Thus, an expired session is only terminated with probability 1/1000. This issue has been addressed in release 1.2.43 and all users are advised to upgrade. There are no known workarounds for this vulnerability.","aliases":["GHSA-gv5c-8pxr-p484"],"modified":"2026-08-12T03:51:33.955535080Z","published":"2024-12-18T23:52:57.327Z","database_specific":{"cna_assigner":"GitHub_M","cwe_ids":["CWE-613"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/55xxx/CVE-2024-55603.json"},"references":[{"type":"WEB","url":"https://github.com/kanboard/kanboard/blob/main/app/Core/Session/SessionHandler.php#L40"},{"type":"WEB","url":"https://www.php.net/manual/en/function.session-start.php"},{"type":"WEB","url":"https://www.php.net/manual/en/session.configuration.php#ini.session.gc-divisor"},{"type":"WEB","url":"https://www.php.net/manual/en/session.configuration.php#ini.session.gc-maxlifetime"},{"type":"WEB","url":"https://www.php.net/manual/en/session.configuration.php#ini.session.gc-probability"},{"type":"WEB","url":"https://www.php.net/manual/en/sessionhandlerinterface.gc.php"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/55xxx/CVE-2024-55603.json"},{"type":"ADVISORY","url":"https://github.com/kanboard/kanboard/security/advisories/GHSA-gv5c-8pxr-p484"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2024-55603"},{"type":"FIX","url":"https://github.com/kanboard/kanboard/commit/7ce61c34d962ca8b5dce776289ddf4b207be6e78"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/kanboard/kanboard","events":[{"introduced":"0"},{"fixed":"e49e6968a587594ed62af193f639313293104e6a"},{"fixed":"7ce61c34d962ca8b5dce776289ddf4b207be6e78"}],"database_specific":{"source":["CPE_RANGE","REFERENCES"],"cpe":"cpe:2.3:a:kanboard:kanboard:*:*:*:*:*:*:*:*","extracted_events":[{"introduced":"0"},{"fixed":"1.2.43"}]}}],"versions":["v1.2.42","v1.2.41","v1.2.40","v1.2.39","v1.2.38","v1.2.37","v1.2.36","v1.2.35","v1.2.34","v1.2.33","v1.2.32","v1.2.31","v1.2.30","v1.2.29","v1.2.28","v1.2.27","v1.2.26","v1.2.25","v1.2.24","v1.2.23","v1.2.22","v1.2.21","v1.2.20","v1.2.19","v1.2.18","v1.2.17","v1.2.16","v1.2.15","v1.2.14","v1.2.13","v1.2.12","v1.2.11","v1.2.10","v1.2.9","v1.2.8","v1.2.7","v1.2.6","v1.2.5","v1.2.4","v1.2.3","v1.2.2","v1.2.1","v1.2.0","v1.1.1","v1.1.0","v1.0.48","v1.0.46","v1.0.45","v1.0.44","v1.0.43","v1.0.42","v1.0.41","v1.0.40","v1.0.39","v1.0.38","v1.0.37","v1.0.36","v1.0.35","v1.0.34","v1.0.33","v1.0.32","v1.0.31","v1.0.30","v1.0.29","v1.0.28","v1.0.27","v1.0.26","v1.0.20","v1.0.19","v1.0.18","v1.0.17","v1.0.16","v1.0.15","v1.0.14","v1.0.13","v1.0.12","v1.0.11","v1.0.10","v1.0.9","v1.0.8","v1.0.7","v1.0.6","v1.0.5","v1.0.4","v1.0.3","v1.0.2","v1.0.1","v1.0.0"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2024-55603.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N"}]}