LiveActive security incident?Get immediate response
CVE Record

CVE-2021-47770: OpenPLC 3 - Remote Code Execution

OpenPLC v3 contains an authenticated remote code execution vulnerability that allows attackers with valid credentials to inject malicious code through the hardware configuration interface. Attackers can upload a custom hardware layer with embedded reverse shell code that establishes a network connection to a specified IP and port, enabling remote command execution.

HighCVSS 8.8Not KEV-listedUpdated
Glexia's TakeAutomated analysishigh

Security readout for executives and security teams

Plain-English summary

CVE-2021-47770 is an authenticated remote code execution issue in OpenPLC v3. Someone with valid OpenPLC credentials could abuse the hardware configuration function to run attacker-controlled code. This is business-relevant where OpenPLC is connected to lab, industrial, OT, or training environments because compromise could affect confidentiality, integrity, and availability of the controller host.

Executive priority

Treat this as a high-priority review if OpenPLC v3 is used on reachable or operationally important systems. The vulnerability requires credentials, but successful abuse can lead to full command execution. Prioritize access restriction, credential hygiene, and vendor guidance checks, especially in OT-adjacent or internet-exposed environments.

Technical view

The issue is described as CWE-94 code injection in OpenPLC v3. The attack requires network access and valid credentials, with no user interaction. The reported path is through the hardware configuration interface, where a custom hardware layer can include malicious code that executes on the target system. CVSS 3.1 is 8.8 high: AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H.

Likely exposure

Exposure is most likely in organizations running OpenPLC v3 with the web interface reachable by users, labs, shared networks, or remote administrators. Risk is lower if OpenPLC is isolated, not deployed in production, or access is tightly limited. The provided sources do not identify specific fixed versions or affected deployment configurations beyond OpenPLC v3.

Exploitation context

The source bundle includes a public ExploitDB reference and a VulnCheck advisory, indicating public exploit knowledge exists. CISA KEV status is false in the provided data, and no cited source states active exploitation in the wild. Exploitation requires valid credentials, so stolen, default, weak, or shared OpenPLC accounts materially increase risk.

Researcher notes

Evidence supports authenticated RCE in OpenPLC v3 and public exploit availability. The bundle does not provide a vendor patch, fixed commit, or fixed release. Avoid assuming active exploitation because KEV is false and no cited source claims it. Validate exposure by deployment reachability, credential model, and whether hardware configuration features are accessible.

Mitigation direction

  • Identify whether OpenPLC v3 is deployed in labs, OT, engineering, or training environments.
  • Restrict OpenPLC administrative access to trusted management networks or VPN-only paths.
  • Review vendor project guidance for patched versions or recommended configuration changes.
  • Rotate OpenPLC credentials and remove shared, default, or unused accounts.
  • Limit who can modify hardware configuration or upload custom hardware layers.
  • Monitor OpenPLC hosts for unexpected processes, outbound connections, or configuration changes.

Validation and detection

  • Inventory OpenPLC instances and confirm their version and exposure path.
  • Verify whether the web/admin interface is reachable from untrusted networks.
  • Review user accounts for unnecessary privileges or shared credentials.
  • Check recent hardware configuration changes for unauthorized modifications.
  • Review host and network logs for unusual outbound sessions from OpenPLC systems.
  • Track CVE Program, VulnCheck, and project repository updates for remediation details.
Prepared
Confidence
medium
Sources
6

Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.

Potential ATT&CK relevance

Conservative CVE-to-ATT&CK context

These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.

ATT&CK lookup starting points

Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.

cwe · medium confidence lookup

CWE-94: Code execution behavior lookup

Code execution and unsafe deserialization weaknesses often justify reviewing execution behavior and process telemetry. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.

Open ATT&CK lookup
description · low confidence lookup

Execution behavior lookup

The CVE wording references code or command execution, so execution technique review may help defensive triage. This is a Glexia inferred lookup path, not an official MITRE, ATT&CK, or CVE Program mapping.

Open ATT&CK lookup
cve · low confidence lookup

CVE-2021-47770 mapping review

Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.

Open ATT&CK lookup
Vulnerability profileCVE Program record
Severity
High
CVSS
8.8 (3.1)
Known Exploited
No
Published

Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

Official CVE source material

CNA and ADP enrichment extracted from CVE v5

These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.

1CVSS vectors
0Timeline events
0ADP providers
5Source links

CVSS vector scores

1 official score

We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.

ScoreVersionSeverityVectorExploitImpactSource
8.8CVSS 3.1HighCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H2.85.9Primary CVE score

Vulnerability scoring details

Base CVSS 3.1 score

8.8High
CVSS 3.1 vector shape for CVE-2021-47770Attack VectorAttack ComplexityPrivileges RequiredUser InteractionScopeConfidentiality ImpactIntegrity ImpactAvailability Impact

Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

Attack Vector
NetworkAdjacentLocalPhysical
Attack Complexity
LowHigh
Privileges Required
NoneLowHigh
User Interaction
NoneRequired
Scope
ChangedUnchanged
Confidentiality Impact
HighLowNone
Integrity Impact
HighLowNone
Availability Impact
HighLowNone

Source materials

Affected products

Products and packages named in the record

VendorProductVersion / packageStatus
AutonomyOpenPLCOpenPLC v3Listed
Weakness

CWE details

CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.

CWE-94 · source CWE mapping

Improper Control of Generation of Code ('Code Injection')

Improper Control of Generation of Code ('Code Injection') represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.