SunSpec SunSpec Model 64412 — DER Cyber Exploitation Modbus TCP template

SunSpec Model 64412 — DER Cyber Exploitation

SunSpec Model 64412 is a cybersecurity test model defined by the SunSpec Alliance and Sandia National Laboratories for use in DER security research and conformance testing. It does not represent a physical inverter or energy device. Over Modbus TCP, the model exposes a set of writable flag registers that simulate specific cyber-exploitation attack modes against DER equipment: measurement falsification (voltage, frequency, current, reactive power, power factor, apparent power), nameplate data spoofing, settings manipulation, and common-model identity falsification. It is used by test labs and security engineers to verify that DER management systems detect and respond correctly to manipulated Modbus data.

Protocol
Modbus TCP
Connection
Ethernet, Modbus TCP
Registers
45, read and write
Brand
SunSpec
Last updated

Registers (45)

45 read, 43 write

NameUnitAccessAddress (Hidden until you enter your email)Function (hidden)Type (hidden)
idRead
lRead
damanipulationRead and write
falsifydeviceidentityRead and write
measpalwaysnameplateRead and write
measqalwaysminimumRead and write
measqalwaysmaximumRead and write
measqalwayszeroRead and write
measzeropRead and write
measinvertqRead and write
measlowvRead and write
meashighvRead and write
measlowl1vRead and write
meashighl1vRead and write
measlowfRead and write
meashighfRead and write
measlowampsRead and write
meashighampsRead and write
meashighsRead and write
measlowsRead and write
meashighqRead and write
measlowqRead and write
measlowpfRead and write
measlowreversedpfRead and write
nameplatehighpRead and write
nameplatelowpRead and write
nameplatehighsRead and write
nameplatelowsRead and write
nameplatehighqRead and write
nameplatelowqRead and write
nameplatehighnomvRead and write
nameplatelownomvRead and write
nameplatelowampsRead and write
nameplatelowvarmaxinjRead and write
nameplatelowvarmaxabsRead and write
nameplatelowpfRead and write
settingshighnomvRead and write
settingslowampsRead and write
settingshighpRead and write
settingslowpRead and write
settingshighvamaxRead and write
settingshighvarmaxinjRead and write
settingshighvarmaxabsRead and write
changecommonmodelidRead and write
changecommonmodellengthRead and write

Loading registers…

Send your device list

If a device is not in the library yet, we build the template for free as soon as we have the register data.

Use cases

  • Verify that your monitoring portal raises alerts when measurement registers report implausible zero active-power values.
  • Test whether anomaly-detection logic flags artificially high or low voltage readings injected via measlowv or meashighv.
  • Confirm that nameplate spoofing flags such as nameplatehighp or nameplatelows do not silently corrupt site capacity calculations.
  • Validate that settings manipulation flags like settingshighvamax are detected before they influence DER dispatch decisions.
  • Check that falsified common-model identity registers trigger device-authentication warnings in your integration pipeline.

Installation

  1. Enable Modbus TCP on the DER test device or simulation platform and note its IP address and TCP port, typically 502.

  2. Connect the simulation host to the same LAN segment as the ModbusCloud Gateway and confirm IP reachability with a ping.

  3. In your ModbusCloud portal, add a new device, import the SunSpec Model 64412 template, and assign the correct unit ID matching the simulator.

  4. Perform a spot-read of register address 0 (id) and verify the returned value matches 64412 to confirm the correct model block is mapped.

Things to watch for

Why do all flag registers return zero even after writing?

Model 64412 flag registers are only active when the underlying simulation platform or test harness is running and has accepted the write. Confirm the simulator is started and the Modbus unit ID in the portal matches the simulator's slave address. A stale TCP connection may also cache the previous value: cycle the Gateway connection.

The gateway connects but no model block is found. What now?

SunSpec devices present their model map starting at holding register 40001 (offset 0). If the simulator places Model 64412 later in the map, discovery must walk all preceding model blocks first. Check that the simulator's SunSpec map is complete and ends with the standard end model (ID 65535). Restarting the discovery scan in the portal usually resolves this.

Why does writing a flag register produce a Modbus exception code?

Some simulation platforms restrict writes to flag registers while an active test sequence is running. Pause the running test scenario before writing individual flags. Also confirm you are using function code 16 (Write Multiple Registers): function code 6 (Write Single Register) can be rejected by stricter SunSpec implementations.

Is it safe to write attack-mode flags on a live production DER device?

No. Model 64412 is a test and research model. Writing its flags on a real DER device could falsify measurement data reported to the utility, trigger protection relays, or violate grid codes. Only use this template on isolated lab or simulation environments. Never apply it to a production installation.

Want to see how it works?

Electrician working in an open distribution board