Defending Applications Invoking Anonymous Functions

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Applications that invoke anonymous functions are vulnerable to security threats, as compromised anonymous functions can lead to insecure activities, such as data theft, due to their short lifecycle and lack of execution engines, making it difficult to detect and mitigate potential cyber threats effectively.

Innovation Solution

A method and system for defending applications that invoke anonymous functions by analyzing potential threat branches, rewiring function calls to substitute security functions, and using machine learning to detect anomalies, thereby creating a secured instance of the application that monitors and mitigates unsecure activities.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If anonymous functions are used for short-term responses to specific events, then the application can respond quickly to user requests, but the short lifecycle makes it difficult to detect and mitigate cyber threats

Engineering Contradiction:
Improveresponse speedVSAvoidsecurity detection capability
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The system performs preliminary actions by analyzing the application code to identify branches that call anonymous functions before the application is executed. This advance analysis creates a security map that enables real-time monitoring and threat mitigation during runtime, resolving the contradiction between fast response and security detection.

Inventive Principle:
Principle #10Preliminary action

2Device complexity

If anonymous functions do not require an execution engine, then the interface between user-created code and the framework is smaller, but this also makes it harder to monitor and secure the function invocations

Engineering Contradiction:
Improveinterface complexityVSAvoidfunction call monitoring
Core Design Contradiction:
Device complexityVSDifficulty of detecting and measuring

Solution Approach 1:

The system introduces an intermediary security layer that acts as a mediator between the simplified anonymous function interface and the monitoring system. This intermediary captures and analyzes function calls without requiring a complex execution engine, enabling effective monitoring while maintaining interface simplicity.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If the application analyzes and rewrites function calls to create secured instances, then security is improved, but the application processing time and complexity increase

Engineering Contradiction:
Improvesecurity levelVSAvoidapplication processing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs the time-consuming analysis and rewriting operations in advance, before the application is deployed or executed. By creating secured instances beforehand, the runtime overhead is minimized while still achieving comprehensive security coverage.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system creates copies of the application with security modifications rather than modifying the original. This copying approach allows the secured instance to run efficiently while the analysis and rewriting processes occur separately during the preparation phase.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS10943007B2System and method for defending applications invoking anonymous functions
Publication Date: 2021.03.09 PALO ALTO NETWORKS INC
  • US10943007B2 patent drawing
  • US10943007B2 patent drawing
  • US10943007B2 patent drawing

AI summary

A system and method for defending an application configured to invoke anonymous functions. The method includes analyzing the application to determine at least one branch of the application, wherein each branch is an instruction that deviates from a default behavior of the application; identifying, based on the at least one branch of the application and at least one first anonymous function, at least one potential threat branch, each potential threat branch including a call to one of the at least one first anonymous function; and rewiring at least one first function call of the application to create a secured instance of the application, wherein each of the at least one first function call is to one of the at least one first anonymous function prior to rewiring.