Most federal OT programs treat backup retention as the finish line. Backups are captured during the build, stored on media or a network share, and handed off to the operations team at commissioning. The assumption is that if the backup exists and the checksum matches, recovery is possible. That assumption is rarely tested before the system goes live, and it is often wrong in ways that only become visible during an actual outage.

A PLC configuration backup that was captured before final I/O mapping changes is not a usable backup. An HMI image that restores but cannot communicate with its associated controllers because the IP addressing was updated post-capture is not a usable backup. A historian archive that requires a specific database engine version no longer present in the environment is not a usable backup. These are not edge cases. They are the predictable result of treating backup creation as a documentation task rather than a recovery assurance activity.

OT backup restore drills conducted before commissioning answer a specific question: can this system actually be recovered from these backups, in this environment, within the time the mission requires? The drill is not a disaster recovery exercise. It is a pre-go-live verification that the recovery workflow is executable, the artifacts are intact and current, and the acceptance criteria for restored operation can be met. Without it, the program is accepting unquantified recovery risk at the moment of operational handoff.

This guide addresses how to plan and execute those drills across the asset types common to federal and defense OT environments: PLC and RTU controllers, HMIs, historians, and engineering workstations. It covers test scope definition, isolated recovery environments, restore sequencing, validation checkpoints, acceptance gates, and the documentation artifacts that support both operational readiness and RMF evidence packages.

Key Takeaways

  • A backup that has never been restored is an untested assumption, not a recovery capability. Pre-commissioning drills are the only way to confirm restoreability before the system enters operation.
  • Restore drills must be conducted in an isolated environment that mirrors production network topology and dependency relationships without connecting to live control systems.
  • Each OT asset type requires a distinct restore test case. Controller, HMI, historian, and engineering workstation recovery workflows have different dependencies, validation steps, and failure modes.
  • Checksum verification, firmware version matching, and configuration reconciliation are required validation steps, not optional quality checks.
  • Restore drills must produce documented evidence including restore logs, acceptance sign-offs, and identified gaps with remediation tracking before the commissioning gate is cleared.
  • Recovery time and recovery point objectives must be measured against actual drill performance, not estimated from vendor documentation or design assumptions.

Table of Contents

Defining Restore Scope Before the Drill Begins

Restore scope definition is the step most programs skip or compress. Without a clear scope, the drill becomes an informal walkthrough that produces no usable evidence and leaves critical gaps unexamined. Scope definition answers four questions before any media is touched: which assets are in scope, which backup artifacts correspond to each asset, what constitutes a successful restore for each asset type, and what dependencies must be present for the restore to be valid.

The asset inventory used for scope definition should come from the build documentation, not from memory or informal lists. Every PLC, RTU, HMI, historian server, and engineering workstation that will be part of the commissioned system needs a corresponding backup artifact identified by name, version, capture date, storage location, and checksum. If an artifact cannot be identified for an asset, that is a gap that must be resolved before the drill, not during it.

Dependency mapping is equally important. A controller restore that succeeds in isolation may fail operationally because the HMI it communicates with is not present in the test environment, or because the time synchronization source is absent and the controller enters a fault state. Mapping dependencies before the drill allows the test team to either replicate those dependencies in the isolated environment or document explicitly that the test is partial and what additional validation is required.

Scope definition should also establish restore priority order. In most OT environments, the sequence matters: controllers typically need to be restored before HMIs can validate communication, and historians depend on both. The priority order should reflect the actual operational recovery sequence, not the order that happens to be convenient for the test team.

Building and Using an Isolated Recovery Environment

The restore drill must be conducted in an environment that is physically and logically isolated from production and from any live control system. This is not a network segmentation question. It is a safety and integrity requirement. Restoring a controller configuration to hardware that is connected to live field devices, even briefly, creates a hazard that no test objective justifies.

The isolated environment does not need to be a full replica of the production system. It needs to be sufficient to validate the restore workflow and confirm that restored assets can reach an operational state. For controller testing, this typically means spare hardware of the same model and firmware version, or a vendor-supported emulation environment where one exists. For HMIs and engineering workstations, it means a machine with the same OS version, application stack, and licensing configuration as production.

Network topology within the isolated environment should mirror the addressing scheme and VLAN structure of the production design. If the restored HMI expects to reach a controller at a specific IP address, that address must be reachable within the test environment. Shortcuts here produce false positives: a restore that succeeds in a flat test network may fail in the segmented production environment because routing or firewall rules were not replicated.

Practitioner Reality

Federal OT programs frequently discover during commissioning that the isolated test environment used for restore drills was built from the initial network design, not the final as-built configuration. Address changes, VLAN reassignments, and firewall rule updates made during the build phase were never reflected in the test environment. The result is that restore drills pass in the test environment and fail in production, not because the backups are corrupt, but because the environment the backups were validated against no longer matches the environment they will be deployed into. Test environment currency is a configuration management problem, and it needs an owner before the drill begins.

Time synchronization is a dependency that is easy to overlook in an isolated environment. Many OT controllers and historians use time stamps for sequencing, alarming, and event logging. If the isolated environment does not provide a time source, or provides one that is significantly offset from the expected configuration, the restored system may behave abnormally in ways that are difficult to distinguish from a failed restore. Stand up a time source within the isolated environment and configure it to match the production NTP or GPS reference design before the drill begins.

Restore Test Cases by Asset Type

Each asset type in an OT environment has a distinct restore workflow, a distinct set of failure modes, and a distinct definition of what a successful restore looks like. Treating all assets the same way produces a drill that is superficially complete but operationally meaningless.

PLC and RTU Controllers

Controller restore test cases must validate that the configuration, ladder logic or function block program, I/O mapping, and communication parameters are all present and correct after the restore. The test should include a forced execution of the program in a safe state to confirm that the logic runs without faults. Communication parameters should be verified against the as-built network documentation, not assumed to be correct because the restore completed without error messages.

Firmware version is a critical validation point for controllers. A configuration backup captured under one firmware version may not restore correctly to hardware running a different version, and the failure may be silent: the restore completes, the program loads, but specific function blocks or communication drivers behave differently. The firmware version on the test hardware must match the firmware version documented in the backup artifact before the restore begins.

HMIs and Engineering Workstations

HMI restore test cases need to validate the application layer, not just the OS image. A successful image restore that leaves the SCADA application in a degraded state, missing a license file, or unable to locate its tag database is not a successful recovery. The test case should include launching the HMI application, confirming tag communication with the restored controllers in the isolated environment, and verifying that alarm configurations and display graphics match the as-built design.

Engineering workstations present a different challenge. The restore must preserve not just the OS and application, but the project files, version history, and any vendor-specific libraries required to open and modify controller programs. A workstation that restores but cannot open the current project file because a required library version is missing has not been successfully recovered. Test cases should include opening the project file, compiling it without errors, and confirming that the version matches the backup artifact.

Historians

Historian recovery is often the most complex restore in an OT environment because it involves both the application layer and a database engine with its own version dependencies. The restore test case should validate that the historian service starts, that the database is accessible and consistent, that tag definitions match the current system configuration, and that the historian can accept new data from the restored controllers. Historical data integrity should be spot-checked against known reference values from the backup period.

The recovery point objective for the historian is a separate question from the recovery time objective. How much historical data is acceptable to lose depends on the mission, the regulatory environment, and any contractual or reporting requirements. That threshold should be defined before the drill and measured against actual backup capture frequency during the test.

Asset Type Primary Restore Validation Common Failure Mode Dependency Check Required
PLC / RTU Controller Program execution, I/O mapping, communication parameters Firmware version mismatch, silent configuration delta Firmware version, time source, network addressing
HMI Application launch, tag communication, alarm and display integrity Missing license file, tag database path mismatch Controller availability, network topology, license server
Engineering Workstation Project file open, compile without error, version match Missing vendor library, project file version incompatibility Application version, library set, license availability
Historian Service start, database consistency, tag definition match, data ingestion Database engine version mismatch, tag configuration delta Database engine version, controller data feed, time source

Checksum, Version, and Configuration Validation Checkpoints

Validation checkpoints are the structured verification steps that confirm a restore is complete and correct before the test team declares success. They are not optional quality checks. They are the mechanism by which the drill produces evidence rather than anecdote.

Checksum verification should be performed against the backup artifact before the restore begins and again after the restore completes. The pre-restore check confirms that the artifact has not been corrupted in storage or during transfer. The post-restore check, where the restored system can generate a comparable hash of its configuration, confirms that the restore process itself did not introduce changes. Any checksum mismatch is a blocking finding that must be resolved before the restore is accepted.

Version validation goes beyond firmware. It includes the application version, the project file version, any installed patches or hotfixes, and the version of supporting libraries or drivers. The version state of the restored system must match the version state documented in the backup artifact. If the production system was updated after the backup was captured and the backup artifact was not updated to reflect those changes, the drill will surface that gap. That is the intended outcome.

Configuration reconciliation is the comparison of the restored system’s running configuration against the as-built documentation. This step catches the cases where a restore completes without error but the restored configuration reflects an earlier state that does not match the final build. For controllers, this means comparing I/O assignments, communication parameters, and program version against the as-built drawings. For HMIs, it means comparing tag counts, alarm thresholds, and display configurations. For historians, it means comparing tag definitions and collection rates against the current system design.

Programs that have implemented a mature approach to Operational Technology (OT) Security typically have configuration baselines that make reconciliation straightforward. Programs that do not have maintained baselines will find that reconciliation during a restore drill is slow, incomplete, and dependent on institutional knowledge that may not be present at commissioning time.

Acceptance Criteria, RTO Evidence, and Documentation Artifacts

The restore drill is only as useful as the evidence it produces. A drill that is conducted informally, with no defined acceptance criteria and no documentation, provides no assurance and no audit trail. The commissioning gate should require specific artifacts before the system is accepted into operation.

Acceptance criteria must be defined before the drill begins, not after. For each asset type, the criteria should specify what constitutes a passed restore: which validation checkpoints must be satisfied, what the maximum acceptable restore time is, what the maximum acceptable data loss is for the historian, and what functional verification steps must succeed. Criteria that are defined after the drill tend to be shaped by what the drill actually achieved, which defeats the purpose.

Recovery time measurement should be taken from the moment the restore process begins to the moment the asset passes all acceptance criteria. This is the actual RTO for that asset under the conditions of the drill. It should be compared against the RTO documented in the system’s continuity of operations plan or recovery plan. If the measured time exceeds the documented objective, that is a finding. The program must either improve the recovery workflow, update the documented objective to reflect reality, or accept the gap with documented risk acceptance.

Pre-Commissioning Restore Drill Documentation Checklist

  1. Restore scope definition document, including asset list, artifact identifiers, and dependency map
  2. Isolated environment configuration record, including network topology, hardware inventory, and time source configuration
  3. Pre-restore checksum verification log for each backup artifact
  4. Restore execution log with timestamps for each asset, including start time, completion time, and any errors encountered
  5. Version validation record confirming firmware, application, and library versions match backup artifact documentation
  6. Configuration reconciliation record comparing restored configuration against as-built documentation
  7. Functional verification record for each asset type, including communication tests, application launch confirmation, and data ingestion validation for historians
  8. Measured RTO for each asset compared against documented recovery objectives
  9. Acceptance sign-off from the responsible engineer and the ISSO or ISSM
  10. Gap register with any findings that did not meet acceptance criteria, including remediation actions and responsible parties

The gap register is the artifact that most programs neglect. When a restore drill surfaces a finding, the finding needs to be tracked to closure before commissioning, or explicitly accepted with documented rationale. A drill that identifies gaps but does not track them to resolution provides false assurance. The commissioning gate should require that every gap from the drill is either closed or has a documented risk acceptance signed by the appropriate authority.

Chain-of-custody documentation for backup media is a separate but related requirement. The drill should confirm that the backup artifacts used were retrieved from the designated storage location through the documented process. If the program uses offline media, the retrieval and return of that media should be logged. If the program uses a network-accessible backup repository, access logs should be captured as part of the drill record. This matters both for operational integrity and for RMF evidence packages that require demonstration of backup protection controls.

Common Mistakes

The most common mistake is conducting the restore drill after the commissioning date has already been set. When the drill is scheduled as a pre-commissioning formality rather than a genuine gate, there is organizational pressure to declare success regardless of what the drill reveals. Findings get minimized, acceptance criteria get adjusted retroactively, and gaps get deferred to a post-commissioning remediation plan that rarely materializes. The drill needs to be scheduled with enough lead time that findings can be resolved before the go-live date is at risk.

A second common mistake is scoping the drill to only the assets that are easiest to test. Programs frequently test engineering workstations and HMIs because they are familiar IT-like systems, and skip or abbreviate controller testing because it requires spare hardware or vendor support. Controllers are typically the most mission-critical assets in an OT environment and the most difficult to recover without a validated backup. Abbreviated controller testing is not a partial success. It is an untested recovery assumption for the most important assets in the system.

Treating a successful restore as equivalent to a validated recovery workflow is another error. A restore that completes without error messages is not the same as a restore that produces a system capable of supporting the mission. Functional verification, communication testing, and configuration reconciliation are required to close the gap between a completed restore and a validated recovery. Programs that skip these steps are measuring the wrong thing.

Ownership ambiguity is a structural problem that affects drill quality. In many federal OT programs, the system integrator holds the backup artifacts during the build phase, and the government or operations contractor takes ownership at commissioning. If the restore drill is not explicitly assigned to a responsible party with authority over both the artifacts and the test environment, it tends to fall between organizations. Neither party has clear accountability, the drill is compressed or skipped, and the ownership gap is inherited by the operations team along with the system.

Finally, programs frequently fail to update backup artifacts after the drill surfaces configuration gaps. If the drill reveals that the backup for a controller does not reflect the final I/O mapping, the correct response is to capture a new backup after the configuration is corrected, verify the new artifact, and document the update. Closing the gap in the system without updating the backup leaves the program in the same position it was in before the drill.

The restore drill should be treated as a commissioning gate, not a commissioning task. That distinction matters because gates have pass/fail criteria and block progress when criteria are not met. Tasks get completed and checked off regardless of outcome. Establishing the drill as a formal gate requires program office support and needs to be written into the commissioning plan, the contract deliverables, and the system acceptance criteria before the build begins.

Start with scope definition and artifact inventory no later than sixty days before the planned commissioning date. This provides time to identify missing artifacts, resolve version discrepancies, and build or configure the isolated test environment. Artifact inventory should be conducted against the final as-built documentation, not the initial design. Any artifact captured before the final build state is a candidate for recapture.

Assign explicit ownership for the drill. One person or team must be responsible for the test environment, one must be responsible for the backup artifacts and chain-of-custody, and one must be responsible for executing and documenting each test case. The ISSO or ISSM should be present for the acceptance sign-off and should review the gap register before the commissioning gate is cleared. This is not a bureaucratic requirement. It is the mechanism by which cybersecurity personnel confirm that the recovery controls they are responsible for are actually functional.

Execute test cases in restore priority order, beginning with controllers and working outward to HMIs, historians, and engineering workstations. Document start and end times for each asset. Record every error, warning, and manual intervention required during the restore. Manual interventions are particularly important to document because they represent steps that will need to be repeated during an actual recovery, and they need to be captured in the recovery procedures before the system goes live.

After each asset restore, complete all validation checkpoints before moving to the next asset. Do not defer checksum verification or configuration reconciliation to the end of the drill. Deferring validation creates dependencies that make it difficult to isolate the source of a finding when one is discovered.

When the drill is complete, compile the full documentation package and conduct a structured review with the program office, the operations team, and the ISSO or ISSM. Every gap in the gap register needs a disposition: closed with evidence, accepted with documented rationale, or deferred with a binding remediation commitment and timeline. Deferred items should not be accepted without a specific deadline and a responsible party. Open-ended deferrals become permanent gaps.

After all gaps are resolved and artifacts are updated, conduct a final checksum verification of all backup artifacts and store the complete drill documentation package with the system’s authority to operate package and the as-built documentation set. The restore drill record is evidence that recovery controls are functional. It belongs with the other evidence that supports the system’s security posture, and it should be available to assessors, validators, and the operations team throughout the system’s operational life.

Anchor Defense

Need help evaluating solutions for your environment?

Whether you’re modernizing infrastructure, improving resilience, or evaluating technologies, Anchor Defense helps organizations align mission requirements with practical outcomes.


TALK TO AN EXPERT →