---
id: CVE-2026-68907
title: >-
  libIEC61850: Server-side out-of-bounds stack read in association-specific
  dynamic dataset creation due to reversed StringUtils_copyStringToBuffer
  arguments
summary: >-
  libIEC61850 is an open-source implementation of IEC 61850 client and server
  protocols including MMS, GOOSE, Sampled Values, and R-Session. Prior to 1.6.2,
  checkDataSetAccess reverses the source and destination arguments to
  StringUtils_co…
severity: high
cvss: 8.2
cvssVector: 'CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N'
cvssSource: cna
cwe:
  - CWE-125
  - CWE-457
  - CWE-628
vendor: mz-automation
product: libiec61850
affected:
  - libiec61850 < 1.6.2
ssvc:
  exploitation: none
  automatable: 'no'
  technicalImpact: partial
  timestamp: '2026-10-16T16:32:10.643697Z'
published: '2026-10-16'
updated: '2026-10-16'
sourceUpdated: '2026-10-16T17:05:59.282Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-68907'
references:
  - url: >-
      https://github.com/mz-automation/libiec61850/security/advisories/GHSA-7v2x-39mw-2979
    label: >-
      https://github.com/mz-automation/libiec61850/security/advisories/GHSA-7v2x-39mw-2979
  - url: >-
      https://github.com/mz-automation/libiec61850/commit/062062daf4cb50c7aa76e01d6fb4d58fc9278a7d
    label: >-
      https://github.com/mz-automation/libiec61850/commit/062062daf4cb50c7aa76e01d6fb4d58fc9278a7d
  - url: 'https://github.com/mz-automation/libiec61850/releases/tag/v1.6.2'
    label: 'https://github.com/mz-automation/libiec61850/releases/tag/v1.6.2'
tags:
  - cve.org
ingestedAt: '2026-10-16T18:43:08.842Z'
---

## Overview

libIEC61850 is an open-source implementation of IEC 61850 client and server protocols including MMS, GOOSE, Sampled Values, and R-Session. Prior to 1.6.2, checkDataSetAccess reverses the source and destination arguments to StringUtils_copyStringToBuffer while constructing an MMS_ASSOCIATION_SPECIFIC dataset reference. The helper treats uninitialized dataSetRef[130] storage as a source string, causing strlen to read beyond the stack buffer, and then copies those bytes into the caller-owned listName buffer. A remote defineNamedVariableList request can crash servers that have dynamic dataset service enabled and a dataset access handler installed; the advisory also observes caller stack corruption but establishes denial of service as the primary impact. This issue is fixed in version 1.6.2.

## Affected

- `libiec61850 < 1.6.2`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
