Type-Based Security Labeling for Missing Function Call Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvesecurity policy enforcementVSAvoidsecurity context flexibility
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

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.

Inventive Principle:
Principle #3Local quality

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.

Inventive Principle:
Principle #35Parameter changes

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

Engineering Contradiction:
Improvesecurity policy precisionVSAvoidpolicy mechanism complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

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.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Reliability

If security labels are assigned to enforce information flow ordering, then missing authorization functionality is detected, but the system complexity increases

Engineering Contradiction:
Improveauthorization detection accuracyVSAvoidtype checking complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

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.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS10366232B1Language-based missing function call detection
Publication Date: 2019.07.30 HRL LAB
  • US10366232B1 patent drawing
  • US10366232B1 patent drawing
  • US10366232B1 patent drawing

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.