Application Attestation via Challenge-Response Binary Hashing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing solutions fail to effectively ensure that applications accessing enterprise servers are legitimate and not spoofing or maliciously modified, particularly in enterprise environments where applications may be created by third parties or modified locally, leading to potential data security threats.
Innovation Solution
A method involving a network element that sends a challenge to an application, processes the response, and takes enforcement actions if it determines the response is invalid, utilizing a unified endpoint management system and secure containers to verify the authenticity of applications through attestation processes, including periodic checks and a grace period for responses.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If applications are allowed to be created by third parties or modified locally, then application versatility and adaptability improve, but security and reliability deteriorate due to potential spoofing and malicious modifications
Solution Approach 1:
The system performs preliminary attestation by sending a challenge to the application before allowing it to access enterprise resources. The application must prove its authenticity by providing a valid response based on its binary content and signature, preventing malicious applications from accessing the system in the first place
Solution Approach 2:
The system implements continuous feedback through periodic attestation challenges sent to running applications. This feedback mechanism verifies that applications remain authentic and have not been modified or replaced with malicious versions during operation
2Measurement precision
If traditional challenge-response mechanisms are used for application verification, then authentication capability improves, but the system fails to detect spoofed applications with identical identifiers
Solution Approach 1:
The system extracts and verifies the actual binary content of the application by requiring a response based on hashing the application's binary data. This extraction of the binary content for verification purposes allows the system to detect spoofed applications even when they have identical metadata and identifiers to legitimate applications
Solution Approach 2:
The system introduces an intermediary verification step where the application must compute and return a hash of its binary content combined with a nonce. This intermediary mechanism provides additional verification beyond simple identifier matching, enabling detection of applications with copied identifiers but different actual code
3Reliability
If strict application verification is implemented, then security improves, but system complexity and verification time increase
Solution Approach 1:
The application itself performs the verification work by computing the hash of its own binary content in response to the challenge. This self-service approach shifts the computational burden from the enterprise server to the application, simplifying the server's role while maintaining strong security verification
Solution Approach 2:
The system changes the verification parameter from checking application identifiers (which can be copied) to checking a hash of the actual binary content (which is unique). This parameter change maintains security while using simple cryptographic operations that do not significantly increase system complexity
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A method at a network element for attestation of applications, the method including sending a challenge to an application at an electronic device; receiving a response from the electronic device; processing the response; and upon determining that the response is invalid based on the processing, taking an enforcement action against the application.