Type-Based Security Labeling for Missing Function Call Detection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current security policies and information flow checking processes are inflexible and unable to effectively enforce complex ordering relationships between security-sensitive operations, leading to difficulties in detecting missing authorization and authentication functionalities in source code, which can result in security vulnerabilities.
Innovation Solution
A system that uses type checking to detect missing authorization and authentication functionalities by assigning security labels to function identifiers, enforcing required information flows, and determining the impact of side-effects and order of function calls on security, thereby preventing vulnerabilities.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If simple ordering relationships are enforced using substructural type systems, then basic function call ordering (e.g., file open before close) is ensured, but complex security-sensitive operations with varying security contexts cannot be properly enforced
Solution Approach 1:
The patent assigns different security labels to different function identifiers based on their specific security requirements. Each function gets a tailored security context with appropriate authorization and authentication labels, rather than applying a uniform security model. This allows complex security-sensitive operations to be enforced with precision while maintaining flexibility for different security contexts.
Solution Approach 2:
The patent introduces security labels as parameters that can be assigned to function identifiers. These labels encode authorization and authentication requirements, allowing the type system to dynamically adapt to different security contexts. By changing the parameter structure from simple ordering to labeled security contexts, the system can enforce both basic and complex security policies.
2Measurement precision
If traditional information flow checking is used, then simple flow-sensitivity is supported, but precise security policies for complex operations cannot be enforced
Solution Approach 1:
The patent extends the traditional information flow checking by adding security labels as an additional dimension. Instead of only tracking flow-sensitivity, the system now tracks authorization and authentication contexts through labels. This dimensional extension allows precise security policies to be enforced without significantly increasing mechanism complexity, as the labeling approach builds on existing type checking infrastructure.
3Reliability
If security labels are assigned to enforce information flow ordering, then missing authorization functionality is detected, but the system complexity increases
Solution Approach 1:
The patent makes the security label assignment process self-service by integrating it into the existing type checking mechanism. The type checker automatically processes security labels and enforces ordering requirements without requiring separate complex verification steps. This approach detects missing authorization functionality while minimizing additional system complexity by reusing existing type checking infrastructure.
Data Source
AI summary
Described is a language-based system for detecting function calls. The system detects missing authorization and authentication functionality in computer software source code via typechecking. New classes of software vulnerability in the computer software source code are detected.


