Wrapper for Reducing Privileges in Imported Software Packages

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The use of third-party software packages in computing systems introduces security vulnerabilities due to the lack of comprehensive review, making them susceptible to unknown security threats and exploits, even when best security practices are employed.

Innovation Solution

Implementing a monitoring service that profiles the behavior of untrusted code during a learning period and compares it to expected behavior, allowing for real-time monitoring and enforcement to detect and mitigate potential security breaches, along with a wrapping application that reduces privileges of untrusted code and a risk profiling application that assesses the security history of software packages to determine risk levels.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If third-party software packages are used to speed up software development, then productivity is improved, but security reliability deteriorates due to unknown vulnerabilities and malicious code

Engineering Contradiction:
Improvesoftware development speedVSAvoidsecurity reliability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent introduces a wrapper as an intermediary layer between the trusted code and untrusted third-party packages. The wrapper executes the untrusted code in an isolated environment with reduced privileges, preventing direct access to sensitive system resources. This mediator approach allows the system to benefit from third-party packages while mitigating their security risks through controlled execution.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent segments the execution environment by creating separate privileged and unprivileged modes. The wrapper divides the code execution into distinct segments: trusted code running with full privileges and untrusted third-party code running with restricted privileges. This segmentation isolates potential security threats to specific segments, preventing system-wide compromise.

Inventive Principle:
Principle #1Segmentation

2Reliability

If comprehensive security review of every imported package is performed to ensure security, then security reliability is improved, but productivity deteriorates due to time-consuming analysis

Engineering Contradiction:
Improvesecurity reliabilityVSAvoidsoftware development speed
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent performs preliminary security actions by wrapping untrusted code before execution. The wrapper is created in advance to establish security boundaries and privilege restrictions. This preliminary security setup allows the untrusted code to execute safely without requiring comprehensive real-time analysis, thus maintaining development speed while ensuring security.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The wrapper serves as a mediator that provides security enforcement without requiring direct inspection of the untrusted code. Instead of reviewing every imported package comprehensively, the system uses the wrapper intermediary to enforce security policies dynamically during execution, reducing the overhead of security verification.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of operation

If untrusted code is allowed to execute with full privileges to maintain functionality, then ease of operation is improved, but security reliability deteriorates due to potential malicious activities

Engineering Contradiction:
Improvecode execution simplicityVSAvoidsecurity reliability
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent applies local quality by granting different privilege levels to different parts of the system. The wrapper ensures that untrusted code executes with locally restricted privileges appropriate to its specific functionality, rather than uniformly high privileges. This localized privilege assignment maintains necessary functionality while minimizing security exposure.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The wrapper acts as an intermediary that automatically manages privilege escalation and restriction. Instead of requiring manual configuration of complex permission sets, the wrapper mediates between the untrusted code's needs and system security requirements, providing appropriate access rights dynamically during execution.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9965618B1Reducing privileges for imported software packages
Publication Date: 2018.05.08 AMAZON TECH INC
  • US9965618B1 patent drawing
  • US9965618B1 patent drawing
  • US9965618B1 patent drawing

AI summary

Disclosed are various embodiments for reducing privileges for imported software packages, such as software libraries. Trusted code is received that is configured to use untrusted code. A wrapper is generated for the untrusted code. The trusted code is reconfigured to use the wrapper. The wrapper is configured to invoke the untrusted code with reduced privileges as compared to the trusted code.