Static Application Security Testing of Consensus-Critical Code in the Cosmos Network
Jasper Surmont, Weihong Wang, Tom Van Cutsem

TL;DR
This paper evaluates and refines static analysis tools to detect non-determinism sources in Cosmos SDK-based blockchains, improving security by reducing false positives in code analysis.
Contribution
It develops a more precise set of CodeQL rules for detecting non-determinism in Cosmos appchains, enhancing static security testing effectiveness.
Findings
Refactored CodeQL rules reduce false positives
Enhanced detection accuracy for blockchain logic
Improved security potential for Cosmos appchains
Abstract
Blockchains require deterministic execution in order to reach consensus. This is often guaranteed in languages designed to write smart contracts, such as Solidity. Application-specific blockchains or ``appchains'' allow the blockchain application logic to be written using general-purpose programming languages, giving developers more flexibility but also additional responsibilities. In particular, developers must ensure that their blockchain application logic does not contain any sources of non-determinism. Any source of non-determinism may be a potential source of vulnerabilities. This paper focuses on the use of Static Application Security Testing (SAST) tools to detect such sources of non-determinism at development time. We focus on Cosmos, a prominent open-source project that lets developers build interconnected networks of application-specific blockchains. Cosmos provides a…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsAdvanced Malware Detection Techniques · Security and Verification in Computing · Blockchain Technology Applications and Security
