Vulnerabilities in pkg:golang/github.com/arnika-project/arnika

PACKAGE
Advisory Summary

GHSA-rc6v-5rmx-w5mv is a MODERATE (CVSS 2.8) arnika is affected by medium-severity vulnerability (CWE-295: Improper Certificate Validation) affecting Github.com/arnika project/arnika libraries in the Go ecosystem. The issue involves arnika is affected by medium-severity issues in udp rotation, pqc handling, and kms tls. Remediation is available by upgrading affected packages to version 1.0.1.

1 Known Advisory Record(s)
Package Vulnerability Intelligence

pkg:golang/github.com/arnika-project/arnika

1 Known Advisory Record(s)

Vulnerability advisories affecting package pkg:golang/github.com/arnika-project/arnika. Select an advisory below to view technical details or fixes.

Advisory ID CVE / NVD Severity Summary
GHSA-rc6v-5rmx-w5mv - MODERATE arnika is affected by medium-severity issues in UDP rotation, PQC handling, and KMS TLS

GHSA-rc6v-5rmx-w5mv at a Glance

CVE Identifier N/A
GHSA Identifier GHSA-rc6v-5rmx-w5mv
Severity MODERATE
CVSS v3.1 Base Score 2.8
CWE Classification CWE-295: Improper Certificate Validation
Affected Product Github.com/arnika project/arnika
Package Ecosystem Go
Published Date
Last Updated

Security Impact

CVSS: 2.8

The security impact metrics below are parsed directly from the CVSS v3.1 vector string (CVSS:3.1/AV:P/AC:L/PR:H/UI:R/S:U/C:L/I:L/A:N).

Attack Vector Physical (AV:P)
Attack Complexity Low (AC:L)
Privileges Required High (PR:H)
User Interaction Required (UI:R)
Scope Unchanged (S:U)
Confidentiality Low (C:L)
Integrity Low (I:L)
Availability None (A:N)

How to Fix GHSA-rc6v-5rmx-w5mv

To remediate this vulnerability, upgrade all affected Github.com/arnika project/arnika dependencies to a patched release. Both direct and transitive dependencies should be checked, as frameworks or security libraries may pull in vulnerable versions transitively.

github.com/arnika-project/arnika fixed: 1.0.1
Upgrade github.com/arnika-project/arnika to 1.0.1
Verify Direct and Transitive Dependencies

Run the following command in your project directory to verify that all resolved dependencies use the patched release:

inspect dependencies for github.com/arnika-project/arnika

How to Check if You Are Affected

To determine whether your application is affected by GHSA-rc6v-5rmx-w5mv, inspect your project dependencies for Github.com/arnika project/arnika:

inspect dependencies for github.com/arnika-project/arnika

Analyze the terminal output to locate any version of Github.com/arnika project/arnika in your dependency tree. If any resolved version matches the vulnerable ranges listed in the table below (for example, versions earlier than 1.0.1), your application is affected.

Note: Verify declared build manifests and deployed runtime container environments.

Technical Details

Vulnerability Mechanism & Technical Analysis

This vulnerability is classified under CWE-295: Improper Certificate Validation, where the product does not validate, or incorrectly validates, a certificate. In Github.com/arnika project/arnika, software state validation or input boundaries are circumvented during processing. Review the official source advisory statement below for specific affected components, classes, and reproduction details.

Source Advisory Statement

### Summary Three medium-severity issues in arnika affecting the UDP key-rotation protocol, PQC key file handling, and KMS TLS client. All require specific preconditions to exploit and do not allow direct code execution or immediate key extraction. A self-contained PoC is attached. ### Details 1) ACK timestamp not validated: `udpserver.go:185` `udpClient()` verifies HMAC and packet type but never checks `ackPkt.Timestamp`. A MITM can capture one ACK, drop all subsequent DATA packets, and replay the stale ACK indefinitely. Primary advances PSK each rotation, backup stays on key 1, tunnel breaks. No PSK knowledge needed. The server side already has this check, the client does not. **Fix**: mirror the timestamp check already present on the server side. 2) Empty PQC key file silently accepted: `repositories/pqc.go:29` `os.ReadFile` follows symlinks. Empty file to `base64.Decode("") = []byte{}, nil`. HKDF runs on the QKD key alone while arnika logs `[OK] HKDF derivation completed for QKD+PQC key`. Requires write access to the directory containing `PQC_PSK_FILE`. **Fix**: validate decoded key is non-empty before derivation; enforce parent directory permissions in `SECURITY.md`. 3) `InsecureSkipVerify: true` hardcoded: `repositories/kms.go:61` KMS HTTP client unconditionally sets `InsecureSkipVerify: true`, overriding `RootCAs`. `CA_CERTIFICATE` is loaded but never consulted (dead code). Requires MITM between arnika and the KMS endpoint, which in typical deployments are co-located. **Fix**: remove the flag; `RootCAs` already holds the correct pool when `CA_CERTIFICATE` is configured. ### PoC See [arnika_exploit.tar.gz](https://github.com/user-attachments/files/27585454/arnika_exploit.tar.gz). PoC shows observable behavior for each attack; the third one (KMS MITM) needs no custom code, any HTTPS proxy with a self-signed cert is enough. ### Impact Issues require network MITM or local directory write access to exploit. No direct key extraction or code execution. Primary impact is tunnel desync and silent security downgrade in hybrid QKD+PQC mode.

GHSA-rc6v-5rmx-w5mv Affected Github.com/arnika project/arnika Versions

1 component(s)
Fixed Versions:
1.0.1
Product / Package Ecosystem Affected Versions Fixed Version
github.com/arnika-project/arnika
Go
< 1.0.1
1.0.1

References

Frequently Asked Questions

What is GHSA-rc6v-5rmx-w5mv?
GHSA-rc6v-5rmx-w5mv is a security vulnerability in Github.com/arnika project/arnika involving arnika is affected by medium-severity issues in UDP rotation, PQC handling, and KMS TLS under CWE-295: Improper Certificate Validation.
Which Github.com/arnika project/arnika versions are affected?
Affected versions include releases prior to 1.0.1 across affected packages: github.com/arnika-project/arnika.
What version fixes GHSA-rc6v-5rmx-w5mv?
Upgrading to 1.0.1 (or the latest patched release for your respective branch) resolves the vulnerability.
Is github.com/arnika-project/arnika affected?
Yes, github.com/arnika-project/arnika is affected in releases prior to 1.0.1. Upgrade your dependency to 1.0.1 or later.
What is the CVSS score of GHSA-rc6v-5rmx-w5mv?
GHSA-rc6v-5rmx-w5mv has a CVSS v3.1 base score of 2.8 (MODERATE) with vector string CVSS:3.1/AV:P/AC:L/PR:H/UI:R/S:U/C:L/I:L/A:N.
What CWE is associated with GHSA-rc6v-5rmx-w5mv?
GHSA-rc6v-5rmx-w5mv is classified under CWE-295: Improper Certificate Validation (The product does not validate, or incorrectly validates, a certificate.).
How can I check Go dependencies for GHSA-rc6v-5rmx-w5mv?
Run the dependency tree command: 'inspect dependencies for github.com/arnika-project/arnika'. This command lists direct and transitive dependencies in your build configuration so you can verify if a vulnerable version is resolved.
Machine-readable OSV JSON OSV v1.5 Schema
Normalized schema output
{
  "schema_version" : "1.4.0",
  "id" : "GHSA-rc6v-5rmx-w5mv",
  "modified" : "2026-06-09T10:34:05Z",
  "published" : "2026-05-15T18:13:57Z",
  "aliases" : [ ],
  "summary" : "arnika is affected by medium-severity issues in UDP rotation, PQC handling, and KMS TLS",
  "details" : "### Summary\nThree medium-severity issues in arnika affecting the UDP key-rotation protocol, PQC key file handling, and KMS TLS client. All require specific preconditions to exploit and do not allow direct code execution or immediate key extraction. A self-contained PoC is attached.\n\n### Details\n1) ACK timestamp not validated: `udpserver.go:185`\n`udpClient()` verifies HMAC and packet type but never checks `ackPkt.Timestamp`. A MITM can capture one ACK, drop all subsequent DATA packets, and replay the stale ACK indefinitely. Primary advances PSK each rotation, backup stays on key 1, tunnel breaks. No PSK knowledge needed. The server side already has this check, the client does not.\n**Fix**: mirror the timestamp check already present on the server side.\n\n2) Empty PQC key file silently accepted: `repositories/pqc.go:29`\n`os.ReadFile` follows symlinks. Empty file to `base64.Decode(\"\") = []byte{}, nil`. HKDF runs on the QKD key alone while arnika logs `[OK] HKDF derivation completed for QKD+PQC key`. Requires write access to the directory containing `PQC_PSK_FILE`.\n**Fix**: validate decoded key is non-empty before derivation; enforce parent directory permissions in `SECURITY.md`.\n\n3) `InsecureSkipVerify: true` hardcoded: `repositories/kms.go:61`\nKMS HTTP client unconditionally sets `InsecureSkipVerify: true`, overriding `RootCAs`. `CA_CERTIFICATE` is loaded but never consulted (dead code). Requires MITM between arnika and the KMS endpoint, which in typical deployments are co-located.\n**Fix**: remove the flag; `RootCAs` already holds the correct pool when `CA_CERTIFICATE` is configured.\n\n### PoC\nSee [arnika_exploit.tar.gz](https://github.com/user-attachments/files/27585454/arnika_exploit.tar.gz). PoC shows observable behavior for each attack; the third one (KMS MITM) needs no custom code, any HTTPS proxy with a self-signed cert is enough.\n\n### Impact\nIssues require network MITM or local directory write access to exploit. No direct key extraction or code execution. Primary impact is tunnel desync and silent security downgrade in hybrid QKD+PQC mode.",
  "severity" : [ {
    "type" : "CVSS_V3",
    "score" : "CVSS:3.1/AV:P/AC:L/PR:H/UI:R/S:U/C:L/I:L/A:N"
  }, {
    "type" : "CVSS_V4",
    "score" : "CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N"
  } ],
  "affected" : [ {
    "package" : {
      "ecosystem" : "Go",
      "name" : "github.com/arnika-project/arnika"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "0"
      }, {
        "fixed" : "1.0.1"
      } ]
    } ],
    "database_specific" : {
      "last_known_affected_version_range" : "<= 1.0.0"
    }
  } ],
  "references" : [ {
    "type" : "WEB",
    "url" : "https://github.com/arnika-project/arnika/security/advisories/GHSA-rc6v-5rmx-w5mv"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/arnika-project/arnika/commit/efbd980d8b636cb59f60f2d6ece1b80a9cf36535"
  }, {
    "type" : "PACKAGE",
    "url" : "https://github.com/arnika-project/arnika"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/arnika-project/arnika/releases/tag/v1.0.1"
  } ],
  "database_specific" : {
    "cwe_ids" : [ "CWE-294", "CWE-295", "CWE-345" ],
    "severity" : "MODERATE",
    "github_reviewed" : true,
    "github_reviewed_at" : "2026-05-15T18:13:57Z",
    "nvd_published_at" : null
  }
}