Vikunja is an open-source self-hosted task management platform. Prior to 2.3.0, the addRepeatIntervalToTime function uses an O(n) loop that advances a date by the task's RepeatAfter duration until it exceeds the current time. By creating a repeating task with a 1-second interval and a due date far in the past, an attacker triggers billions of loop iterations, consuming CPU and holding a database connection for minutes per request. This vulnerability is fixed in 2.3.0.
https://github.com/go-vikunja/vikunja/security/advisories/GHSA-r4fg-73rc-hhh7
https://github.com/go-vikunja/vikunja/releases/tag/v2.3.0
https://github.com/go-vikunja/vikunja/pull/2577
https://github.com/go-vikunja/vikunja/commit/6df0d6c8f54b01db6464c42810e40e55f12b481b