---
id: CVE-2026-95831
title: >-
  Crypt::SelfCertificate versions from 1.01 through 1.05 for Perl contains
  malware which executes Python code from an obfuscated URL.


  The generate_certificate runs a Python script saved as a certificate file
summary: >-
  Crypt::SelfCertificate versions from 1.01 through 1.05 for Perl contains
  malware which executes Python code from an obfuscated URL.


  The generate_certificate runs a Python script saved as a certificate file. 
  The pyhton script attempts t…
severity: high
cvss: 7.8
cvssVector: 'CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H'
cwe:
  - CWE-506
product: Crypt-SelfCertificate
affected:
  - Crypt-SelfCertificate >= 1.01 <= 1.05
published: '2026-09-22'
updated: '2026-09-23'
sourceUpdated: '2026-09-23T17:17:20.773'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-95831'
references:
  - url: >-
      https://www.nntp.perl.org/group/perl.cpan.testers.discuss/2026/09/msg4754.html
    label: 9b29abf9-4ab0-4765-b253-1875cd9b441e
  - url: 'http://www.openwall.com/lists/oss-security/2026/09/22/21'
    label: af854a3a-2127-422b-91ae-364da2661108
  - url: 'http://www.openwall.com/lists/oss-security/2026/09/23/2'
    label: af854a3a-2127-422b-91ae-364da2661108
  - url: 'http://www.openwall.com/lists/oss-security/2026/09/23/3'
    label: af854a3a-2127-422b-91ae-364da2661108
tags:
  - nvd
  - cve.org
ssvc:
  exploitation: none
  automatable: 'no'
  technicalImpact: total
  timestamp: '2026-09-22T20:13:35.298576Z'
epss: 0.0012
epssPercentile: 0.01632
ingestedAt: '2026-09-22T19:09:10.011Z'
---

## Overview

Crypt::SelfCertificate versions from 1.01 through 1.05 for Perl contains malware which executes Python code from an obfuscated URL.

The generate_certificate runs a Python script saved as a certificate file.  The pyhton script attempts to retrieve code from a hardcoded http URL that is obfuscated with base64 encoding and run the response body directly.

The impact is that arbitrary code can be invoked as the user, without a dropped script being saved on the affected host.

The releases have no test scripts nor build hooks.  The intention may have been to trigger the payload after installation.

For version 1.01, the dropper script is in lib/Crypt/SelfCertificate/sample/validate.p12.

For version 1.05, the dropper script is in lib/Crypt/SelfCertificate/sample/cert7.pem.

The SHA-256 digests of the files are

    fbff21f45ff748365062a5e36fb2d72558cad82a507a6f357f320b4fcdf07760 Crypt-SelfCertificate-1.01.tar.gz
    27b2d2d3174ad771474fff2521f5084ec231e9218ea8c832515aef1cbd5897bc lib/Crypt/SelfCertificate/sample/validate.p12

    9fdfa7d69b034b77d4510cda567e8da1e486ca81c7daaadc5732a45c41d71991 Crypt-SelfCertificate-1.05.tar.gz
    27b2d2d3174ad771474fff2521f5084ec231e9218ea8c832515aef1cbd5897bc lib/Crypt/SelfCertificate/sample/cert7.pem

## Remediation

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