Firewall Authorization for Trojan DLL Communication

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing firewalls are inadequate in preventing Trojan DLLs from communicating by leveraging authorized application programs, as they can bypass detection through various methods, including loading into the address space of authorized applications, spoofing, or using allowed protocols and channels, making it difficult to identify and block unauthorized communication.

Innovation Solution

A system and method that identify program modules using CPU call history and perform authorization tests to intercept and validate functions, ensuring only authorized program modules can communicate, thereby preventing unauthorized modules from transmitting data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional firewalls block unauthorized application programs, then Trojan EXEs are blocked, but Trojan DLLs can still bypass the firewall by leveraging authorized application programs

Engineering Contradiction:
Improvefirewall blocking capabilityVSAvoidTrojan DLL bypass capability
Core Design Contradiction:
ReliabilityVSObject-affected harmful factors

Solution Approach 1:

The invention segments the authorization check process into two levels: first checking if the parent application program is authorized, then checking if the specific DLL module is authorized. This segmentation allows the firewall to maintain blocking capability while preventing Trojan DLL bypasses through hierarchical authorization validation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The invention introduces a call history data structure as an intermediary mechanism to track and record the execution context of authorized application programs. This intermediary allows the firewall to monitor which DLLs are loaded by authorized applications and verify their authorization status, preventing Trojan DLLs from leveraging authorized applications without detection.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If firewalls limit communication to specific protocols and channels, then some Trojan communication is blocked, but Trojans can still communicate using allowed protocols and channels

Engineering Contradiction:
Improvecommunication blockingVSAvoidprotocol flexibility
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The invention performs preliminary authorization checks on DLL modules before they can communicate. By validating the authorization status of each DLL in the call history before allowing communication, the system prevents Trojans from using allowed protocols and channels, as unauthorized DLLs are blocked at the authorization stage rather than at the communication stage.

Inventive Principle:
Principle #10Preliminary action

3Reliability

If firewalls protect program modules from overwriting, then some Trojan prevention is achieved, but it is difficult to identify which modules belong to authorized applications

Engineering Contradiction:
Improvemodule protectionVSAvoidmodule identification
Core Design Contradiction:
ReliabilityVSDifficulty of detecting and measuring

Solution Approach 1:

The invention implements a feedback mechanism through the call history data structure that continuously tracks which DLLs are loaded by authorized application programs. This feedback loop allows the firewall to learn and remember the authorized module relationships, making it easier to identify and protect authorized modules from overwriting by Trojans.

Inventive Principle:
Principle #23Feedback

4Reliability

If firewalls require re-authorization of application programs, then some Trojan DLL protection is achieved, but user intervention is required and many applications routinely modify registrations

Engineering Contradiction:
ImproveTrojan protectionVSAvoiduser intervention requirement
Core Design Contradiction:
ReliabilityVSEase of operation

Solution Approach 1:

The invention enables the firewall to perform self-service authorization management by automatically tracking and validating DLL module authorization status through the call history mechanism. The system automatically determines which modules need re-authorization based on their usage patterns and communication attempts, eliminating the need for manual user intervention while maintaining robust Trojan protection.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS7793346B1System, method, and computer program product for preventing trojan communication
Publication Date: 2010.09.07 MCAFEE LLC
  • US7793346B1 patent drawing
  • US7793346B1 patent drawing
  • US7793346B1 patent drawing

AI summary

A system, method and computer program product are provided for preventing unauthorized program modules from communicating. Initially, at least one program module is identified utilizing a central processing unit call history. Thereafter, an authorization test is performed on the at least one program module for preventing unauthorized program modules from communicating.