vandal
vandal copied to clipboard
Static program analysis framework for Ethereum smart contract bytecode.
Is it possible to check vulnerabilities in contract build with Solidity 0.5x?
Hi, base on the CFGs generated for the DAO_hack example, there seems to be a dangling node. What is the reason that we have these kinds of dangling nodes? They...
One example contract which produces this error (several different contracts do): [0x1a9559716cafded0b9573768ea52ee29e922b687_2271995_runtime.txt](https://github.com/usyd-blockchain/vandal/files/1897406/0x1a9559716cafded0b9573768ea52ee29e922b687_2271995_runtime.txt) ``` Traceback (most recent call last): File "../../bin/decompile", line 206, in cfg = tac_cfg.TACGraph.from_bytecode(args.infile) File "/home/lexi/repos/vandal/bin/../src/tac_cfg.py", line 123,...
We need to implement the new REVERT and RETURNDATA* opcodes included in the metropolis release.
It would be nice if the decompiler had an option to output just the IL code without other metadata.
Currently the IL output does the following: ``` 0x57: V23 = 0x20 0x59: V24 = ADD 0x20 V22 ``` corresponding to: ``` 0x57 PUSH1 0x20 0x59 ADD ``` In this...
Similar to stack capacity freezing. Better than widening, in some cases, e.g. variables with sequential values.
The tests really need to be better. Some categories of tests to include (in no particular order): * Functionality of each EVM operation * Variables and lattice objects * Def...
We might consider targeting Julia or solidity-assembly. In this fashion we might be able to emit compilable decompiled code.