Newly discovered integer overflow vulnerability in Move language may cause node crash

robot
Abstract generation in progress

A new integer overflow vulnerability discovered in Move language

Recently, security researchers discovered a new integer overflow vulnerability while deeply analyzing the Move language. This vulnerability occurs during the reference safety verification process of the Move language and could lead to node crashes.

Numen Cyber exclusive discovery of another high-risk vulnerability in move language

The Move language performs code verification before executing bytecode, which consists of four steps. This vulnerability exists in the reference_safety step. The reference safety verification mainly checks for dangling references, whether mutable reference access is safe, and whether global storage reference access is safe, among other things.

Numen Cyber exclusively discovered another critical vulnerability in the move language

The verification process will analyze each basic block. A basic block is a sequence of code that has no branch instructions except for entry and exit. Move identifies basic blocks by traversing the bytecode and looking for branch and loop instructions.

Numen Cyber exclusive discovery of another high-risk vulnerability in the move language

The main process of verifying the security of references is: executing the code for each basic block, generating the state after execution, then merging the states before and after execution, updating the block state and propagating it to subsequent blocks. This process is repeated until the state no longer changes or an error occurs.

Numen Cyber exclusive discovery of another high-risk vulnerability in the move language

The vulnerability occurs during the merge state process. If the length of the function parameters plus the length of the local variables exceeds 256, it will lead to an overflow of the u8 type. Although there is code that checks the number of local variables, it does not include the length of the parameters.

Numen Cyber exclusively discovered another high-risk vulnerability in the move language

Using this overflow can change the state of the block, making the old and new states different. When executing the basic block again, accessing an index that does not exist in the new state will cause the program to crash.

Numen Cyber exclusive discovery of another high-risk vulnerability in the move language

Researchers have provided a proof-of-concept code that can trigger this vulnerability, causing the node to crash. This indicates that even statically typed languages may have security issues, making code auditing very important. It is recommended that the Move language implement more security checks at runtime, not just during the validation phase.

Numen Cyber Exclusive Discovery: Another High-Risk Vulnerability in Move Language

The discovery of this vulnerability once again shows that there is no absolutely secure code. Even strongly typed languages can have vulnerabilities. Security researchers will continue to analyze the Move language in depth to look for more potential issues.

Numen Cyber exclusively discovers another high-risk vulnerability in the move language

Numen Cyber exclusively discovers another high-risk vulnerability in the move language

Numen Cyber exclusively discovered another high-risk vulnerability in the move language

Numen Cyber exclusive discovery of another high-risk vulnerability in the move language

Numen Cyber exclusive discovery of another high-risk vulnerability in move language

Numen Cyber exclusively discovered another critical vulnerability in the move language

Numen Cyber exclusively discovers another high-risk vulnerability in move language

Numen Cyber exclusive discovery of another high-risk vulnerability in the move language

MOVE-0.52%
View Original
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
  • Reward
  • 7
  • Repost
  • Share
Comment
0/400
BlockchainRetirementHomevip
· 8h ago
Is Move going to cool down?
View OriginalReply0
MemeEchoervip
· 8h ago
Crashed again, how many times is it today?
View OriginalReply0
AirdropBlackHolevip
· 8h ago
This wave of hot topics has taken a stand~ move has exploded
View OriginalReply0
UncleLiquidationvip
· 8h ago
Got to fix the pot again, huh?
View OriginalReply0
MidnightSnapHuntervip
· 8h ago
move is cool
View OriginalReply0
ApeWithNoChainvip
· 8h ago
Is move crashing again? It's no longer worth expecting...
View OriginalReply0
ZenChainWalkervip
· 9h ago
After watching, I just want to lie flat...
View OriginalReply0
Trade Crypto Anywhere Anytime
qrCode
Scan to download Gate app
Community
English
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)