Prepared by:
HALBORN
Last Updated 02/10/2026
Date of Engagement: December 9th, 2025 - December 26th, 2025
100% of all REPORTED Findings have been addressed
All findings
14
Critical
0
High
0
Medium
0
Low
9
Informational
5
NUVA Foundation engaged Halborn to conduct a comprehensive security assessment of the Vault Module on Provenance Blockchain beginning on December 9th, 2025, and concluding on December 26th, 2025. The scope of this assessment was limited to the smart contracts and Cosmos-SDK Vault module provided to the Halborn team. Commit hashes, scope boundaries, and additional technical details are documented in the Scope section of this report. '
The Vault Module is a public, permissionless, proof-of-stake blockchain, purpose-built to modernize financial infrastructure. It is more than just a general-purpose ledger; it's an integrated ecosystem designed for finance.
Halborn assigned a full-time security engineer to perform a comprehensive review of the contracts. The engineer is a blockchain and smart contract and blockchain security expert with extensive experience in penetration testing, vulnerability research, and auditing across multiple blockchain ecosystems.
The purpose of this assessment was to:
Identify potential security issues and vulnerabilities within the EVM and Cosmos Vault smart contracts along with the Integration of a specific Cosmos-SDK vault module.
Ensure that all contract components function as intended under expected and edge-case conditions.
In summary, Halborn identified several areas for improvement to minimize both the likelihood and potential impact of security risks, which were mostly acknowledged by the NUVA Foundation. The primary recommendations included:
Reject SwapOut requests where the computed redeemable assets are zero (return a clear “amount too small” error), or treat zero-asset conversions as a recoverable failure in payout processing and refund shares instead of burning.
Introduce a separate per-block scan budget that counts skipped paused entries, or move paused-vault jobs out of the due-walk path.
Remove the hardcoded uylds.fcc 1:1 path and always use Marker NAV for conversions.
Halborn performed a combination of manual code review and automated security testing to balance efficiency, timeliness, practicality, and accuracy in regard to the scope of this assessment. While manual testing is essential to uncover flaws in logic, process, and implementation, automated testing techniques enhance coverage of smart contracts and can quickly identify issues that do not follow security best practices.
The following phases and associated tools were used throughout the assessment:
Research into the architecture, purpose, and use of the platform.
Manual code review and walkthrough of the smart contracts to identify potential logic issues.
Manual testing of all core functions, including deposit, withdraw, vault creation, etc., to validate expected behavior and identify edge-case vulnerabilities.
Local testing to simulate contract interactions and validate functional and security assumptions.
Fuzz testing with the golang's integrated Fuzzer.
| EXPLOITABILITY METRIC () | METRIC VALUE | NUMERICAL VALUE |
|---|---|---|
| Attack Origin (AO) | Arbitrary (AO:A) Specific (AO:S) | 1 0.2 |
| Attack Cost (AC) | Low (AC:L) Medium (AC:M) High (AC:H) | 1 0.67 0.33 |
| Attack Complexity (AX) | Low (AX:L) Medium (AX:M) High (AX:H) | 1 0.67 0.33 |
| IMPACT METRIC () | METRIC VALUE | NUMERICAL VALUE |
|---|---|---|
| Confidentiality (C) | None (C:N) Low (C:L) Medium (C:M) High (C:H) Critical (C:C) | 0 0.25 0.5 0.75 1 |
| Integrity (I) | None (I:N) Low (I:L) Medium (I:M) High (I:H) Critical (I:C) | 0 0.25 0.5 0.75 1 |
| Availability (A) | None (A:N) Low (A:L) Medium (A:M) High (A:H) Critical (A:C) | 0 0.25 0.5 0.75 1 |
| Deposit (D) | None (D:N) Low (D:L) Medium (D:M) High (D:H) Critical (D:C) | 0 0.25 0.5 0.75 1 |
| Yield (Y) | None (Y:N) Low (Y:L) Medium (Y:M) High (Y:H) Critical (Y:C) | 0 0.25 0.5 0.75 1 |
| SEVERITY COEFFICIENT () | COEFFICIENT VALUE | NUMERICAL VALUE |
|---|---|---|
| Reversibility () | None (R:N) Partial (R:P) Full (R:F) | 1 0.5 0.25 |
| Scope () | Changed (S:C) Unchanged (S:U) | 1.25 1 |
| Severity | Score Value Range |
|---|---|
| Critical | 9 - 10 |
| High | 7 - 8.9 |
| Medium | 4.5 - 6.9 |
| Low | 2 - 4.4 |
| Informational | 0 - 1.9 |
Critical
0
High
0
Medium
0
Low
9
Informational
5
| Security analysis | Risk level | Remediation Date |
|---|---|---|
| Dust SwapOut Can Burn Shares While Paying Out Zero Assets Due to Floor Rounding | Low | Risk Accepted - 01/15/2026 |
| Paused Vault Withdrawal Backlog Causes Repeated EndBlocker O(N) Scans | Low | Risk Accepted - 01/15/2026 |
| ReceiptId Validation Uses Untrimmed Value in Storage | Low | Future Release - 01/20/2026 |
| Hardcoded 1:1 Pricing for uylds.fcc Bypasses NAV and Can Cause User Arbitrage if the Peg Deviates | Low | Solved - 01/07/2026 |
| NAV Publish Can Panic When TotalShares Exceeds uint64 | Low | Solved - 01/15/2026 |
| Migration Does Not Transfer Accumulated Tokens | Low | Future Release - 01/20/2026 |
| Unbounded Loop in Destination Address Management | Low | Future Release - 01/20/2026 |
| Migration Does Not Preserve Destination Addresses | Low | Future Release - 01/20/2026 |
| BurnSwapOutReceipt Amount Parameter Not Validated Against Receipt | Low | Risk Accepted - 01/20/2026 |
| No Validation of to_address Parameter | Informational | Future Release - 01/20/2026 |
| AML Signer Address Cannot Be Rotated | Informational | Future Release - 01/20/2026 |
| Empty Migration Handler Without Version Checking | Informational | Solved - 01/20/2026 |
| Missing Input Validation in Token Creation | Informational | Future Release - 01/20/2026 |
| Missing Zero-Amount Check in BurnSwapInReceipt | Informational | Future Release - 01/20/2026 |
//
//
//
//
//
//
//
//
//
//
//
//
//
//
Halborn strongly recommends conducting a follow-up assessment of the project either within six months or immediately following any material changes to the codebase, whichever comes first. This approach is crucial for maintaining the project’s integrity and addressing potential vulnerabilities introduced by code modifications.
// Download the full report
Vault, Cosmos & EVM Contracts
* Use Google Chrome for best results
** Check "Background Graphics" in the print settings if needed