Dynamic Taint Analysis for Sensitive Data Leak Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing tools fail to accurately and efficiently track sensitive data leaks from software applications, particularly when data is transformed or encrypted, and often detect leaks after they occur, lacking protection against filesystem and established connections.

Innovation Solution

Dynamic taint analysis is employed to mark sensitive data as tainted and track its propagation through the application, using binary instrumentation at the instruction and function levels, independent of source code modifications or operating system changes, with on-demand instrumentation to improve performance and accuracy.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If hardware-level data tracking is used, then data tracking capability is improved, but performance overhead and analysis complexity increase significantly

Engineering Contradiction:
Improvedata tracking accuracyVSAvoidsystem performance
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent introduces an intermediary layer (software-based taint analysis mechanism) between the hardware and the data being tracked. This intermediary uses binary instrumentation to mark sensitive data and track its flow without requiring hardware modifications, thus maintaining tracking accuracy while reducing performance overhead compared to hardware-level approaches.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces hardware-level tracking mechanisms with a software-based solution using binary instrumentation and taint analysis. This substitution eliminates the need for specialized hardware while achieving comparable or superior tracking capabilities with lower performance impact.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Ease of manufacture

If system call interposition is used for data tracking, then implementation is simplified, but tracking accuracy decreases when applications transform data without using monitored system calls

Engineering Contradiction:
Improveimplementation easeVSAvoiddata tracking accuracy
Core Design Contradiction:
Ease of manufactureVSMeasurement precision

Solution Approach 1:

The patent employs dynamic binary instrumentation that adapts to application behavior in real-time. The taint analysis mechanism dynamically tracks data flow through function calls and data transformations, adjusting its monitoring approach based on the actual execution path, thereby maintaining high tracking accuracy without requiring comprehensive system call interception.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent segments the data tracking function into modular components that can be independently applied to different parts of the application. By instrumenting specific functions and data paths individually, the system achieves comprehensive tracking coverage while maintaining implementation flexibility and accuracy even when applications use unconventional data transformation methods.

Inventive Principle:
Principle #1Segmentation

3Ease of manufacture

If pattern matching tools are used to detect leaks, then implementation is straightforward, but detection accuracy decreases and leaks are detected after they occur

Engineering Contradiction:
Improvetool implementation easeVSAvoidleak detection accuracy
Core Design Contradiction:
Ease of manufactureVSMeasurement precision

Solution Approach 1:

The patent performs preliminary marking of sensitive data before it can be leaked or transformed. By applying taint labels to sensitive data at the source, the system proactively tracks its flow throughout the application, enabling detection of leaks before they reach output channels, rather than relying on post-hoc pattern matching of leaked data.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements a feedback mechanism where the taint analysis results are continuously monitored and fed back to identify potential leaks. This real-time feedback loop enables the system to detect and alert on data leaks as they occur, providing immediate feedback rather than delayed detection through pattern matching of already-leaked data.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9548986B2Sensitive data tracking using dynamic taint analysis
Publication Date: 2017.01.17 INTEL CORP
  • US9548986B2 patent drawing
  • US9548986B2 patent drawing
  • US9548986B2 patent drawing

AI summary

A system and method for tracking sensitive data uses dynamic taint analysis to track sensitive data as the data flows through a target application running on a computer system. In general, the system and method for tracking sensitive data marks data as tainted when the data input to the target application is indicated as sensitive. The system and method may then track the propagation of the tainted data as the data is read from and written to memory by the target application to detect if the tainted data is output from the application (e.g., leaked). Dynamic binary translation may be used to provide binary instrumentation of the target application for dynamic taint analysis to track propagation of the tainted data at the instruction level and/or the function level. Of course, many alternatives, variations, and modifications are possible without departing from this embodiment.