PLC Code Integrity Monitoring via Baseline Comparison

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Industrial control networks face challenges in detecting and addressing mis-configurations and hostile attacks on Programmable Logic Controllers (PLCs) due to changes in firmware, application logic, and configuration parameters, which can lead to operational errors or security breaches.

Innovation Solution

A management appliance is implemented to request and compare the current code of PLCs with a stored baseline version, issuing notifications for discrepancies and passively verifying code updates to ensure the baseline version's trustworthiness and accuracy.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If code comparison and verification mechanisms are implemented to detect mis-configurations and attacks, then security and reliability are improved, but device complexity and operational overhead increase

Engineering Contradiction:
ImprovesecurityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system performs preliminary actions by establishing a baseline version of the controller code before deployment and continuously comparing current code against this baseline. This proactive approach detects deviations before they can cause security breaches or operational failures, improving reliability without requiring complex real-time analysis mechanisms.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms by continuously monitoring code changes and providing alerts when discrepancies are detected between the current code and baseline version. This feedback loop enables timely response to potential security threats while maintaining system reliability through automated detection and notification processes.

Inventive Principle:
Principle #23Feedback

2Difficulty of detecting and measuring

If continuous code monitoring and verification are performed, then detection capability is improved, but processing time and operational overhead increase

Engineering Contradiction:
Improvedetection capabilityVSAvoidprocessing time
Core Design Contradiction:
Difficulty of detecting and measuringVSLoss of time

Solution Approach 1:

The system extracts only the essential code elements (baseline version and current version) for comparison, rather than analyzing entire codebases. By focusing on critical comparison points and using efficient diff algorithms, the system achieves high detection capability while minimizing processing time and operational overhead.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system changes parameters by comparing code at different time states (baseline vs. current) rather than performing continuous full-code analysis. This parameter-based approach enables effective detection of code modifications while significantly reducing processing requirements compared to comprehensive continuous scanning.

Inventive Principle:
Principle #35Parameter changes

3Measurement precision

If baseline version verification through intercepting code-update transactions is implemented, then accuracy of baseline version is improved, but system complexity and processing overhead increase

Engineering Contradiction:
Improvebaseline version accuracyVSAvoidverification complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The system uses an intermediary approach by intercepting and verifying code-update transactions that pass between the controller and external systems. This mediator role ensures that only authenticated and authorized code updates are applied, maintaining baseline version accuracy while using standardized verification protocols to manage complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system performs preliminary verification of code-update transactions before they are applied to the controller. By checking the authenticity and integrity of update packets in advance, the system ensures baseline version accuracy while preventing unauthorized modifications, using pre-established verification rules to manage complexity.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10261489B2Detection of mis-configuration and hostile attacks in industrial control networks using active querying
Publication Date: 2019.04.16 TENABLE INC
  • US10261489B2 patent drawing
  • US10261489B2 patent drawing

AI summary

A method includes requesting a controller, which controls one or more field devices in an industrial control network, to report code currently used by the controller for controlling the field devices. The code reported by the controller is compared with a stored baseline version of the code, and a notification is issued upon detecting a discrepancy between the code reported by the controller and the baseline version.