[changes]
* Installer for macOS using Apple Silicon is available
* The bundled Eclipse Temurin Java VM is version 17.0.14
* Added support for DynamoDB persistence
* Added support for the HTTP header Forward (RFC 7329) for use with reverse proxies.
* Database Persistence accepts any configuration scope (USER or SYSTEM) and can also run as a non-root account.
 
[changes:de]
* Unterstützung für den HTTP-Header Forward (RFC 7329) zur Verwendung mit Reverse Proxies wurde hinzugefügt.
* Datenbank Persistence akzeptiert beliebige Configuration Scope (USER or SYSTEM) und kann auch mit einem nicht Root Account ausgeführt werden.
* Installer für macOS mit Apple Silicon ist verfügbar.
* Das mitgelieferte Eclipse Temurin Java VM ist Version 17.0.14
* Unterstützung für DynamoDB-Persistenz hinzugefügt

[bugfixes]

[bugfixes:de]

[security]
* Added option to disable the "Stay logged in" feature for all users.
* *Security Update for CVE-2020-36518*
  * jackson-databind before 2.13.0 allows a Java StackOverflow exception and denial of service via a large depth of nested objects.
* *Security Update for CVE-2022-24823*
  * Netty is an open-source, asynchronous event-driven network application framework. The package ''io.netty:netty-codec-http'' prior to version 4.1.77.Final contains an insufficient fix for CVE-2021-21290. When Netty's multipart decoders are used local information disclosure can occur via the local system temporary directory if temporary storing uploads on the disk is enabled. This only impacts applications running on Java version 6 and lower. Additionally, this vulnerability impacts code running on Unix-like systems, and very old versions of Mac OSX and Windows as they all share the system temporary directory between all users. Version 4.1.77.Final contains a patch for this vulnerability. As a workaround, specify one's own ''java.io.tmpdir'' when starting the JVM or use DefaultHttpDataFactory.setBaseDir(...) to set the directory to something that is only readable by the current user.
* *Security Update for CVE-2021-23792*
  * The package com.twelvemonkeys.imageio:imageio-metadata before 3.7.1 are vulnerable to XML External Entity (XXE) Injection due to an insecurely initialized XML parser for reading XMP Metadata. An attacker can exploit this vulnerability if they are able to supply a file (e.g. when an online profile picture is processed) with a malicious XMP segment. If the XMP metadata of the uploaded image is parsed, then the XXE vulnerability is triggered.
* *Security Update for CVE-2022-21363*
  * Vulnerability in the MySQL Connectors product of Oracle MySQL (component: Connector/J). Supported versions that are affected are 8.0.27 and prior. Difficult to exploit vulnerability allows high privileged attacker with network access via multiple protocols to compromise MySQL Connectors. Successful attacks of this vulnerability can result in takeover of MySQL Connectors. CVSS 3.1 Base Score 6.6 (Confidentiality, Integrity and Availability impacts). CVSS Vector: (CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:H).
* *Security Update for CVE-2020-11023*
  * In jQuery versions greater than or equal to 1.0.3 and before 3.5.0, passing HTML containing  elements from untrusted sources - even after sanitizing it - to one of jQuery's DOM manipulation methods (i.e. .html(), .append(), and others) may execute untrusted code. This problem is patched in jQuery 3.5.0.
* *Security Update for CVE-2022-2191*
  * In Eclipse Jetty versions 10.0.0 thru 10.0.9, and 11.0.0 thru 11.0.9 versions, SslConnection does not release ByteBuffers from configured ByteBufferPool in case of error code paths.
* *Security Update for CVE-2022-2047*
  * In Eclipse Jetty versions 9.4.0 thru 9.4.46, and 10.0.0 thru 10.0.9, and 11.0.0 thru 11.0.9 versions, the parsing of the authority segment of an http scheme URI, the Jetty HttpURI class improperly detects an invalid input as a hostname. This can lead to failures in a Proxy scenario.
* *Security Update for CVE-2022-31160*
  * jQuery UI is a curated set of user interface interactions, effects, widgets, and themes built on top of jQuery. Versions prior to 1.13.2 are potentially vulnerable to cross-site scripting. Initializing a checkboxradio widget on an input enclosed within a label makes that parent label contents considered as the input label. Calling ''.checkboxradio( "refresh" )'' on such a widget and the initial HTML contained encoded HTML entities will make them erroneously get decoded. This can lead to potentially executing JavaScript code. The bug has been patched in jQuery UI 1.13.2. To remediate the issue, someone who can change the initial HTML can wrap all the non-input contents of the ''label'' in a ''span''.
* *Security Update for CVE-2022-31197*
  * PostgreSQL JDBC Driver (PgJDBC for short) allows Java programs to connect to a PostgreSQL database using standard, database independent Java code. The PGJDBC implementation of the ''java.sql.ResultRow.refreshRow()'' method is not performing escaping of column names so a malicious column name that contains a statement terminator, e.g. '';'', could lead to SQL injection. This could lead to executing additional SQL commands as the application's JDBC user. User applications that do not invoke the ''ResultSet.refreshRow()'' method are not impacted. User application that do invoke that method are impacted if the underlying database that they are querying via their JDBC application may be under the control of an attacker. The attack requires the attacker to trick the user into executing SQL against a table name who's column names would contain the malicious SQL and subsequently invoke the ''refreshRow()'' method on the ResultSet. Note that the application's JDBC user and the schema owner need not be the same. A JDBC application that executes as a privileged user querying database schemas owned by potentially malicious less-privileged users would be vulnerable. In that situation it may be possible for the malicious user to craft a schema that causes the application to execute commands as the privileged user. Patched versions will be released as ''42.2.26'' and ''42.4.1''. Users are advised to upgrade. There are no known workarounds for this issue.
* *Security Update for CVE-2022-31129*
  * moment is a JavaScript date library for parsing, validating, manipulating, and formatting dates. Affected versions of moment were found to use an inefficient parsing algorithm. Specifically using string-to-date parsing in moment (more specifically rfc2822 parsing, which is tried by default) has quadratic (N^2) complexity on specific inputs. Users may notice a noticeable slowdown is observed with inputs above 10k characters. Users who pass user-provided strings without sanity length checks to moment constructor are vulnerable to (Re)DoS attacks. The problem is patched in 2.29.4, the patch can be applied to all affected versions with minimal tweaking. Users are advised to upgrade. Users unable to upgrade should consider limiting date lengths accepted from user input.
* *Security Update for CVE-2022-36033*
  * jsoup is a Java HTML parser, built for HTML editing, cleaning, scraping, and cross-site scripting (XSS) safety. jsoup may incorrectly sanitize HTML including ''javascript:'' URL expressions, which could allow XSS attacks when a reader subsequently clicks that link. If the non-default ''SafeList.preserveRelativeLinks'' option is enabled, HTML including ''javascript:'' URLs that have been crafted with control characters will not be sanitized. If the site that this HTML is published on does not set a Content Security Policy, an XSS attack is then possible. This issue is patched in jsoup 1.15.3. Users should upgrade to this version. Additionally, as the unsanitized input may have been persisted, old content should be cleaned again using the updated version. To remediate this issue without immediately upgrading: - disable ''SafeList.preserveRelativeLinks'', which will rewrite input URLs as absolute URLs - ensure an appropriate [[https:*developer.mozilla.org/en-US/docs/Web/HTTP/CSP|Content Security Policy]] is defined. (This should be used regardless of upgrading, as a defence-in-depth best practice.)
* *Security Update for CVE-2022-42003*
  * In FasterXML jackson-databind before 2.14.0-rc1, resource exhaustion can occur because of a lack of a check in primitive value deserializers to avoid deep wrapper array nesting, when the UNWRAP_SINGLE_VALUE_ARRAYS feature is enabled. Additional fix version in 2.13.4.1 and 2.12.17.1
* *Security Update for CVE-2022-31684*
  * Reactor Netty HTTP Server, in versions 1.0.11 - 1.0.23, may log request headers in some cases of invalid HTTP requests. The logged headers may reveal valid access tokens to those with access to server logs. This may affect only invalid HTTP requests where logging at WARN level is enabled.
* *Security Update for CVE-2021-37533*
  * Prior to Apache Commons Net 3.9.0, Net's FTP client trusts the host from PASV response by default. A malicious server can redirect the Commons Net code to use a different host, but the user has to connect to the malicious server in the first place. This may lead to leakage of information about services running on the private network of the client. The default in version 3.9.0 is now false to ignore such hosts, as cURL does. See https:*issues.apache.org/jira/browse/NET-711.
* *Security Update for CVE-2022-23494*
  * tinymce is an open source rich text editor. A cross-site scripting (XSS) vulnerability was discovered in the alert and confirm dialogs when these dialogs were provided with malicious HTML content. This can occur in plugins that use the alert or confirm dialogs, such as in the `image` plugin, which presents these dialogs when certain errors occur. The vulnerability allowed arbitrary JavaScript execution when an alert presented in the TinyMCE UI for the current user. This vulnerability has been patched in TinyMCE 5.10.7 and TinyMCE 6.3.1 by ensuring HTML sanitization was still performed after unwrapping invalid elements. Users are advised to upgrade to either 5.10.7 or 6.3.1. Users unable to upgrade may ensure the the `images_upload_handler` returns a valid value as per the images_upload_handler documentation.
* *Security Update for CVE-2022-41915*
  * Netty project is an event-driven asynchronous network application framework. Starting in version 4.1.83.Final and prior to 4.1.86.Final, when calling `DefaultHttpHeadesr.set` with an _iterator_ of values, header value validation was not performed, allowing malicious header values in the iterator to perform HTTP Response Splitting. This issue has been patched in version 4.1.86.Final. Integrators can work around the issue by changing the `DefaultHttpHeaders.set(CharSequence, Iterator)` call, into a `remove()` call, and call `add()` in a loop over the iterator of values.
* *Security Update for CVE-2023-24998*
  * Apache Commons FileUpload before 1.5 does not limit the number of request parts to be processed resulting in the possibility of an attacker triggering a DoS with a malicious upload or series of uploads.

[security:de]
* Option zur Deaktivierung der Funktion "Eingeloggt bleiben" für alle Benutzer hinzugefügt.
* *Sicherheitsupdate für CVE-2020-36518*
  * jackson-databind vor 2.13.0 ermöglicht eine Java StackOverflow-Ausnahme und eine Dienstverweigerung über eine große Tiefe von verschachtelten Objekten.
* *Sicherheitsupdate für CVE-2022-24823*
  * Netty ist ein Open-Source-Framework für asynchrone, ereignisgesteuerte Netzwerkanwendungen. Das Paket ''io.netty:netty-codec-http'' vor Version 4.1.77.Final enthält eine unzureichende Korrektur für CVE-2021-21290. Wenn die Multipart-Decoder von Netty verwendet werden, kann es zur Offenlegung lokaler Informationen Ã?ber das temporÃ?re Verzeichnis des lokalen Systems kommen, wenn das temporÃ?re Speichern von Uploads auf der Festplatte aktiviert ist. Dies wirkt sich nur auf Anwendungen aus, die unter Java Version 6 und niedriger laufen. Darüber hinaus wirkt sich diese Schwachstelle auf Code aus, der auf Unix-ähnlichen Systemen und sehr alten Versionen von Mac OSX und Windows ausgeführt wird, da sie alle das temporäre Systemverzeichnis für alle Benutzer freigeben. Version 4.1.77.Final enthält einen Patch für diese Sicherheitslücke. Als Abhilfe können Sie beim Starten der JVM ein eigenes ''java.io.tmpdir'' angeben oder DefaultHttpDataFactory.setBaseDir(...) verwenden, um das Verzeichnis auf etwas zu setzen, das nur für den aktuellen Benutzer lesbar ist.
* *Sicherheitsupdate für CVE-2021-23792*
  * Das Paket com.twelvevemonkeys.imageio:imageio-metadata vor 3.7.1 ist anfällig für XML External Entity (XXE) Injection aufgrund eines unsicher initialisierten XML-Parsers zum Lesen von XMP-Metadaten. Ein Angreifer kann diese Schwachstelle ausnutzen, wenn es ihm gelingt, eine Datei (z. B. bei der Verarbeitung eines Online-Profilbildes) mit einem bösartigen XMP-Segment zu versehen. Wenn die XMP-Metadaten des hochgeladenen Bildes geparst werden, wird die XXE-Schwachstelle ausgelöst.
* *Sicherheitsupdate für CVE-2022-21363*
  * Sicherheitslücke im Produkt MySQL Connectors von Oracle MySQL (Komponente: Connector/J). Unterstützte Versionen, die betroffen sind, sind 8.0.27 und früher. Die schwer auszunutzende Schwachstelle ermöglicht es Angreifern mit hohen Privilegien und Netzwerkzugriff über mehrere Protokolle, MySQL Connectors zu kompromittieren. Erfolgreiche Angriffe auf diese Schwachstelle können zu einer Übernahme der MySQL-Konnektoren führen. CVSS 3.1 Base Score 6.6 (Beeinträchtigung der Vertraulichkeit, Integrität und Verfügbarkeit). CVSS-Vektor: (CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:H).
* *Sicherheitsupdate für CVE-2020-11023*
  * In jQuery-Versionen größer oder gleich 1.0.3 und vor 3.5.0 kann die Übergabe von HTML, das Elemente aus nicht vertrauenswürdigen Quellen enthält - selbst nach deren Bereinigung - an eine der DOM-Manipulationsmethoden von jQuery (d. h. .html(), .append() und andere) nicht vertrauenswürdigen Code ausführen. Dieses Problem wurde in jQuery 3.5.0 behoben.
* *Sicherheitsupdate für CVE-2022-2191*
  * In den Eclipse Jetty-Versionen 10.0.0 bis 10.0.9 und 11.0.0 bis 11.0.9 gibt SslConnection im Falle von Fehlercodepfaden keine ByteBuffer aus dem konfigurierten ByteBufferPool frei.
* *Sicherheitsupdate für CVE-2022-2047*
  * In Eclipse Jetty-Versionen 9.4.0 bis 9.4.46 und 10.0.0 bis 10.0.9 sowie 11.0.0 bis 11.0.9 erkennt die Jetty HttpURI-Klasse beim Parsen des Autoritätssegments einer http-Schema-URI fälschlicherweise eine ungültige Eingabe als Hostname. Dies kann zu Fehlern in einem Proxy-Szenario führen.
* *Sicherheitsupdate für CVE-2022-31160*
  * jQuery UI ist ein kuratierter Satz von Benutzeroberflächeninteraktionen, Effekten, Widgets und Themen, die auf jQuery basieren. Versionen vor 1.13.2 sind potenziell anfällig für Cross-Site-Scripting. Die Initialisierung eines checkboxradio-Widgets auf einer Eingabe, die in einem Label eingeschlossen ist, führt dazu, dass der Inhalt des übergeordneten Labels als das Eingabe-Label betrachtet wird. Der Aufruf von ''.checkboxradio( "refresh" )'' auf einem solchen Widget und das anfängliche HTML enthielt kodierte HTML-Entitäten, die fälschlicherweise dekodiert wurden. Dies kann zu potenziell ausführbarem JavaScript-Code führen. Der Fehler wurde in jQuery UI 1.13.2 behoben. Um das Problem zu beheben, kann jemand, der das anfängliche HTML ändern kann, alle Nicht-Eingabeinhalte des ''label'' in eine ''span'' einpacken.
* *Sicherheitsupdate für CVE-2022-31197*
  * Der PostgreSQL JDBC-Treiber (kurz: PgJDBC) ermöglicht es Java-Programmen, sich mit einer PostgreSQL-Datenbank zu verbinden, indem sie standardmäßigen, datenbankunabhängigen Java-Code verwenden. Die PGJDBC-Implementierung der Methode ''java.sql.ResultRow.refreshRow()'' führt kein Escaping von Spaltennamen durch, so dass ein bösartiger Spaltenname, der einen Anweisungsterminator, z. B. '';'', enthält, zu einer SQL-Injektion führen kann. Dies könnte dazu führen, dass zusätzliche SQL-Befehle als JDBC-Benutzer der Anwendung ausgeführt werden. Benutzeranwendungen, die die Methode ''ResultSet.refreshRow()'' nicht aufrufen, sind davon nicht betroffen. Benutzeranwendungen, die diese Methode aufrufen, sind betroffen, wenn die zugrunde liegende Datenbank, die sie über ihre JDBC-Anwendung abfragen, unter der Kontrolle eines Angreifers stehen könnte. Für den Angriff muss der Angreifer den Benutzer dazu bringen, SQL gegen einen Tabellennamen auszuführen, dessen Spaltennamen das bösartige SQL enthalten, und anschließend die Methode ''refreshRow()'' für das ResultSet aufzurufen. Beachten Sie, dass der JDBC-Benutzer der Anwendung und der Eigentümer des Schemas nicht identisch sein müssen. Eine JDBC-Anwendung, die als privilegierter Benutzer ausgeführt wird und Datenbankschemata abfragt, die potenziell böswilligen, weniger privilegierten Benutzern gehören, wäre anfällig. In dieser Situation könnte der böswillige Benutzer ein Schema erstellen, das die Anwendung dazu veranlasst, Befehle als privilegierter Benutzer auszuführen. Die gepatchten Versionen werden als ''42.2.26'' und ''42.4.1'' veröffentlicht. Den Benutzern wird empfohlen, ein Upgrade durchzuführen. Es gibt keine bekannten Umgehungsmöglichkeiten für dieses Problem.
* *Sicherheitsupdate für CVE-2022-31129*
  * moment ist eine JavaScript-Datumsbibliothek zum Parsen, Validieren, Manipulieren und Formatieren von Daten. Es wurde festgestellt, dass die betroffenen Versionen von moment einen ineffizienten Parsing-Algorithmus verwenden. Insbesondere die Verwendung von String-Date-Parsing in Moment (genauer gesagt rfc2822-Parsing, das standardmäßig versucht wird) hat eine quadratische (N^2) Komplexität bei bestimmten Eingaben. Bei Eingaben von mehr als 10k Zeichen können Benutzer eine deutliche Verlangsamung feststellen. Benutzer, die vom Benutzer bereitgestellte Zeichenketten ohne Überprüfung der korrekten Länge an den Moment-Konstruktor übergeben, sind anfällig für (Re)DoS-Angriffe. Das Problem ist in 2.29.4 behoben, der Patch kann mit minimalen Anpassungen auf alle betroffenen Versionen angewendet werden. Benutzern wird empfohlen, ein Upgrade durchzuführen. Benutzer, die nicht upgraden können, sollten in Erwägung ziehen, die Länge von Datumsangaben zu begrenzen, die von Benutzereingaben akzeptiert werden.
* *Sicherheitsupdate für CVE-2022-36033*
  * jsoup ist ein Java-HTML-Parser, der für HTML-Bearbeitung, Bereinigung, Scraping und Cross-Site-Scripting (XSS)-Sicherheit entwickelt wurde. jsoup kann HTML mit ''javascript:''-URL-Ausdrücken falsch bereinigen, was XSS-Angriffe ermöglichen könnte, wenn ein Leser anschließend auf diesen Link klickt. Wenn die nicht standardmäßige Option ''SafeList.preserveRelativeLinks'' aktiviert ist, wird HTML mit ''javascript:''-URLs, die mit Steuerzeichen erstellt wurden, nicht bereinigt. Wenn die Website, auf der dieser HTML-Code veröffentlicht wird, keine Inhaltssicherheitsrichtlinie festgelegt hat, ist ein XSS-Angriff möglich. Dieses Problem wurde in jsoup 1.15.3 behoben. Benutzer sollten auf diese Version aktualisieren. Da die nicht sanitisierten Eingaben möglicherweise erhalten geblieben sind, sollten alte Inhalte mit der aktualisierten Version erneut bereinigt werden. Um dieses Problem zu beheben, ohne sofort zu aktualisieren: - deaktivieren Sie ''SafeList.preserveRelativeLinks'', wodurch Eingabe-URLs als absolute URLs umgeschrieben werden - stellen Sie sicher, dass eine geeignete [[https:*developer.mozilla.org/de-US/docs/Web/HTTP/CSP|Content Security Policy]] definiert ist. (Diese sollte unabhängig von einem Upgrade als bewährtes Verfahren zur Tiefenverteidigung verwendet werden)
* *Sicherheitsupdate für CVE-2022-42003*
  * In FasterXML jackson-databind vor 2.14.0-rc1 kann es aufgrund einer fehlenden PrÃ?fung in Deserialisierern fÃ?r primitive Werte zu einer ErschÃ¶pfung der Ressourcen kommen, um eine tiefe Verschachtelung von Wrapper-Arrays zu vermeiden, wenn die Funktion UNWRAP_SINGLE_VALUE_ARRAYS aktiviert ist. Zusätzliche Korrekturversion in 2.13.4.1 und 2.12.17.1
* *Sicherheitsupdate für CVE-2022-31684*
  * Der Reactor Netty HTTP Server, in den Versionen 1.0.11 - 1.0.23, kann in einigen Fällen von ungültigen HTTP-Anfragen Anfrage-Header protokollieren. Die protokollierten Header können denjenigen, die Zugriff auf die Serverprotokolle haben, gültige Zugriffstoken offenbaren. Dies kann nur ungültige HTTP-Anfragen betreffen, bei denen die Protokollierung auf WARN-Ebene aktiviert ist.
* *Sicherheitsupdate für CVE-2021-37533*
  * Vor Apache Commons Net 3.9.0 vertraute der FTP-Client von Net standardmäßig dem Host aus der PASV-Antwort. Ein bösartiger Server kann den Commons Net-Code umleiten, um einen anderen Host zu verwenden, aber der Benutzer muss sich erst mit dem bösartigen Server verbinden. Dies kann dazu führen, dass Informationen über Dienste, die im privaten Netzwerk des Clients laufen, preisgegeben werden. Die Voreinstellung in Version 3.9.0 ist nun false, um solche Hosts zu ignorieren, wie es cURL tut. Siehe https:*issues.apache.org/jira/browse/NET-711.
* *Sicherheitsupdate für CVE-2022-23494*
  * tinymce ist ein Open-Source-Rich-Text-Editor. Eine Cross-Site-Scripting (XSS)-Schwachstelle wurde in den Warn- und Bestätigungsdialogen entdeckt, wenn diese Dialoge mit bösartigen HTML-Inhalten versehen wurden. Dies kann in Plugins auftreten, die die Warn- oder Bestätigungsdialoge verwenden, wie z.B. im `image`-Plugin, das diese Dialoge präsentiert, wenn bestimmte Fehler auftreten. Die Schwachstelle ermöglichte die Ausführung von beliebigem JavaScript, wenn eine Warnung in der TinyMCE-Benutzeroberfläche für den aktuellen Benutzer angezeigt wurde. Diese Schwachstelle wurde in TinyMCE 5.10.7 und TinyMCE 6.3.1 gepatcht, indem sichergestellt wurde, dass die HTML-Sanitisierung auch nach dem Entpacken ungültiger Elemente durchgeführt wurde. Benutzern wird empfohlen, entweder auf 5.10.7 oder 6.3.1 zu aktualisieren. Benutzer, die nicht upgraden können, können sicherstellen, dass der `images_upload_handler` einen gültigen Wert gemäß der images_upload_handler-Dokumentation zurückgibt.
* *Sicherheitsupdate für CVE-2022-41915*
  * Das Netty-Projekt ist ein ereignisgesteuertes, asynchrones Netzwerkanwendungs-Framework. Ab Version 4.1.83.Final und vor 4.1.86.Final wurde beim Aufruf von `DefaultHttpHeadesr.set` mit einem _Iterator_ von Werten keine Validierung der Header-Werte durchgeführt, so dass bösartige Header-Werte im Iterator HTTP Response Splitting durchführen konnten. Dieses Problem wurde in Version 4.1.86.Final behoben. Integratoren können das Problem umgehen, indem sie den Aufruf `DefaultHttpHeaders.set(CharSequence, Iterator)` in einen `remove()`-Aufruf ändern und `add()` in einer Schleife über den Iterator der Werte aufrufen.
* *Sicherheitsupdate für CVE-2023-24998*
  * Apache Commons FileUpload vor 1.5 begrenzt nicht die Anzahl der zu verarbeitenden Anfrageteile, was dazu führt, dass ein Angreifer mit einem bösartigen Upload oder einer Reihe von Uploads einen DoS auslösen kann.
  