TopLogic - the automated application engine
  • Releases
  • Dokumentation
  • Github
  • Discord
  1. Home
  2. Releases
  3. TL_7.9.4
  4. #28570

7.9.4
TopLogic Release

2025-04-11

Enhancement

Major
#28022
TL-Script: Access to application configurations
#28173
TLScript: new function for parsing Excel files
#28310
Layout editor: Process view
#28532
New TL script function isCompatibleValue()
#28539
TLScript-Funktion für den Zugriff auf konfigurierte Formate
#28550
Prevent leading and trailing white space for model-based fields
#28558
OpenAPI: Enable multiple alternative authentication mechanisms for the same API
#28564
OpenAPI: Accept authorization token, even if it contains no user information
Detail
#28523
Option list is not updated if the options are calculated via configured scripts
#28541
Make lock strategy available in templates for Grid and Tree-Grid
#28542
Support for SQL "like" construct
#28561
Dynamic file names for (Excel) downloads

Bugfix

Major
#28578
Oracle JDBC driver update: Bug "ORA-01461" in JDBC driver
Detail
#27975
Excel export in model editor has wrong command group
#28303
Customize documentation for integrating icon fonts
#28375
Overwriting I18N attributes makes existing values unreachable
#28445
Ignore the selection column for the "Automatically adjust column widths" function
#28529
NullPointerException for modifiedRevision() on new compositions
#28531
Pressing ESCAPE or ENTER after a reload throws an error and triggers a reload
#28540
Backward references in transient objects are not resolved correctly
#28552
Replace the obsolete term "Wrapper" with the current term "TLObject" in the CompositionFieldProvider class.
#28553
Type conversion error for calculated columns of type tl:core:Duration
#28555
Images in HTML attributes are only displayed after saving
#28557
Size restriction for the "street" attribute of a company contact too strict
#28563
JSON: NumberFormatException when parsing large integer values
#28565
CSS class ' tblRight' does not apply for fields in edit mode and in the header
#28566
Consider composition attributes Do not include dynamic designations in the table title
#28570
Missing Validation of OAuth State Parameter
#28582
ClassCastException when selecting all rows in table
#28584
Template for tables with "resetInvisible" option
Bugfix

Detail

#28570

Missing Validation of OAuth State Parameter

DifaV7SecurityIssue

The application does not provide the state parameter in the authentication flow. Attackers can exploit this behavior for Cross-Site Request Forgery (CSRF) attacks. The usage of a state parameter with a high entropy is required.

For example: Opening the following URL https://my.server/my-app/servlet/callback?client_name=pac4j-generic&code=LMC22f[...]AAABn results in the output of a session cookie and thus in a successful login to the application, despite no state parameter value provided. An attacker could exploit this behavior to perform a Cross-Site Request Forgery (CSRF) attack. By clicking this link, a user's own session is overwritten with the attacker's session. If a user does not notice the session switch, sensitive information could be stored in the attacker's account.

Configuration

A CSRF token is generated if this is enabled via the configuration.

   <with-state>true</with-state>

In:

<config service-class="com.top_logic.security.auth.pac4j.config.Pac4jConfigFactory"> <instance> <clients> <client name="..."> <with-state>true</with-state> </client> </clients> </instance> </config>

Improvement

The default value for "with-state" is set to <code>true</code>, so that this must be explicitly configured away in future if you do not want protection against CSRF.

Test

  • Login via OIDC
  • Check that a token is generated in org.pac4j.core.util.generator.RandomValueGenerator.generateValue(CallContext)
  • and that in org.pac4j.oidc.credentials.extractor.OidcCredentialsExtractor.extract(CallContext) the token is compared with the token stored in the session.
  • Get Started
  • Github
  • Discord
  • Das Unternehmen hinter TopLogic
  • Softwareentwicklung heute
  • Kontakt

© Copyright – Business Operation Systems GmbH

  • top-logic.com
  • Nutzungsbedingungen
  • Impressum
  • Rechtlicher Hinweis
  • Datenschutz
  • DE
  • Login