Inst ToolsInst ToolsInst Tools
  • Courses
  • Automation
    • PLC
    • Control System
    • Safety System
    • Communication
    • Fire & Gas System
  • Instrumentation
    • Design
    • Pressure
    • Temperature
    • Flow
    • Level
    • Vibration
    • Analyzer
    • Control Valve
    • Switch
    • Calibration
    • Erection & Commissioning
  • Interview
    • Instrumentation
    • Electrical
    • Electronics
    • Practical
  • Q&A
    • Instrumentation
    • Control System
    • Electrical
    • Electronics
    • Analog Electronics
    • Digital Electronics
    • Power Electronics
    • Microprocessor
  • Request
Search
  • Books
  • Software
  • Projects
  • Process
  • Tools
  • Basics
  • Formula
  • Power Plant
  • Root Cause Analysis
  • Electrical Basics
  • Animation
  • Standards
  • 4-20 mA Course
  • Siemens PLC Course
Reading: #4 PLC Best Practices – Use PLC Flags as Integrity Checks
Share
Notification Show More
Font ResizerAa
Inst ToolsInst Tools
Font ResizerAa
  • Courses
  • Design
  • PLC
  • Interview
  • Control System
Search
  • Courses
  • Automation
    • PLC
    • Control System
    • Safety System
    • Communication
    • Fire & Gas System
  • Instrumentation
    • Design
    • Pressure
    • Temperature
    • Flow
    • Level
    • Vibration
    • Analyzer
    • Control Valve
    • Switch
    • Calibration
    • Erection & Commissioning
  • Interview
    • Instrumentation
    • Electrical
    • Electronics
    • Practical
  • Q&A
    • Instrumentation
    • Control System
    • Electrical
    • Electronics
    • Analog Electronics
    • Digital Electronics
    • Power Electronics
    • Microprocessor
  • Request
Follow US
All rights reserved. Reproduction in whole or in part without written permission is prohibited.
Inst Tools > Blog > PLC Tutorials > #4 PLC Best Practices – Use PLC Flags as Integrity Checks

#4 PLC Best Practices – Use PLC Flags as Integrity Checks

One of the best PLC best practices is to use PLC flags as integrity checks. Put counters on PLC error flags to capture any math problems.

Last updated: September 21, 2021 1:23 am
Editorial Staff
PLC Tutorials
No Comments
Share
3 Min Read
SHARE

One of the best PLC best practices is to use PLC flags as integrity checks.

Contents
Use PLC Flags as Integrity ChecksExample

Put counters on PLC error flags to capture any math problems.

Security ObjectiveTarget Group
  The integrity of PLC logicProduct Supplier Integration / Maintenance Service Provider

Use PLC Flags as Integrity Checks

If the PLC code was working fine but suddenly does a divide by zero, investigate. If something is communicating peer to peer from another PLC and the function/logic does a divide by zero when it wasn’t expected, investigate.

Most programmers will ignore the issue as a math error or worse yet, might presume their code is perfect and let the PLC enter a hard fault state.

During code development, engineers need to test and validate their code modules (snippets or routines) by inputting data outside of expected bounds. This may be termed Unit Level Test.

Assign different, locked memory segments for firmware, logic, and protocol stack. Test the protocol stack for abuse cases. Abuse cases could be peculiar flag conditions in a packet header.

Use PLC Flags as Integrity Checks

Example

PLC faults caused by out-of-bounds data are very common. This happens, for example, when an input value causes array indices to go out of bounds, or timers with negative presets, or divide by zero exceptions.

Typical flags of interest are

  • divide by zero
  • counter overflow
  • negative counter or timer preset
  • I/O scan overrun

Why?

Beneficial for…?Why?
      SecurityAttacks on PLCs could include changing their logic, activating a new program, testing new code, loading a new process recipe, inserting auxiliary logic to send messages, or activating some feature.

Since most PLCs do not provide cryptographic integrity checks, flags can be a good indicator if one of the above logic changes happens.
  ReliabilityFlags taken seriously can avoid the PLC running with programming or I/O errors.

Also, if an error occurs, the source of the failure is more obvious.
Maintenance/

References

Standard/frameworkMapping
MITRE ATT&CK for ICSTactic: TA010 – Impair Process Control
Technique:  T0836 – Modify Parameter
  ISA 62443-3-3SR 3.5: Input Validation
SR 3.6: Deterministic Output
  ISA 62443-4-2CR 3.5: Input Validation
CR 3.6: Deterministic Output
  ISA 62443-4-1SI-2: Secure coding standards
SVV-1: Security requirements testing
    MITRE CWECWE-128: Wrap-around
CWE-190: Integer Overflow
CWE-369: Divide by Zero
CWE-754: Improper Check for Unusual or Exceptional Conditions

Source: PLC Security

Don't Miss Our Updates
Be the first to get exclusive content straight to your email.
We promise not to spam you. You can unsubscribe at any time.
Invalid email address
You've successfully subscribed !

Continue Reading

Motor Control Signal Interface
PLC Program Examples
Mis-conceptions of PLC Ladder Logic
Establish Communication Between Two PLC Via PROFIBUS Protocol
Open Platform Communication (OPC)
One Shot Rising PLC Example Program
Share This Article
Facebook Whatsapp Whatsapp LinkedIn Copy Link
Share
Leave a Comment

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Stay Connected

128.3kFollowersLike
69.1kFollowersFollow
210kSubscribersSubscribe
38kFollowersFollow

Categories

Explore More

PLC Program for Daily Production Record
Multiple Pumps Control using PLC
Workstation Healthiness Checks
PLC Structured Text Program for Light Sequences via Timers
Types of Expressions in the SCL Language of the Tia Portal
Difference between PLC and HMI
Difference Between PNP and NPN Sensors
Motor ON OFF Logic in PLC

Keep Learning

PLC Program for Automatic Oil and Water Separation Process

Oil and Water Separation Process using PLC Programming

Ladder Diagram circuit

PLC Practice Questions

What is an instruction list language?

Structured Text vs. Instruction List for PLC Programming

PLC programming for liquid mixing application code

PLC Mixing Logic in Liquids on EcoStruxure Machine Expert-Basic

Address Overlapping in Tia Portal

How to Check Address Overlapping in Tia Portal?

What is Fail-safe in Siemens PLC?

What is Fail-safe in Siemens PLC?

How to Use the Shift and Rotate Instructions in PLC

How to Use the Shift and Rotate Instructions in PLC?

Delete Siemens CPU Memory

How to Delete the Siemens CPU Memory?

Learn More

Technologies for Oxygen Gas Measurement

How to Calibrate Oxygen Analyzer? – O2 Sensor Testing Procedure

Displacer interface level measurement Calibration

Displacer Interface Level Measurement

input-output-relationships-of-transmitters

Input-Output Relationships of Transmitters

Field Transmitter Range Calculation

Transmitter Turndown Ratio, Set Span and Zero Span

HR Interview Questions & Answers

HR Interview Questions and Answers

Guided wave radar Measurement Principle

Instrument Salesperson Question

Flow Switch Working Principle Animation

Working Principle of Flow Switch with Animation

Basic Temperature Sensors MCQ

Basic Temperature Sensors MCQ Questions Answers

Menu

  • About
  • Privacy Policy
  • Copyright

Quick Links

  • Learn PLC
  • Helping Hand
  • Part Time Job

YouTube Subscribe

Follow US
All rights reserved. Reproduction in whole or in part without written permission is prohibited.
Welcome Back!

Sign in to your account

Username or Email Address
Password

Lost your password?