TRUST Summit | Nov 3, 2025 | NYCWhere decision-makers define the next chapter of secure blockchain adoption.
Learn more

Audit name:

[L1] SSV Network | SSV Spec | Jul2024

Date:

Oct 1, 2024

Table of Content

Introduction
Audit Summary
System Overview
Findings
Appendix 1. Severity Definitions
Appendix 2. Scope
Disclaimer

Want a comprehensive audit report like this?

Introduction

We express our gratitude to the SSV Labs team for the collaborative engagement that enabled the execution of this Blockchain Protocol Security Assessment.

SSV Network is a decentralized infrastructure designed to enhance the security and decentralization of Ethereum's Proof of Stake (PoS) mechanism. By leveraging Distributed Validator Technology (DVT), the network enables multiple nodes to collaboratively manage a single Ethereum validator, thereby reducing risks and boosting fault tolerance. This distribution of validator duties across various operators helps eliminate single points of failure, enhancing the security and resilience of Ethereum staking.

Document

NameBlockchain Protocol Review and Security Analysis Report for SSV Labs
Audited ByNino Lipartiia, Hamza Sajid
Approved ByLuciano Ciattaglia
Websitehttps://ssv.network/
Changelog11/08/2024 - First Preliminary Report for ssv-spec
Changelog05/09/2024 - Second Preliminary Report
Changelog01/10/2024 - Final Report
PlatformEthereum
LanguageGolang
TagsDistributed validator technology, MPC
Methodologyhttps://hackenio.cc/blockchain_methodology
  • Document

    Name
    Blockchain Protocol Review and Security Analysis Report for SSV Labs
    Audited By
    Nino Lipartiia, Hamza Sajid
    Approved By
    Luciano Ciattaglia
    Changelog
    11/08/2024 - First Preliminary Report for ssv-spec
    Changelog
    05/09/2024 - Second Preliminary Report
    Changelog
    01/10/2024 - Final Report
    Platform
    Ethereum
    Language
    Golang
    Tags
    Distributed validator technology, MPC

Review Scope

Repositoryhttps://github.com/ssvlabs/ssv-spec
Commitccf408d1ecd87a4ab631885409d679f10c3fd080

Audit Summary

9Total Findings
9Resolved
0Accepted
0Mitigated

The system users should acknowledge all the risks summed up in the risks section of the report

Documentation quality

  • The code is well-documented, providing detailed explanations that support a strong foundational understanding.

  • Protocol documentation is accessible via the official SSV Network website, ensuring easy reference for developers and users.

  • Major updates to the protocol are documented through SSV Improvement Proposals (SIPs), offering transparency and clarity.

  • However, minor discrepancies between the SIPs and the actual codebase have been noted.

Code quality

  • The project maintains consistently high code quality across its components.

  • There is comprehensive test coverage, which contributes to the project's overall reliability.

  • Static code analysis has identified several warnings that should be addressed.

  • The codebase includes some unresolved TODO comments and "implement me" panics, indicating areas that need further attention.

Architecture quality

  • The project leverages the innovative Distributed Validator Technology, enhancing security and decentralization.

  • The separation of the ssv-spec repository logic from the main SSV node repository improves modularity and maintainability.

  • The ssv-spec components are well-organized into distinct packages, contributing to a clean and efficient architecture.

System Overview

This audit focuses on the ssv-spec repository, a pivotal element of the SSV Network’s operator logic. The ssv-spec codebase includes several critical modules:

  • p2p: Oversees networking and message validation.

  • qbft: Implements the consensus mechanism for achieving coordination among the operators within the cluster.

  • ssv: Contains the core logic of the SSV specification.

These modules are essential for the effective operation of SSV nodes, as they define the specific requirements for crucial node components and significantly enhance overall maintainability. This audit is dedicated to evaluating the code within the ssv-spec repository to ensure its integrity and functionality.

Findings

Code
Title
Status
Severity
F-2024-4402Vulnerabilities in Go Standard Library
fixed

High
F-2024-4371Vulnerabilities in External Go Dependencies
fixed

High
F-2024-4394Insecure Decryption of RSA Keys
fixed

Low
F-2024-5698Residual DKG Code Segments
fixed

Observation
F-2024-5173Excessive Validation in Decided Messages Handling
fixed

Observation
F-2024-5171Unnecessary Error Return in basePartialSigMsgProcessing
fixed

Observation
F-2024-4892Runners Implementations Lack Share Length Validation
fixed

Observation
F-2024-4837Unnecessary Exploitation of nolint Comments
fixed

Observation
F-2024-4814Potential Issues Identified Via Static Analysis
fixed

Observation
1-9 of 9 findings

Findings like these can secure your blockchain.

Appendix 1. Severity Definitions

Severity

Description

Critical
Vulnerabilities that can lead to a complete breakdown of the blockchain network's security, privacy, integrity, or availability fall under this category. They can disrupt the consensus mechanism, enabling a malicious entity to take control of the majority of nodes or facilitate 51% attacks. In addition, issues that could lead to widespread crashing of nodes, leading to a complete breakdown or significant halt of the network, are also considered critical along with issues that can lead to a massive theft of assets. Immediate attention and mitigation are required.

High
High severity vulnerabilities are those that do not immediately risk the complete security or integrity of the network but can cause substantial harm. These are issues that could cause the crashing of several nodes, leading to temporary disruption of the network, or could manipulate the consensus mechanism to a certain extent, but not enough to execute a 51% attack. Partial breaches of privacy, unauthorized but limited access to sensitive information, and affecting the reliable execution of smart contracts also fall under this category.

Medium
Medium severity vulnerabilities could negatively affect the blockchain protocol but are usually not capable of causing catastrophic damage. These could include vulnerabilities that allow minor breaches of user privacy, can slow down transaction processing, or can lead to relatively small financial losses. It may be possible to exploit these vulnerabilities under specific circumstances, or they may require a high level of access to exploit effectively.

Low
Low severity vulnerabilities are minor flaws in the blockchain protocol that might not have a direct impact on security but could cause minor inefficiencies in transaction processing or slight delays in block propagation. They might include vulnerabilities that allow attackers to cause nuisance-level disruptions or are only exploitable under extremely rare and specific conditions. These vulnerabilities should be corrected but do not represent an immediate threat to the system.
  • Severity

    Critical

    Description

    Vulnerabilities that can lead to a complete breakdown of the blockchain network's security, privacy, integrity, or availability fall under this category. They can disrupt the consensus mechanism, enabling a malicious entity to take control of the majority of nodes or facilitate 51% attacks. In addition, issues that could lead to widespread crashing of nodes, leading to a complete breakdown or significant halt of the network, are also considered critical along with issues that can lead to a massive theft of assets. Immediate attention and mitigation are required.

    Severity

    High

    Description

    High severity vulnerabilities are those that do not immediately risk the complete security or integrity of the network but can cause substantial harm. These are issues that could cause the crashing of several nodes, leading to temporary disruption of the network, or could manipulate the consensus mechanism to a certain extent, but not enough to execute a 51% attack. Partial breaches of privacy, unauthorized but limited access to sensitive information, and affecting the reliable execution of smart contracts also fall under this category.

    Severity

    Medium

    Description

    Medium severity vulnerabilities could negatively affect the blockchain protocol but are usually not capable of causing catastrophic damage. These could include vulnerabilities that allow minor breaches of user privacy, can slow down transaction processing, or can lead to relatively small financial losses. It may be possible to exploit these vulnerabilities under specific circumstances, or they may require a high level of access to exploit effectively.

    Severity

    Low

    Description

    Low severity vulnerabilities are minor flaws in the blockchain protocol that might not have a direct impact on security but could cause minor inefficiencies in transaction processing or slight delays in block propagation. They might include vulnerabilities that allow attackers to cause nuisance-level disruptions or are only exploitable under extremely rare and specific conditions. These vulnerabilities should be corrected but do not represent an immediate threat to the system.

Appendix 2. Scope

The scope of the project includes the following components from the provided repository:

Scope Details

Repositoryhttps://github.com/ssvlabs/ssv-spec
Commitccf408d1ecd87a4ab631885409d679f10c3fd080

The remediation check has been conducted based on commit hash 93ad50e , which reflects the status of each issue following this process. It is important to acknowledge that this commit may include changes made subsequent to the initial review commit, which were not part of the audit assessment.

Components in Scope

The scope includes the entire codebase of the ssv-spec repository, focusing on the following key components:

  • p2p: Handles networking and message validation.

  • qbft: Implements the consensus mechanism.

  • ssv: Contains the core logic for the SSV spec.

Assets in Scope

spec-p2p - spec-p2p
spec-qbft - spec-qbft
spec-ssv - spec-ssv

Disclaimer