By using this site, you agree to the Privacy Policy and Terms of Use.
Accept
World of SoftwareWorld of SoftwareWorld of Software
  • News
  • Software
  • Mobile
  • Computing
  • Gaming
  • Videos
  • More
    • Gadget
    • Web Stories
    • Trending
    • Press Release
Search
  • Privacy
  • Terms
  • Advertise
  • Contact
Copyright © All Rights Reserved. World of Software.
Reading: Detecting Vulnerabilities, Byte by Byte: The Architecture of AVVERIFIER | HackerNoon
Share
Sign In
Notification Show More
Font ResizerAa
World of SoftwareWorld of Software
Font ResizerAa
  • Software
  • Mobile
  • Computing
  • Gadget
  • Gaming
  • Videos
Search
  • News
  • Software
  • Mobile
  • Computing
  • Gaming
  • Videos
  • More
    • Gadget
    • Web Stories
    • Trending
    • Press Release
Have an existing account? Sign In
Follow US
  • Privacy
  • Terms
  • Advertise
  • Contact
Copyright © All Rights Reserved. World of Software.
World of Software > Computing > Detecting Vulnerabilities, Byte by Byte: The Architecture of AVVERIFIER | HackerNoon
Computing

Detecting Vulnerabilities, Byte by Byte: The Architecture of AVVERIFIER | HackerNoon

News Room
Last updated: 2025/07/14 at 7:03 PM
News Room Published 14 July 2025
Share
SHARE

Table of Links

Abstract and 1. Introduction

  1. Background

    2.1 Ethereum Primer

    2.2 Whitelisted Address Verification

    2.3 Taint Analysis on Smart Contracts and 2.4 Threat Model

  2. Motivating Example and Challenges

    3.1 Motivating Example

    3.2 Challenges

    3.3 Limitations of Existing Tools

  3. Design of AVVERIFIER and 4.1 Overview

    4.2 Notations

    4.3 Component#1: Code Grapher

    4.4 Component#2: EVM Simulator

    4.5 Component#3: Vulnerability Detector

  4. Evaluation

    5.1 Experimental Setup & Research Questions

    5.2 RQ1: Effectiveness & Efficiency

    5.3 RQ2: Characteristics of Real-world Vulnerable Contracts

    5.4 RQ3: Real-time Detection

  5. Discussion

    6.1 Threats to Validity and 6.2 Limitations

    6.3 Ethical Consideration

  6. Related Work

  7. Conclusion, Availability, and References

4 Design of AVVERIFIER

This section elucidates the technical intricacies of AVVERIFIER, which is designed to detect the address verification vulnerability in Ethereum smart contracts. We firstly give a high-level overview in §4.1, and an introduction of adopted notations in §4.2. Then, we delve into the three components, respectively, from §4.3 to §4.5.

4.1 Overview

Fig. 1 illustrates the architecture and workflow of AVVERIFIER, which is composed of three main components, i.e., code grapher (denoted as Grapher), EVM simulator (denoted as Simulator), and vulnerability detector (denoted as Detector). Specifically, AVVERIFIER only takes the bytecode of a Solidity smart contract as input. The Grapher parses it into the control flow graph (CFG), filters out all suspicious functions as candidates, and delivers them to the Simulator. The Simulator maintains a state, consisting of two parts. One part is the data structures required by EVM, i.e., stack, memory, and storage (see §2.1); the other part is the collected taint information. According to the CFG, the Simulator updates fields in states according to the opcode sequence. It also adopts a heuristicbased path selection method to focus on the most valuable path, i.e., the ones that may lead to the vulnerability. Once the analysis against a path is finished, the corresponding state is sent to the Detector to determine if the current contract is vulnerable to the address verification vulnerability. The cascaded three-phase detection strategy in the Detector rules out false positives and false negatives based on the intrinsic characteristics (P1 to P3).

4.2 Notations

To better explain the implementation of AVVERIFIER, we define some notations here:

• S, the set of sources that can be controlled by users;

• T, the set of tainted variables;

• CT, a mapping from a tainted variable to its sources;

Figure 1: The workflow and architecture of AVVERIFIER.Figure 1: The workflow and architecture of AVVERIFIER.

Figure 2: The CFG of foo.Figure 2: The CFG of foo.

• F, the set of suspicious functions;

• Mem, Sto, refer to the memory and storage area in EVM.

• V, EC, and SM, refer to the three-stage detection in the Detector, respectively. Each of them takes a function f and a parameter p as inputs.

4.3 Component#1: Code Grapher

Generally speaking, the Grapher is responsible for obtaining the sub-tree of CFG of the given function. Given a piece of bytecode, Grapher firstly extracts the runtime code, consisting of implementation of functions [40]. Then, Grapher parses it into basic blocks and constructs the CFG according to their jump relations. However, some jump relations are determined dynamically at runtime instead of statically at the compilation stage. Thus, the Grapher constructs the CFG only on statically determined jump relations considering the soundness. Take the Fig. 2 as an example, where bb1 is the entry of the function foo and its jump relations to bb2 and bb3 can be statically determined. Though bb3 and bb4 can jump to bb5 at runtime, they are determined dynamically. Thus, though the Grapher generates two trees whose roots are bb1 and bb5, respectively, bb5 is actually a subtree of bb1 at runtime.

To filter out suspicious functions, i.e., the ones that may be vulnerable to the address verification vulnerability, the Grapher heuristically keeps functions that take addresses as arguments (P1). Specifically, each address parameter undergoes a bitwise AND operation with 0xFF..FF (160-bit long). By identifying such a specific pattern, which is also widely adopted in previous work [7], we can extract functions that meet P1. These functions will be added to the set F .

Authors:

(1) Tianle Sun, Huazhong University of Science and Technology;

(2) Ningyu He, Peking University;

(3) Jiang Xiao, Huazhong University of Science and Technology;

(4) Yinliang Yue, Zhongguancun Laboratory;

(5) Xiapu Luo, The Hong Kong Polytechnic University;

(6) Haoyu Wang, Huazhong University of Science and Technology.


Sign Up For Daily Newsletter

Be keep up! Get the latest breaking news delivered straight to your inbox.
By signing up, you agree to our Terms of Use and acknowledge the data practices in our Privacy Policy. You may unsubscribe at any time.
Share This Article
Facebook Twitter Email Print
Share
What do you think?
Love0
Sad0
Happy0
Sleepy0
Angry0
Dead0
Wink0
Previous Article This Adobe Acrobat Competitor Doesn’t Require a Subscription
Next Article ‘The way a child plays is the way they live’: how therapists are using video games to help vulnerable children
Leave a comment

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Stay Connected

248.1k Like
69.1k Follow
134k Pin
54.3k Follow

Latest News

23 Innovative Ideas for Inclusive Professional Development in Small Businesses
Gadget
Building connections with AI industry is vital to keeping degrees relevant
Software
Death Stranding 2’s Hideo Kojima draws crowds at Bilibili World · TechNode
Computing
The Enshittification of American Power
Gadget

You Might also Like

Computing

Death Stranding 2’s Hideo Kojima draws crowds at Bilibili World · TechNode

2 Min Read
Computing

How to Migrate From Substack to WordPress in 10 Easy Steps

29 Min Read
Computing

29 Top AI Tools You Need to Try in 2025

52 Min Read
Computing

Huawei teases first EV with China’s biggest automaker SAIC · TechNode

5 Min Read
//

World of Software is your one-stop website for the latest tech news and updates, follow us now to get the news that matters to you.

Quick Link

  • Privacy Policy
  • Terms of use
  • Advertise
  • Contact

Topics

  • Computing
  • Software
  • Press Release
  • Trending

Sign Up for Our Newsletter

Subscribe to our newsletter to get our newest articles instantly!

World of SoftwareWorld of Software
Follow US
Copyright © All Rights Reserved. World of Software.
Welcome Back!

Sign in to your account

Lost your password?