Titra to otwarte oprogramowanie do śledzenia czasu pracy. W wersjach 0.99.49 i wcześniejszych API ma podatność Mass Assignment, która pozwala uwierzytelnionym użytkownikom wstrzykiwać arbitralne pola do wpisów czasu pracy, omijając kontrole logiki biznesowej poprzez parametr customfields. Podatny endpoint używa operatora spread JavaScriptu (...customfields) do bezpośredniego scalenia danych kontrolowanych przez użytkownika z dokumentem bazy danych. Choć customfields jest walidowany jako typ Object, nie ma walidacji, które klucze są dozwolone wewnątrz tego obiektu. Pozwala to atakującym na nadpisanie chronionych pól takich jak userId, hours i state. Problem został naprawiony w wersji 0.99.50.
▸ Pokaż oryginał (EN)
Titra is open source project time tracking software. In versions 0.99.49 and below, an API has a Mass Assignment vulnerability which allows authenticated users to inject arbitrary fields into time entries, bypassing business logic controls via the customfields parameter. The affected endpoint uses the JavaScript spread operator (...customfields) to merge user-controlled input directly into the database document. While customfields is validated as an Object type, there is no validation of which keys are permitted inside that object. This allows attackers to overwrite protected fields such as userId, hours, and state. The issue is fixed in version 0.99.50.
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:NKromit Titra
APPKromit< 0.99.50
Powiązane podatności
RCE w Titra — nieoczyszczona wartość timeEntryRule wykonywana przez NodeVM
Nieprawidłowa autoryzacja w Kromit Titra — pełny dostęp zdalny
Zbyt słabe wymagania dotyczące haseł w Kromit Titra (CWE-521)
Improper Neutralization of Formula Elements in a CSV File in GitHub repository kromitgmbh/titra prior to 0.77....
Titra to oprogramowanie do śledzenia czasu pracy o otwartym kodzie źródłowym. W wersjach 0.99.49 i starszych w...