Session Vault Intermediary for Web Application Identity Protection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Web applications using session identifiers are vulnerable to attacks, as stolen session identifiers can be used to impersonate the web application to the server, leading to unauthorized operations, due to the storage of session identifiers in web browser cookie jars and potential hijacking of the web application or browser.

Innovation Solution

A session identifier routine is logically positioned between the web application and the server, intercepting messages and transforming client session identifiers into server session identifiers, ensuring that only the server session identifier is used for communication with the server, thereby preventing unauthorized access.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If session identifiers are stored in web browser cookie jars for web application communication, then ease of operation is improved, but security deteriorates due to vulnerability to theft and hijacking

Engineering Contradiction:
Improvesession managementVSAvoidsession identifier theft
Core Design Contradiction:
Ease of operationVSObject-affected harmful factors

Solution Approach 1:

A service worker acts as an intermediary component between the web application and the browser's cookie jar. The service worker intercepts session identifier retrieval operations, transforms the session identifier format, and provides the transformed identifier to the web application. This intermediary layer prevents direct access to the original session identifier stored in the cookie jar, thereby mitigating theft vulnerability while maintaining session management functionality.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Object-affected harmful factors

If session identifiers are transformed by a service worker to enhance security, then security is improved, but device complexity increases due to additional transformation logic

Engineering Contradiction:
Improvesession identifier protectionVSAvoidsession identifier routine
Core Design Contradiction:
Object-affected harmful factorsVSDevice complexity

Solution Approach 1:

The service worker implements self-service by automatically transforming session identifiers without requiring manual intervention or complex configuration. The transformation logic is embedded within the service worker's lifecycle events, allowing it to autonomously intercept and transform session identifiers as they are accessed by the web application. This self-service approach enhances security while minimizing the complexity burden on the overall system.

Inventive Principle:
Principle #25Self-service

3Object-affected harmful factors

If server session identifiers are used instead of client session identifiers, then security is improved, but adaptability deteriorates as the client cannot directly use the server session identifier

Engineering Contradiction:
Improveimpersonation preventionVSAvoidsession identifier compatibility
Core Design Contradiction:
Object-affected harmful factorsVSAdaptability or versatility

Solution Approach 1:

Instead of requiring the client to directly use the server session identifier, the approach is inverted: the service worker transforms the client's original session identifier into a protected format that the server can recognize. This inversion maintains client-side adaptability while achieving server-side security, as the transformed identifier preserves the necessary compatibility information for the server to validate the session without exposing the original identifier to theft.

Inventive Principle:
Principle #13The other way round (Inversion)

Data Source

PatentUS10992759B2Web application session security with protected session identifiers
Publication Date: 2021.04.27 SAP SE
  • US10992759B2 patent drawing
  • US10992759B2 patent drawing
  • US10992759B2 patent drawing

AI summary

Various examples are directed to systems and methods for secure communication sessions between a web application and a server. A session vault routine executing at a computing device may receive a first request message directed to a server computing device. The first request message may comprise a client session identifier at a session identifier field of the first request message. The session vault routine may access supplemental session identifier data from a session vault persistence at the data storage. The session vault routine may write the supplemental session identifier data to a second field of the first request message, and initiate sending the first request message to the server computing device.