SWARM Application Randomization for Reconnaissance Defense

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current computing systems are vulnerable to reconnaissance attacks as attackers can gather crucial information about server operating characteristics, which can be used to infiltrate the system, and existing methods to limit this information are not universally applicable or effective.

Innovation Solution

The implementation of a system-wide application randomization mechanism (SWARM) that generates randomized instances of operating systems and software components with unique operating characteristics, providing false information to attackers and evolving these characteristics over time to ensure outdated information is used, thereby reducing the effectiveness of reconnaissance and increasing the attacker's work factor.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Object-affected harmful factors

If server applications are configured to reveal minimal server information, then reconnaissance effectiveness is reduced, but not all server applications can be configured this way and not all protocols allow for such minimal server information

Engineering Contradiction:
Improvereconnaissance effectivenessVSAvoidconfiguration flexibility
Core Design Contradiction:
Object-affected harmful factorsVSAdaptability or versatility

Solution Approach 1:

The patent introduces a proxy server as an intermediary between the actual server application and the network. This proxy server intercepts requests, randomizes responses, and provides false information to attackers while allowing legitimate traffic to pass through to the actual server. This resolves the contradiction by enabling information hiding without requiring modification of the underlying server application or protocol.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system separates the server application into two functional components: the actual server that handles business logic and the proxy server that handles security functions. This segmentation allows the proxy to implement randomization and information hiding independently, maintaining the flexibility and adaptability of the original server application while providing reconnaissance protection.

Inventive Principle:
Principle #1Segmentation

2Object-affected harmful factors

If desktop applications are used for local surveillance via JavaScript or PDF documents, then information exfiltration can occur, but the impact is limited to local contexts

Engineering Contradiction:
Improveinformation exfiltration capabilityVSAvoidsurveillance mechanism complexity
Core Design Contradiction:
Object-affected harmful factorsVSDevice complexity

Solution Approach 1:

The proxy server acts as an intermediary that monitors and controls all network traffic, including data exfiltration attempts from desktop applications. It can detect and block unauthorized JavaScript or PDF document transmissions while allowing legitimate communications, thus preventing information exfiltration without requiring complex client-side security measures.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Ease of manufacture

If standardized server configurations are used, then deployment is simplified, but attackers can use indirect information to determine server operating characteristics

Engineering Contradiction:
Improvedeployment simplicityVSAvoidserver characteristic disclosure
Core Design Contradiction:
Ease of manufactureVSObject-affected harmful factors

Solution Approach 1:

The proxy server dynamically randomizes its behavior for each client connection, changing response patterns, timing characteristics, and error messages. This dynamic behavior makes standardized server configurations indistinguishable from custom configurations, as the randomization occurs at runtime rather than requiring different deployment configurations.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes multiple parameters of server responses including timing, error messages, and data formatting in a randomized manner. This parameter randomization prevents attackers from determining server operating characteristics through indirect information gathering, while maintaining the same standardized server deployment.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS10412116B1Mechanism for concealing application and operation system identity
Publication Date: 2019.09.10 ARCHITECTURE TECH CORP
  • US10412116B1 patent drawing
  • US10412116B1 patent drawing
  • US10412116B1 patent drawing

AI summary

An example method includes providing, by a computing system, first randomized configuration information, generating, by the computing system and based on the first randomized configuration information, a first unique instance of a software component, providing second randomized configuration information, wherein the second randomized configuration information is different from the first randomized configuration information, and generating, based on the second randomized configuration information, a second unique instance of the software component that is executable on the runtime computing system. The first and second unique instances of the software component comprise different instances of the same software component that each are configured to have uniquely different operating characteristics during execution on the runtime computing system, and the first and second unique instances of the software component are each further configured, during execution on the runtime computing system, to output false information to an external computing system.