highCVSS 7.5Vulnerability

GHSA-f5v8-v6q3-q4h6

## Summary Meridian v2.1.0 (`Meridian.Mapping` and `Meridian.Mediator`) shipped with nine defense-in-depth gaps reachable through its public APIs. Two are HIGH severity — the advertised `DefaultMaxCollectionItems` and `DefaultMaxDepth` safety caps are silently bypassed on the `IMapper.Map(source, destination)` overload and anywhere `.UseDestinationValue()` is configured on a collection-typed property. Four are MEDIUM (constructor invariant bypass, OpenTelemetry stack-trace info disclosure, retry amplification, notification fan-out amplification). Three are LOW (exception message disclosure, dictionary duplicate-key echo, static mediator cache growth under closed-generic types). All nine are patched in **v2.1.1**. Upgrade is a drop-in NuGet bump; see the v2.1.1 CHANGELOG for the four behavioural changes (constructor selection, OTel default, publisher fan-out cap, retry caps). ## Severity Matrix | # | Severity | CWE | Finding | Fix | |---|---|---|---|---| | 1 | **HIGH** | CWE-770 | `MappingEngine.TryMapCollectionOntoExisting` enumerated the source without enforcing `DefaultMaxCollectionItems`. Reachable via `Mapper.Map<TSrc,TDst>(src, dst)` and any `.ForMember(..., o => o.UseDestinationValue())` on a collection member through a plain `Map(src)` call. | Shared cap enforcement helper between `MapCollection` and `TryMapCollectionOntoExisting`. | | 2 | **HIGH** | CWE-674 | Collection-item recursion in the existing-destination path did not increment `ResolutionContext.Depth`, so self-referential collection graphs could reach stack overflow before `DefaultMaxDepth` fired. | Depth increments at every collection-item boundary. | | 3 | MEDIUM | CWE-665 | `ObjectCreator.CreateWithConstructorMapping` always invoked the widest public constructor, silently filling unresolved parameters with `default(T)` and bypassing narrower-ctor invariants. | Widest-ctor selection now requires every parameter to be bound via explicit ctor mapping, source-name match, or a C# optional default.

Properties

ghsa_id
GHSA-f5v8-v6q3-q4h6
severity
high
summary
Meridian: Multiple defense-in-depth gaps (collection/depth caps, telemetry, retry, fan-out)
cvss_score
7.5
cve_id
GHSA-f5v8-v6q3-q4h6
cvss_vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
is_ghsa_only
true
ghsa_published
2026-04-16T22:50:37Z
source_url
https://github.com/advisories/GHSA-f5v8-v6q3-q4h6
ghsa_updated
2026-04-16T22:50:38Z

Related Entities (12)

VULNERABLE_TO (2)

[Software]nuget/Meridian.Mediator
[Software]nuget/Meridian.Mapping

AFFECTS (2)

[Software]nuget/Meridian.Mediator
[Software]nuget/Meridian.Mapping

HAS_WEAKNESS (7)

[Weakness]Generation of Error Message Containing Sensitive Information
[Weakness]Allocation of Resources Without Limits or Throttling
[Weakness]Improperly Controlled Sequential Memory Allocation
[Weakness]Uncontrolled Recursion
[Weakness]Improper Initialization
[Weakness]Insertion of Sensitive Information into Log File
[Weakness]Uncontrolled Resource Consumption

REPORTED_BY (1)

[Source]GitHub Advisory Database

Explore deeper with Ninja Signal's threat intelligence graph

GHSA-f5v8-v6q3-q4h6 (CVSS 7.5) — Ninja Signal Threat Intelligence | Ninja Signal