Summary
100% of all REPORTED Findings have been addressed
- 0Risk Accepted
- 1Partially Solved
- 16Solved
- 17All Findings
- Critical2
- 2Solved
- High7
- 7Solved
- Medium7
- 6Solved
- 1P. Solved
- Low1
- 1Solved
- Informational0
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.
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.
Scope#
The following repository was part of the scope:
Repository: https://github.com/zkCross-Network/zkcross_release_handler
Commit:
750bd14d295d23e2be655be070e8d0a8ade8216fBranch:
audit-approach-2
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
Risk Methodology#
- 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.
- 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.
- 10 - CRITICAL
- 9 - 8 - HIGH
- 7 - 6 - MEDIUM
- 5 - 4 - LOW
- 3 - 1 - VERY LOW AND INFORMATIONAL
Scope#
Assessment Summary & Findings Overview#
# | Title | Severity | Score | Status |
|---|---|---|---|---|
| Race condition allows duplicate bridge transactions for same lockId | Critical | 9.1 | Solved09/12/2025 | |
| First depositor can gain withdraw rights | Critical | 9.1 | Solved09/11/2025 | |
| Missing re-verification before fund release | High | 8.2 | Solved09/11/2025 | |
| Nonce auth message is weak and volatile | High | 8.2 | Solved09/11/2025 | |
| Bridge Initialization Endpoint Accessible Without Authentication | High | 7.5 | Solved09/11/2025 | |
| Concurrency may cause resource exhaustion & duplicate worker processing | High | 7.5 | Solved09/11/2025 | |
| Alt-RPC verification fails open when secondary is unset | High | 7.5 | Solved09/11/2025 | |
| Price worker persists values without safeguards | High | 7.5 | Solved09/12/2025 | |
| API Endpoints Served Over Insecure HTTP | High | 7.5 | Solved09/11/2025 | |
| Event processing at head block may skip events on reorgs | Medium | 6.5 | Solved09/11/2025 | |
| Outdated third party dependencies introduce risk | Medium | 6.5 | Partially Solved09/11/2025 | |
| Token resolution inconsistencies can cause wrong contract selection | Medium | 5.3 | Solved09/11/2025 | |
| Hardcoded Secret Git History | Medium | 5.3 | Solved09/11/2025 | |
| Lack of Rate Limits in API | Medium | 5.3 | Solved09/11/2025 | |
| Block sync pointer may update incorrectly could lead to race conditions | Medium | 4.8 | Solved09/11/2025 | |
| Risk Of Supply Chain Attack Due To Unpinned Dependencies | Medium | 4.0 | Solved09/11/2025 | |
| Cacheable Https API Responses | Low | 3.7 | Solved09/11/2025 |
Findings & Tech Details#
Description
Proof of Concept
Recommendation
Remediation Comment
Description
Proof of Concept
Recommendation
Remediation Comment
Description
Proof of Concept
Recommendation
Remediation Comment
Description
Proof of Concept
Recommendation
Remediation Comment
Description
Recommendation
Remediation Comment
Description
Proof of Concept
Recommendation
Remediation Comment
Description
Proof of Concept
Recommendation
Remediation Comment
Description
Proof of Concept
Recommendation
Remediation Comment
Description
Proof of Concept
Recommendation
Remediation Comment
Description
Proof of Concept
Recommendation
Remediation Comment
Description
Proof of Concept
Recommendation
Remediation Comment
Description
Proof of Concept
Recommendation
Remediation Comment
Description
Proof of Concept
Recommendation
Remediation Comment
Description
Proof of Concept
Recommendation
Remediation Comment
Description
Proof of Concept
Recommendation
Remediation Comment
Description
Proof of Concept
Recommendation
Remediation Comment
Description
Recommendation
Remediation Comment
Disclaimer#
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.
