Sep 2026· Proceedings of the 41st IEEE/ACM International Conference on Automated Software Engineering· 0 citations· 40 references
Computer Science
TL;DR
TasmScan is presented, the first bytecode-level static analysis framework for TVM that enables cross-continuation data flow reasoning without requiring source code and ablation confirms that savelist propagation is essential for resolving indirect register calls that depend on cross-continuation register passing.
Abstract
The Open Network (TON), with a peak market capitalization exceeding $20 billion and over 175 million activated on-chain addresses, relies on the TVM (TON Virtual Machine) to execute smart contracts. TVM uses first-class continuations with savelists to manage control flow and register state across continuation invocations. Since savelist-captured registers allow data to flow across continuation boundaries without passing through the operand stack, bytecode-level analyses cannot construct complete data flow tracking without explicitly modeling savelist semantics. We present TasmScan, the first bytecode-level static analysis framework for TVM that enables cross-continuation data flow reasoning without requiring source code. TasmScan models savelist semantics via forward register analysis with a formal over-approximation guarantee for exact-resolved save sites and locally tracked register definitions, then lifts bytecode into TASIR, a typed intermediate representation, and performs path-sensitive taint analysis with context-aware sources to detect defects. We evaluate TasmScan on 2,921 contracts from the TON verifier registry and a labeled benchmark of 208 contracts with human-confirmed ground truth. On the full corpus, TasmScan resolves 294,546 dynamic continuation targets with 100% precision; ablation confirms that savelist propagation is essential for resolving indirect register calls that depend on cross-continuation register passing. On the benchmark, TasmScan detects 95.3% of defects across five classes with 96.8% precision. A 366-pair stratified sample from the full corpus estimates 85.8% overall precision. TasmScan offers a 17× median speedup over the state-of-the-art symbolic-execution baseline, and in the path-analysis comparison completes 100% of analyses with zero crashes or timeouts.
CPyGraph, a C++ framework for package-level analysis of native CPython bytecode, is presented, a C++ framework for package-level analysis of native CPython bytecode that matches PyCG on its 112-program call-graph benchmark.
Security and robustness risks in Python async programs depend on event order, object identity, and execution after exceptions or cancellation. Detecting these risks requires connecting related operations across function calls and tracking their effects along execution paths. We present AegisAsync, a bytecode-based anal...
Static program analysis for Java is significantly hindered by the use of reflection and custom class loaders. To address this, the popular TamiFlex framework traces concrete targets of reflective calls and dumps loaded classes via a Play-out agent, enabling static analysis followed by re-insertion of transformed classe...
Gauravsingh Sisodia, Poorna Teja Pasala, Aditya Anand et al.· Proceedings of the 18th ACM...· 0 citations
Regular expressions (regexes) are widely used in computer science, particularly in web services. However, Regular Expression Denial-of-Service (ReDoS) has become a growing security threat. ReDoS is an asymmetric Denial-of-Service attack that exploits the super-linear runtime behavior of regex engines. However, existing...
Rong-Chen Li, Wei-Hao Su, Cheng-Yao Peng et al.· Proceedings of the 41st IEEE...· 0 citations
Static program analysis finds bugs before software ships, and modern checkers for C/C++ depend on whole-program infrastructure: pointer analysis, value-flow tracking, taint analysis, and IFDS-based data flow on top of LLVM. Today’s LLVM-IR frameworks fall short. SVF, Phasar, and Lotus expose their analyses through C++...
Yue-Kang Li, Wei Li, Wei Song et al.· Proceedings of the 41st IEEE...· 0 citations
Compiler security instrumentation is portable only when the compiler, application binary interface, runtime, loader, operating system, and hardware preserve the same security contract. We present Evidence-Carrying Portability Contracts (ECPC), a machine-readable method that binds each versioned configuration to seven r...
Ebru Resul, Stefan A. Iordache, R. Rughiniș et al.· Information· 0 citations
We use cookies to run the site and, with your consent, for analytics and to show ads.
See our Cookie Policy.