Omniscia Nuklai Audit

Data Tunnel Security Audit

Audit Report Revisions

Commit HashDateAudit Report Hash
ca74e90a7fOctober 26th 20236fc7531b34
fb50b5c396November 14th 20239973e3a98a
938d6b02caNovember 17th 2023789d3c33c7
938d6b02caNovember 17th 202326df33fa0e
938d6b02caNovember 17th 2023f0afd3be32

Audit Overview

We were tasked with performing an audit of the Nuklai codebase and in particular their Data Tunnel module.

Our audit efforts mainly focused in validating that the signature-verification methodologies are correctly employed, the multi-contract execution paths perform as expected, and that all payment related mechanisms in the DistributionManager as well as ERC20SubscriptionManager behave correctly.

Over the course of these efforts, we identified multiple vulnerabilities of significant concern including:

  • An insecure data-set creation signature verification that permits any party to "claim" a data-set ID that may be intended for another user
  • An execution path within the AcceptManuallyVerifier that permits a user to bypass the manual verification with a maliciously crafted input contract
  • A re-entrancy attack vector in the FragmentNFT::proposeMany mechanism which can cause contributions to be attached to different IDs than the ones that were signed
  • An incorrect dependency tree in the GenericSingleDatasetSubscriptionManager that causes its deployment to not possess a proper EIP-721 name and symbol

We also identified certain issues in relation to how payments are handled by the GenericSingleDatasetSubscriptionManager which while medium and minor in severity significantly impact user experience and we strongly advise them to be remediated as soon as possible.

We advise the Nuklai team to closely evaluate all minor-and-above findings identified in the report and promptly remediate them as well as consider all optimizational exhibits identified in the report.

Post-Audit Conclusion

The Nuklai team iterated through all findings within the report and provided us with a revised commit hash to evaluate all exhibits on.

We evaluated all alleviations performed by Nuklai and have identified that two exhibits have been improperly dealt with and thus cause a bug to manifest in each case. We advise the Nuklai team to revisit the following exhibits: DNF-03C, DMR-02C

Post-Audit Conclusion (938d6b02ca)

The Nuklai team re-evaluated the aforementioned exhibits and proceeded with applying their optimizations securely by following are follow-up recommendations.

All exhibits outlined within the audit have been properly dealt with and we consider all outputs of the report properly consumed by the Nuklai team.

Audit Synopsis

SeverityIdentifiedAlleviatedPartially AlleviatedAcknowledged
1100
262600
7700
1100
5500

During the audit, we filtered and validated a total of 6 findings utilizing static analysis tools as well as identified a total of 34 findings during the manual review of the codebase. We strongly recommend that any minor severity or higher findings are dealt with promptly prior to the project's launch as they can introduce potential misbehaviours of the system as well as exploits.

Total Alleviations

The list below covers each segment of the audit in depth and links to the respective chapter of the report: