---
id: CVE-2026-75870
title: >-
  Punk versions before 0.18 for Perl allow session cookie forgery via an empty
  default HMAC key when a session is declared without a secret.


  The session keyword freezes its options onto the application as given: it does
  not require a secr…
summary: >-
  Punk versions before 0.18 for Perl allow session cookie forgery via an empty
  default HMAC key when a session is declared without a secret.


  The session keyword freezes its options onto the application as given: it does
  not require a secr…
severity: none
cwe:
  - CWE-1394
published: '2026-08-22'
updated: '2026-08-22'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-75870'
references:
  - url: >-
      https://metacpan.org/release/LNATION/Punk-0.17/source/include/punk/punk_session.h
    label: 9b29abf9-4ab0-4765-b253-1875cd9b441e
  - url: 'https://metacpan.org/release/LNATION/Punk-0.17/view/lib/Punk.pm'
    label: 9b29abf9-4ab0-4765-b253-1875cd9b441e
  - url: 'https://metacpan.org/release/LNATION/Punk-0.18/source/Changes'
    label: 9b29abf9-4ab0-4765-b253-1875cd9b441e
  - url: 'http://www.openwall.com/lists/oss-security/2026/08/22/5'
    label: af854a3a-2127-422b-91ae-364da2661108
tags:
  - nvd
ingestedAt: '2026-08-23T04:42:15.086Z'
epss: 0.00495
epssPercentile: 0.39824
---

## Overview

Punk versions before 0.18 for Perl allow session cookie forgery via an empty default HMAC key when a session is declared without a secret.

The session keyword freezes its options onto the application as given: it does not require a secret, warn, or refuse to start when one is absent. The cookie read and the write-back both default that key to the empty string, so a declaration with no secret option, or with an undefined or empty one, signs and verifies with a zero-length HMAC-SHA256 key.

An attacker who knows the cookie format can then mint one offline carrying any contents the session holds, such as a user identifier or a role. Nothing marks the misconfiguration at runtime: cookies are well formed and sessions round-trip as expected.

## Remediation

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