Recursive Descent Parsing and AST Transformation for Protected Executables

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing operating systems grant applications extensive control over file systems, allowing malware to surreptitiously access and manipulate user data without user consent, leading to unauthorized data access, transmission, and execution of malicious code.

Innovation Solution

Implementing an operating system with features that restrict applications to specific subsets of system functions, require user volition for access, and separate user and application data storage areas to prevent unauthorized access and transmission, ensuring user control over data access and network activity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If applications are granted extensive control over file systems, then application functionality and ease of operation are improved, but security and protection against unauthorized access deteriorate

Engineering Contradiction:
Improveapplication functionalityVSAvoidunauthorized access
Core Design Contradiction:
Ease of operationVSObject-affected harmful factors

Solution Approach 1:

The patent divides the file system into distinct storage areas: user data storage areas and application data storage areas. Applications are restricted to accessing only their designated application data storage areas, while user data remains isolated. This segmentation prevents applications from surreptitiously accessing user files while maintaining application functionality within their designated boundaries.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The operating system acts as an intermediary between applications and the file system. The OS mediates all file access requests by checking whether applications are attempting to access user data or their own application data, and enforces access control policies accordingly. This intermediary role allows the system to maintain security while permitting legitimate application operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If applications can access any user data file, then data accessibility is improved, but data security and user control deteriorate

Engineering Contradiction:
Improvedata accessibilityVSAvoiddata security
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent implements separate storage areas for user data and application data, with clear access boundaries. Each application is assigned a specific application data storage area that it can access, while user data storage areas remain inaccessible to applications. This segmentation maintains data security while allowing applications to access their own data as needed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different parts of the file system have different access qualities. Application data storage areas are accessible to their respective applications with full read/write permissions, while user data storage areas have restricted access. This local differentiation of access rights ensures that applications can function properly without compromising user data security.

Inventive Principle:
Principle #3Local quality

3Ease of operation

If applications can initiate network transmissions autonomously, then network connectivity is improved, but protection against malicious transmission deteriorates

Engineering Contradiction:
Improvenetwork connectivityVSAvoidmalicious transmission
Core Design Contradiction:
Ease of operationVSObject-generated harmful factors

Solution Approach 1:

The patent requires user volition or explicit permission as a preliminary action before applications can initiate network transmissions. The system checks for user authorization before allowing any network activity, preventing autonomous or surreptitious transmissions by applications. This preliminary verification maintains network connectivity functionality while blocking malicious or unauthorized transmissions.

Inventive Principle:
Principle #10Preliminary action

4Adaptability or versatility

If applications can launch other applications without restriction, then system flexibility is improved, but protection against surreptitious execution deteriorates

Engineering Contradiction:
Improvesystem flexibilityVSAvoidsurreptitious execution
Core Design Contradiction:
Adaptability or versatilityVSObject-affected harmful factors

Solution Approach 1:

The patent implements a feedback mechanism where the operating system monitors and verifies each application launch request. Before allowing an application to launch another application, the OS checks for user permission or authorized conditions. This feedback loop maintains system flexibility for legitimate application launches while preventing surreptitious or malicious execution of applications.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS12373603B2Methods and systems for recursive descent parsing
Publication Date: 2025.07.29 SECURE COMPUTING LLC
  • US12373603B2 patent drawing
  • US12373603B2 patent drawing
  • US12373603B2 patent drawing

AI summary

Methods, systems, and devices for parsing text are described herein. A method of securing executable files is performed at a computing device having one or more processors and memory. The memory stories one or more programs configured for execution by the one or more processors. The computing device obtains source text that comprises a disassembled executable file and identifies, via a general parser module, the syntax of the source text by performing a recursive descent parsing of the source text. The device generates an abstract syntax tree (AST) for the source text based on the identified syntax and generates a transformed AST from the generated AST by replacing one or more system calls with respective protected system functions. The device also generates a secured executable file by assembling the transformed AST.