{
  "document": {
    "category": "csaf_security_advisory",
    "csaf_version": "2.0",
    "distribution": {
      "tlp": {
        "label": "WHITE"
      }
    },
    "lang": "en",
    "notes": [
      {
        "category": "summary",
        "text": "ABB is aware of publicly reported vulnerabilities in the product listed as affected in the advisory.\n\nUpdates to the affected component that fixed the vulnerabilities are available.\nAn attacker who successfully exploited this vulnerability could remotely execute code on the server run-ning Dokuwiki.\nNo active exploitations of the vulnerabilities have been reported by the time of writing this document\n",
        "title": "Summary"
      },
      {
        "category": "other",
        "text": "For additional instructions and support please contact your local ABB service organization. For contact information, see www.abb.com/contactcenters.\nInformation about ABB’s cyber security program and capabilities can be found at www.abb.com/cybersecurity.\n",
        "title": "Support"
      },
      {
        "category": "legal_disclaimer",
        "text": "The information in this document is subject to change without notice, and should not be construed as a commitment by ABB.\nABB provides no warranty, express or implied, including warranties of merchantability and fitness for a particular purpose, for the information contained in this document, and assumes no responsibility for any errors that may appear in this document. In no event shall ABB or any of its suppliers be liable for direct, indirect, special, incidental or consequential damages of any nature or kind arising from the use of this document, or from the use of any hardware or software described in this document, even if ABB or its suppliers have been advised of the possibility of such damages.\nThis document and parts hereof must not be reproduced or copied without written permission from ABB, and the contents hereof must not be imparted to a third party nor used for any unauthorized purpose.\nAll rights to registrations and trademarks reside with their respective owners.",
        "title": "Notice"
      },
      {
        "category": "other",
        "text": "For any installation of software related ABB products we strongly recommend the following (non-exhaustive) list of cyber security practices:\n\n–\tIsolate special purpose networks (e.g. for automation systems) and remote devices behind firewalls and separate them from any general purpose network (e.g. office or home networks).\n\n–\tInstall physical controls so no unauthorized personnel can access your devices, components, peripheral equipment, and networks.\n\n–\tNever connect programming software or computers containing programing software to any network other than the network for the devices that it is intended for.\n\n–\tScan all data imported into your environment before use to detect potential malware infections.\n\n–\tMinimize network exposure for all applications and endpoints to ensure that they are not accessible from the Internet unless they are designed for such exposure and the intended use requires such.\n\n–\tEnsure all nodes are always up to date in terms of installed software, operating system, and firmware patches as well as antivirus and firewall.\n\n–\tWhen remote access is required, use secure methods, such as Virtual Private Networks (VPNs). Recognize that VPNs may have vulnerabilities and should be updated to the most current version available. Also, understand that VPNs are only as secure as the connected devices.\n",
        "title": "General security recommendations"
      },
      {
        "category": "other",
        "text": "ABB has a rigorous internal cyber security continuous improvement process which involves regular testing with industry leading tools and periodic assessments to identify potential product issues. Occasionally an issue is determined to be a design or coding flaw with implications that may impact product cyber security.\nWhen a potential product vulnerability is identified or reported, ABB immediately initiates our vulnerability handling process. This entails validating if the issue is in fact a product issue, identifying root causes, determining what related products may be impacted, developing a remediation, and notifying end users and governmental organizations.\nThe resulting Cyber Security Advisory intends to notify customers of the vulnerability and provide details on which products are impacted, how to mitigate the vulnerability or explain workarounds that minimize the potential risk as much as possible. The release of a Cyber Security Advisory should not be misconstrued as an affirmation or indication of an active threat or ongoing campaign targeting the products mentioned here. If ABB is aware of any specific threats, it will be clearly mentioned in the communication.\nThe publication of this Cyber Security Advisory is an example of ABB’s commitment to the user community in support of this critical topic. Responsible disclosure is an important element in the chain of trust we work to maintain with our many customers. The release of an Advisory provides timely information which is essential to help ensure our customers are fully informed.",
        "title": "Purpose"
      },
      {
        "category": "faq",
        "text": "What causes these vulnerabilities?\n\n- The vulnerabilities are caused by two separate vulnerabilities in PHP code that were discovered by a cyber security company.\n\nWhat is PHP?\n\n- PHP (“PHP: Hypertext Preprocessor”, originally: “Personal Home Page”) is a general purpose scripting language, that is geared towards web development.  PHP is free, open-source code.\n\nWhat is Dokuwiki?\n\n- Dokuwiki servers are used in customer sites for displaying help / manual pages of Manufacturing Execution System (pressing ‘Help’ within MES redirects to appropriate help).\n\nWhat might an attacker use the vulnerability to do?\n- An attacker who successfully exploited this vulnerability could allow the attacker to insert and run arbitrary code remotely.\n\nHow could an attacker exploit the vulnerabilities?\n- An attacker could try to exploit the vulnerabilities by accessing the system when certain conditions are met. This would require that the attacker has access to the system network, by connecting to the network either directly or through a wrongly configured or penetrated firewall. Recommended practices help mitigate such attacks, see section Mitigating Factors above.\n\nCould the vulnerabilities be exploited remotely? \n- Yes, an attacker who has network access to an affected system node could exploit this vulnerability.\n\nCan functional safety be affected by an exploit of this vulnerability?\n- Yes, this is a critical security issue that may allow attackers to execute commands on any web server running PHP.\n\nWhat does the update do?\n- PHP versions 8.5.12, 8.4.27, 8.3.36 and 8.2.35 fix two critical vulnerabilities that can allow unauthenticated remote code execution. All PHP users are strongly encouraged to update immediately.\n\nWhen this security advisory was issued, had this vulnerability been publicly disclosed?\n- Yes, this vulnerability has been publicly disclosed.\n\nWhen this security advisory was issued, had ABB received any reports that this vulnerability was being exploited?\n- No, ABB had not received any information indicating that this vulnerability had been exploited when this security advisory was originally issued.\nThese vulnerabilities have been found by a cyber security firm.\n\nHow do I check the PHP version that we are running at our Dokuwiki server(s)?\n- Use the ’ do=check ’ parameter at your Dokuwiki root address to list the PHP address in use. For example, http://yourdomain/yourwiki/doku.php?do=check\nFor more informatin please check on Reference section. ",
        "title": "Frequently asked questions"
      }
    ],
    "publisher": {
      "category": "vendor",
      "name": "ABB PSIRT",
      "namespace": "https://www.abb.com/global/en/company/about/cybersecurity/alerts-and-notifications"
    },
    "references": [
      {
        "category": "self",
        "summary": "ABB CYBERSECURITY ADVISORY - PDF Version ",
        "url": "https://search.abb.com/library/Download.aspx?DocumentID=4HZK000017&LanguageCode=en&DocumentPartId=&Action=Launch"
      },
      {
        "category": "self",
        "summary": "ABB CYBERSECURITY ADVISORY - CSAF Version ",
        "url": "https://psirt.abb.com/csaf/2026/4hzk000017.json"
      },
      {
        "summary": "Dokuwiki FAQ Reference",
        "url": "https://www.dokuwiki.org/faq:version"
      },
      {
        "summary": "Dokuwiki Install Reference",
        "url": "https://www.dokuwiki.org/install:php"
      },
      {
        "summary": "CERT-EU - Critical Vulnerabilities in PHP",
        "url": "https://cert.europa.eu/publications/security-advisories/2026-018"
      },
      {
        "summary": "PHP Vulnerabilities Reference",
        "url": "https://www.php.net/archive/2026.php#2026-10-21-5"
      },
      {
        "summary": "PHP Vulnerabilities Reference",
        "url": "https://cert.europa.eu/publications/security-advisories/2026-018"
      }
    ],
    "title": "ABB Manufacturing Execution System- PHP Vulnerabilities in DokuWiki installations",
    "tracking": {
      "current_release_date": "2026-10-23T00:30:00.000Z",
      "generator": {
        "date": "2026-10-23T15:56:11.535Z",
        "engine": {
          "name": "Secvisogram",
          "version": "2.6.16"
        }
      },
      "id": "4hzk000017",
      "initial_release_date": "2026-10-23T00:30:00.000Z",
      "revision_history": [
        {
          "date": "2026-10-23T00:30:00.000Z",
          "legacy_version": "A",
          "number": "1",
          "summary": "Initial version."
        }
      ],
      "status": "final",
      "version": "1"
    }
  },
  "product_tree": {
    "branches": [
      {
        "branches": [
          {
            "category": "product_name",
            "name": "Manufacturing Execution System (MES) ",
            "product": {
              "name": "ABB Manufacturing Execution System (MES) ",
              "product_id": "AV1"
            }
          }
        ],
        "category": "vendor",
        "name": "ABB"
      },
      {
        "category": "product_name",
        "name": "Dokuwiki",
        "product": {
          "name": "Dokuwiki",
          "product_id": "AV2"
        }
      }
    ],
    "relationships": [
      {
        "category": "installed_with",
        "full_product_name": {
          "name": "ABB Manufacturing Execution System (MES)  installed with Dokuwiki",
          "product_id": "RAV1"
        },
        "product_reference": "AV1",
        "relates_to_product_reference": "AV2"
      }
    ]
  },
  "vulnerabilities": [
    {
      "cve": "CVE-2026-109618",
      "cwe": {
        "id": "CWE-1325",
        "name": "Improperly Controlled Sequential Memory Allocation"
      },
      "notes": [
        {
          "category": "description",
          "text": "Corruption of out-of-memory error handling can currently allow unauthenticated remote code execu-tion.\nPHP uses longjmp() for out-of-memory (OOM) errors to exit the current context and abort handling of the request. In some contexts, request memory is temporarily reachable before it is fully initialized. If any allocation fails at that point, PHP does not properly account for the early exit and leaves the re-quest memory in an invalid state. The failed allocation does not need to be related to the invalid memory. The request shutdown procedure may then read or branch on it. Multiple OOM strategies can consistently trigger this condition and lead to remote code execution (RCE).",
          "title": "CVE description"
        }
      ],
      "product_status": {
        "known_affected": [
          "RAV1"
        ]
      },
      "references": [
        {
          "category": "external",
          "summary": "NVD - CVE-2026-109618",
          "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-109618"
        }
      ],
      "remediations": [
        {
          "category": "vendor_fix",
          "details": "The vulnerabilities are not tight to any specific MES version but solely depend on the delivery including Dokuwiki, which relies on affected PHP versions.\n\nThe affected PHP versions are listed in CERT-EU - Critical Vulnerabilities in PHP Reference section.\n\nThe problem is corrected in the following product versions:\n\n•\tPHP 8.5.12\n•\tPHP 8.4.27\n•\tPHP 8.3.36\n•\tPHP 8.2.35\n\nABB recommends that customers apply the updates immediately. The updates are applied by updating the PHP packages in operating system of the servers that run Dokuwiki.\n\nPHP 8.5.12, 8.4.27, 8.3.36 and 8.2.35 fix two critical vulnerabilities that can allow unauthenticated remote code execution. All PHP users are strongly encouraged to update immediately.\n\nPHP is installed on the web server / operating system, so upgrading PHP is a server administration task. It needs to be checked which PHP packages are installed on the system, and upgrade them (depending on the OS, with either ‘dnf’ or ‘yum’).\nABB recommends that only PHP packages are updated, not the whole Dokuwiki installation.\n",
          "product_ids": [
            "RAV1"
          ]
        },
        {
          "category": "mitigation",
          "details": "Updating to a release containing the patches is the only complete and reliable mitigation.\nYou should immediately update the PHP component in Dokuwiki to one of the following: 8.5.12, 8.4.27, 8.3.36 and 8.2.35.\nPHP is installed on the web server / operating system, so upgrading PHP is a server administration task.\n•\tTo check the version of PHP: use ‘php -v’ (as ‘root’).\n•\tThe exact names and availability of individual PHP packages vary by distribution release.\nTo see the list of installed PHP packages: dnf list installed 'php*'.\no\tTypical package names on RHEL-family systems look like: \n- \tphp\n-\tphp-cli\n-\tphp-common\n-\tphp-gd\n-\tphp-intl\n-\tphp-mbstring\n-\tphp-opcache\n-\tphp-pdo\n-\tphp-xml\n-\t(there might be other PHP packages, as well)\nRefer to section “General security recommendations” for further advise on how to keep your system secure.\n",
          "product_ids": [
            "RAV1"
          ]
        },
        {
          "category": "workaround",
          "details": "The only workaround, while patches are not installed, is to temporarily shut down the Dokuwiki server(s).",
          "product_ids": [
            "RAV1"
          ]
        }
      ],
      "scores": [
        {
          "cvss_v3": {
            "attackComplexity": "LOW",
            "attackVector": "NETWORK",
            "availabilityImpact": "HIGH",
            "baseScore": 9.8,
            "baseSeverity": "CRITICAL",
            "confidentialityImpact": "HIGH",
            "environmentalScore": 9.4,
            "environmentalSeverity": "CRITICAL",
            "exploitCodeMaturity": "HIGH",
            "integrityImpact": "HIGH",
            "privilegesRequired": "NONE",
            "remediationLevel": "OFFICIAL_FIX",
            "reportConfidence": "CONFIRMED",
            "scope": "UNCHANGED",
            "temporalScore": 9.4,
            "temporalSeverity": "CRITICAL",
            "userInteraction": "NONE",
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H/E:H/RL:O/RC:C",
            "version": "3.1"
          },
          "products": [
            "RAV1"
          ]
        }
      ],
      "title": "CVE-2026-109618"
    },
    {
      "cve": "CVE-2026-109619",
      "cwe": {
        "id": "CWE-1325",
        "name": "Improperly Controlled Sequential Memory Allocation"
      },
      "notes": [
        {
          "category": "description",
          "text": "PHP contains various global states that are retained in memory. The state might not be reset correctly in some cases, leading to potential access to remote code execution. \nPHP contains various global state, such as error, session, object and extension state that is retained by a worker but points to memory owned by one request. That state must be reset before the request memory is released. Some input, configuration, session and error handling operations run before nor-mal initialization of the next request. They inadvertently access stale state not reset by the previous request before initialization has a chance to replace it, causing a use after free. A strategically crafted heap layout can produce full remote code execution (RCE).\n",
          "title": "CVE description"
        }
      ],
      "product_status": {
        "known_affected": [
          "RAV1"
        ]
      },
      "references": [
        {
          "category": "external",
          "summary": "NVD - CVE-2026-109619",
          "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-109619"
        }
      ],
      "remediations": [
        {
          "category": "vendor_fix",
          "details": "The vulnerabilities are not tight to any specific MES version but solely depend on the delivery including Dokuwiki, which relies on affected PHP versions.\n\nThe affected PHP versions are listed in CERT-EU - Critical Vulnerabilities in PHP Reference section.\n\nThe problem is corrected in the following product versions:\n\n•\tPHP 8.5.12\n•\tPHP 8.4.27\n•\tPHP 8.3.36\n•\tPHP 8.2.35\n\nABB recommends that customers apply the updates immediately. The updates are applied by updating the PHP packages in operating system of the servers that run Dokuwiki.\n\nPHP 8.5.12, 8.4.27, 8.3.36 and 8.2.35 fix two critical vulnerabilities that can allow unauthenticated remote code execution. All PHP users are strongly encouraged to update immediately.\n\nPHP is installed on the web server / operating system, so upgrading PHP is a server administration task. It needs to be checked which PHP packages are installed on the system, and upgrade them (depending on the OS, with either ‘dnf’ or ‘yum’).\nABB recommends that only PHP packages are updated, not the whole Dokuwiki installation.\n",
          "product_ids": [
            "RAV1"
          ]
        },
        {
          "category": "mitigation",
          "details": "Updating to a release containing the patches is the only complete and reliable mitigation.\nYou should immediately update the PHP component in Dokuwiki to one of the following: 8.5.12, 8.4.27, 8.3.36 and 8.2.35.\nPHP is installed on the web server / operating system, so upgrading PHP is a server administration task.\n•\tTo check the version of PHP: use ‘php -v’ (as ‘root’).\n•\tThe exact names and availability of individual PHP packages vary by distribution release.\nTo see the list of installed PHP packages: dnf list installed 'php*'.\no\tTypical package names on RHEL-family systems look like: \n- \tphp\n-\tphp-cli\n-\tphp-common\n-\tphp-gd\n-\tphp-intl\n-\tphp-mbstring\n-\tphp-opcache\n-\tphp-pdo\n-\tphp-xml\n-\t(there might be other PHP packages, as well)\nRefer to section “General security recommendations” for further advise on how to keep your system secure.\n",
          "product_ids": [
            "RAV1"
          ]
        },
        {
          "category": "workaround",
          "details": "The only workaround, while patches are not installed, is to temporarily shut down the Dokuwiki server(s).",
          "product_ids": [
            "RAV1"
          ]
        }
      ],
      "scores": [
        {
          "cvss_v3": {
            "attackComplexity": "LOW",
            "attackVector": "NETWORK",
            "availabilityImpact": "HIGH",
            "baseScore": 9.8,
            "baseSeverity": "CRITICAL",
            "confidentialityImpact": "HIGH",
            "environmentalScore": 9.4,
            "environmentalSeverity": "CRITICAL",
            "exploitCodeMaturity": "HIGH",
            "integrityImpact": "HIGH",
            "privilegesRequired": "NONE",
            "remediationLevel": "OFFICIAL_FIX",
            "reportConfidence": "CONFIRMED",
            "scope": "UNCHANGED",
            "temporalScore": 9.4,
            "temporalSeverity": "CRITICAL",
            "userInteraction": "NONE",
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H/E:H/RL:O/RC:C",
            "version": "3.1"
          },
          "products": [
            "RAV1"
          ]
        }
      ],
      "title": "CVE-2026-109619"
    }
  ]
}