Solutions

Company

Resources

Blog

Contact

Login

    • Assurance

      Smart Contract Assessment

      Securing code integrity, protecting digital assets

      Blockchain Layer 1 Assessment

      Assessing protocols, securing blockchain foundations

      Code Security Audit

      Uncovering flaws, strengthening software integrity

      Web Application Penetration Testing

      Exposing weaknesses, fortifying digital defenses

      Cloud Infrastructure Penetration Testing

      Securing configurations, protecting critical environments

      Red Team Exercise

      Simulating real-world attacks, strengthening defenses

      AI Red Teaming

      Testing AI systems against real threats

      AI Security Assessment

      Securing AI models, data, and pipelines

    • Advisory

      AI Advisory

      Guiding secure, strategic AI adoption forward

      Risk Assessment

      From unknown threats to actionable insights

      Blockchain Architecture Assessment

      Optimizing architecture for tomorrow’s networks

      Compliance Readiness

      Stay ready as regulations evolve

      Custody and Key Management Assessment

      Securing the heart of digital custody

      Technical Due Diligence

      See the risks before you invest

      Technical Training

      Empower your teams to secure what matters

    • Who We Are

      The best security engineers in the world

      Careers

      Work with the elite

      Who Trusts Us

      The trusted security advisor for blockchain and financial services industries

      Brand

      Access official logos, fonts, and guidelines

      Service Commitments

      Committed to Protecting Your Data

    • Audits

      In-depth evaluations of smart contracts and blockchain infrastructures

      BVSS

      Blockchain Vulnerability Scoring System

      Disclosures

      All the latest vulnerabilities discovered by Halborn

      Case Studies

      How Halborn’s solutions have empowered clients to overcome security issues

      Reports

      Comprehensive reports and data

  • Blog

  • Contact

  • Login

THIS WEBSITE USES COOKIES

We use cookies to personalise content and ads, to provide social media features and to analyse our traffic. We also share information about your use of our site with our social media, advertising and analytics partners who may combine it with other information that you've provided to them or that they've collected from your use of their services. You consent to our cookies if you continue to use our website. Learn More.

STAY CURRENT WITH HALBORN

Subscribe to the monthly Halborn Digest for our top blogs and videos, major company announcements, new whitepapers, webinar and event invites, and one exclusive interview.

ADVISORY SERVICES

AI AdvisoryRisk AssessmentBlockchain Architecture AssessmentCompliance ReadinessCustody and Key Management AssessmentTechnical Due DiligenceTechnical Training

ASSURANCE SERVICES

AI Security AssessmentAI Red TeamingSmart Contract AssessmentBlockchain Layer 1 AssessmentCode Security AuditWeb Application Penetration TestingCloud Infrastructure Penetration TestingRed Team Exercise

COMPANY

Who We AreWho Trusts UsService CommitmentsCareersBrandBlogContact

RESOURCES

AuditsDisclosuresReportsBVSSCase Studies
Halborn Logo
Privacy PolicyTerms of UseVulnerability Disclosure Policy

© Halborn 2026. All rights reserved.

Background

// Security Assessment

08.14.2025 - 08.20.2025

ZKCross - Penetration Test

ZKCross

Halborn logotext
← Back to Audits

ZKCross - Penetration Test - ZKCross


Prepared by:

Halborn Logo

HALBORN

Last Updated 09/12/2025

Date of Engagement: August 14th, 2025 - August 20th, 2025

Summary

100% of all REPORTED Findings have been addressed

All findings

17

Critical

2

High

7

Medium

7

Low

1

Informational

0


Table of Contents

  • 1. Introduction
  • 2. Assessment summary
  • 3. Scope
  • 4. Test approach and methodology
  • 5. Risk methodology
  • 6. Scope
  • 7. Assessment summary & findings overview
  • 8. Findings & Tech Details
    1. 8.1 Race condition allows duplicate bridge transactions for same lockid
    2. 8.2 First depositor can gain withdraw rights
    3. 8.3 Missing re-verification before fund release
    4. 8.4 Nonce auth message is weak and volatile
    5. 8.5 Bridge initialization endpoint accessible without authentication
    6. 8.6 Concurrency may cause resource exhaustion & duplicate worker processing
    7. 8.7 Alt-rpc verification fails open when secondary is unset
    8. 8.8 Price worker persists values without safeguards
    9. 8.9 Api endpoints served over insecure http
    10. 8.10 Event processing at head block may skip events on reorgs
    11. 8.11 Outdated third party dependencies introduce risk
    12. 8.12 Token resolution inconsistencies can cause wrong contract selection
    13. 8.13 Hardcoded secret git history
    14. 8.14 Lack of rate limits in api
    15. 8.15 Block sync pointer may update incorrectly could lead to race conditions
    16. 8.16 Risk of supply chain attack due to unpinned dependencies
    17. 8.17 Cacheable https api responses

1. Introduction

ZKCross engaged Halborn to conduct a security assessment for the off-chain side of components of their cross-chain bridge. Halborn was provided access to the testing environment for testing and performed whitebox testing to identify and validate potential security vulnerabilities. The engagement was designed to identify vulnerabilities, validate security controls, and ensure the robustness of the bridge against both traditional application threats and bridge-specific business logic risks. Testing was performed using both blackbox and greybox methodologies to balance coverage and depth, and all findings were documented and reported at the conclusion of the engagement.

2. Assessment Summary

The team at Halborn was provided a timeline for the engagement and assigned a full-time security engineer to verify the security of the assets in scope. The security engineer is a penetration testing expert with advanced knowledge in web, mobile, blockchain, recon, discovery & infrastructure penetration testing. The engineer conducted in-depth testing of transaction flows, API endpoints, and supporting infrastructure.

The assessment identified multiple vulnerabilities affecting transaction handling, withdrawal rights assignment, nonce-based authentication, event processing, token resolution, API design, and dependency management. Business-logic flaws such as duplicate processing of bridge transactions and missing verification before fund release were noted as particularly impactful. Additional weaknesses included unauthenticated initialization endpoints, lack of rate limits, cacheable HTTPS responses, and persistence of token prices without safeguards. Observations also highlighted risks from outdated dependencies and exposed secrets in code history.

The findings underscore the importance of remediating key logic and API weaknesses to improve resilience while maintaining the strong baseline already present in secure operational practices.

The client addressed all identified issues, where one issue was partially resolved and will be completely addressed in future releases of the application.

3. Scope

The following repository was part of the scope:

    • Repository: https://github.com/zkCross-Network/zkcross_release_handler

    • Commit: 750bd14d295d23e2be655be070e8d0a8ade8216f

    • Branch: audit-approach-2

4. Test Approach and Methodology

Halborn followed whitebox methodology as per the scope and performed a combination of manual and automated security testing with both to balance efficiency, timeliness, practicality, and accuracy regarding the scope of the pentest. While manual testing is recommended to uncover flaws in logic, process, and implementation; automated testing techniques assist enhance coverage of the infrastructure and can quickly identify flaws in it.

The assessment methodology covered a range of phases and employed various tools, including but not limited to the following:

- Mapping bridge workflows (lock → index → execute → release)

- Validating chain and token configuration

- Testing concurrency and race conditions in worker scheduling

- Verifying RPC reliability and alt-RPC fallback logic

- Assessing price feed caching and persistence

- Reviewing funder detection and withdrawal authorization flows

- Evaluating session, nonce, and authentication mechanisms in API endpoints

- Testing role assignment and liquidity wallet access controls

- Fuzzing endpoints for injection or misuse

- Dependency analysis for outdated or vulnerable third-party libraries

- Analysis for hardcoded credentials or API keys


5. RISK METHODOLOGY

Halborn assesses the severity of findings using either the Common Vulnerability Scoring System (CVSS) framework or the Impact/Likelihood Risk scale, depending on the engagement. CVSS is an industry standard framework for communicating characteristics and severity of vulnerabilities in software. Details can be found in the CVSS Specification Document published by F.I.R.S.T.
Vulnerabilities or issues observed by Halborn scored on the Impact/Likelihood Risk scale are measured by the LIKELIHOOD of a security incident and the IMPACT should an incident occur. This framework works for communicating the characteristics and impacts of technology vulnerabilities. The quantitative model ensures repeatable and accurate measurement while enabling users to see the underlying vulnerability characteristics that were used to generate the Risk scores. For every vulnerability, a risk level will be calculated on a scale of 5 to 1 with 5 being the highest likelihood or impact.
RISK SCALE - LIKELIHOOD
  • 5 - Almost certain an incident will occur.
  • 4 - High probability of an incident occurring.
  • 3 - Potential of a security incident in the long term.
  • 2 - Low probability of an incident occurring.
  • 1 - Very unlikely issue will cause an incident.
RISK SCALE - IMPACT
  • 5 - May cause devastating and unrecoverable impact or loss.
  • 4 - May cause a significant level of impact or loss.
  • 3 - May cause a partial impact or loss to many.
  • 2 - May cause temporary impact or loss.
  • 1 - May cause minimal or un-noticeable impact.
The risk level is then calculated using a sum of these two values, creating a value of 10 to 1 with 10 being the highest level of security risk.
Critical
High
Medium
Low
Informational
  • 10 - CRITICAL
  • 9 - 8 - HIGH
  • 7 - 6 - MEDIUM
  • 5 - 4 - LOW
  • 3 - 1 - VERY LOW AND INFORMATIONAL

6. SCOPE

Remediation Commit ID:
  • fda1712
  • 29290a7
  • https://github.com/zkCross-Network/zkcross_release_handler/blob/release-1.1/docs/audit-responses/HAL-09-insecure-http-deployment-fix.md
  • https://github.com/zkCross-Network/zkcross_release_handler/blob/release-1.1/docs/audit-responses/README.md
Out-of-Scope: New features/implementations after the remediation commit IDs.

7. Assessment Summary & Findings Overview

Critical

2

High

7

Medium

7

Low

1

Informational

0

Security analysisRisk levelRemediation Date
Race condition allows duplicate bridge transactions for same lockIdCriticalSolved - 09/12/2025
First depositor can gain withdraw rightsCriticalSolved - 09/11/2025
Missing re-verification before fund releaseHighSolved - 09/11/2025
Nonce auth message is weak and volatileHighSolved - 09/11/2025
Bridge Initialization Endpoint Accessible Without AuthenticationHighSolved - 09/11/2025
Concurrency may cause resource exhaustion & duplicate worker processingHighSolved - 09/11/2025
Alt-RPC verification fails open when secondary is unsetHighSolved - 09/11/2025
Price worker persists values without safeguardsHighSolved - 09/12/2025
API Endpoints Served Over Insecure HTTPHighSolved - 09/11/2025
Event processing at head block may skip events on reorgsMediumSolved - 09/11/2025
Outdated third party dependencies introduce riskMediumPartially Solved - 09/11/2025
Token resolution inconsistencies can cause wrong contract selectionMediumSolved - 09/11/2025
Hardcoded Secret Git HistoryMediumSolved - 09/11/2025
Lack of Rate Limits in APIMediumSolved - 09/11/2025
Block sync pointer may update incorrectly could lead to race conditionsMediumSolved - 09/11/2025
Risk Of Supply Chain Attack Due To Unpinned DependenciesMediumSolved - 09/11/2025
Cacheable Https API ResponsesLowSolved - 09/11/2025

8. Findings & Tech Details

8.1 Race condition allows duplicate bridge transactions for same lockId

//

Critical

Description
Proof of Concept
Score
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N(9.1)
Recommendation
Remediation Comment
Remediation Hash

8.2 First depositor can gain withdraw rights

//

Critical

Description
Proof of Concept
Score
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N(9.1)
Recommendation
Remediation Comment
Remediation Hash

8.3 Missing re-verification before fund release

//

High

Description
Proof of Concept
Score
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:H/A:N(8.2)
Recommendation
Remediation Comment
Remediation Hash

8.4 Nonce auth message is weak and volatile

//

High

Description
Proof of Concept
Score
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:H/A:N(8.2)
Recommendation
Remediation Comment

8.5 Bridge Initialization Endpoint Accessible Without Authentication

//

High

Description
Score
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N(7.5)
Recommendation
Remediation Comment
Remediation Hash

8.6 Concurrency may cause resource exhaustion & duplicate worker processing

//

High

Description
Proof of Concept
Score
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H(7.5)
Recommendation
Remediation Comment
Remediation Hash

8.7 Alt-RPC verification fails open when secondary is unset

//

High

Description
Proof of Concept
Score
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N(7.5)
Recommendation
Remediation Comment
Remediation Hash

8.8 Price worker persists values without safeguards

//

High

Description
Proof of Concept
Score
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N(7.5)
Recommendation
Remediation Comment
Remediation Hash

8.9 API Endpoints Served Over Insecure HTTP

//

High

Description
Proof of Concept
Score
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N(7.5)
Recommendation
Remediation Comment
Remediation Hash
https://github.com/zkCross-Network/zkcross_release_handler/blob/release-1.1/docs/audit-responses/HAL-09-insecure-http-deployment-fix.md

8.10 Event processing at head block may skip events on reorgs

//

Medium

Description
Proof of Concept
Score
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N(6.5)
Recommendation
Remediation Comment
Remediation Hash

8.11 Outdated third party dependencies introduce risk

//

Medium

Description
Proof of Concept
Score
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N(6.5)
Recommendation
Remediation Comment
Remediation Hash

8.12 Token resolution inconsistencies can cause wrong contract selection

//

Medium

Description
Proof of Concept
Score
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N(5.3)
Recommendation
Remediation Comment
Remediation Hash

8.13 Hardcoded Secret Git History

//

Medium

Description
Proof of Concept
Score
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:N(5.3)
Recommendation
Remediation Comment
Remediation Hash
https://github.com/zkCross-Network/zkcross_release_handler/blob/release-1.1/docs/audit-responses/README.md

8.14 Lack of Rate Limits in API

//

Medium

Description
Proof of Concept
Score
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L(5.3)
Recommendation
Remediation Comment
Remediation Hash

8.15 Block sync pointer may update incorrectly could lead to race conditions

//

Medium

Description
Proof of Concept
Score
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:L(4.8)
Recommendation
Remediation Comment
Remediation Hash

8.16 Risk Of Supply Chain Attack Due To Unpinned Dependencies

//

Medium

Description
Proof of Concept
Score
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:N/I:L/A:N(4.0)
Recommendation
Remediation Comment
Remediation Hash

8.17 Cacheable Https API Responses

//

Low

Description
Score
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N(3.7)
Recommendation
Remediation Comment
Remediation Hash

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.

Table of Contents

  • 1. Introduction
  • 2. Assessment summary
  • 3. Scope
  • 4. Test approach and methodology
  • 5. Risk methodology
  • 6. Scope
  • 7. Assessment summary & findings overview
  • 8. Findings & Tech Details
    1. 8.1 Race condition allows duplicate bridge transactions for same lockid
    2. 8.2 First depositor can gain withdraw rights
    3. 8.3 Missing re-verification before fund release
    4. 8.4 Nonce auth message is weak and volatile
    5. 8.5 Bridge initialization endpoint accessible without authentication
    6. 8.6 Concurrency may cause resource exhaustion & duplicate worker processing
    7. 8.7 Alt-rpc verification fails open when secondary is unset
    8. 8.8 Price worker persists values without safeguards
    9. 8.9 Api endpoints served over insecure http
    10. 8.10 Event processing at head block may skip events on reorgs
    11. 8.11 Outdated third party dependencies introduce risk
    12. 8.12 Token resolution inconsistencies can cause wrong contract selection
    13. 8.13 Hardcoded secret git history
    14. 8.14 Lack of rate limits in api
    15. 8.15 Block sync pointer may update incorrectly could lead to race conditions
    16. 8.16 Risk of supply chain attack due to unpinned dependencies
    17. 8.17 Cacheable https api responses

// Download the full report

ZKCross - Penetration Test

* Use Google Chrome for best results

** Check "Background Graphics" in the print settings if needed