Giter Club home page Giter Club logo

pakala's Introduction

Pakala

PyPI Build States

"ilo Pakala li pakala e mani sona"

  • Pakala is a tool to search for exploitable bugs in Ethereum smart contracts.
  • Pakala is a symbolic execution engine for the Ethereum Virtual Machine.

The intended public for the tool are security researchers interested by Ethereum / the EVM.

Installation

pip3 install pakala

It works only with python 3.

Usage

Let's look at 0xeBE6c7a839A660a0F04BdF6816e2eA182F5d542C: it has a transfer(address _to, uint256 _value) function. It is supposedly protected by a require(call.value - _value) >= 0 but that condition always holds because we are substracting two unsigned integers, so the result is also an unsigned integer.

Let's scan it:

pakala 0xeBE6c7a839A660a0F04BdF6816e2eA182F5d542C --force-balance="1 ether"

The contract balance being 0, we won't be able to have it send us some ethers. So we override the balance to be 1 ETH: then it has some "virtual" money to send us.

The tool with tell you a bug was found, and dump you a path of "states". Each state corresponds to a transaction, with constraints that needs to be respected for that code path to be taken, storage that has been read/written...

Advice: look at calldata[0] in the constraints to see the function signature for each transaction.

See pakala help for more complete usage information.

How does it works? What does it do?

See the introductory article for more information and a demo.

In a nutshell:

  • It's very good at finding simple bugs in simple contracts.
  • The false-positive rate is very low. If it flags your contract it's likely people can drain it.
  • It can exploit non-trivial bugs requiring to overwrite some storage keys with others (array size underflow...), has a good modeling of cryptographic hashes, and support chaining multiple transactions.

However, It only implements an "interesting" subset of the EVM. It doesn't handle:

  • gas,
  • precompiles,
  • or a contract interacting with other contracts (DELEGATECALL, STATICCALL...).

This means that CALL support is limited to sending ethers. Other tools like Manticore can do that much better, and the focus for Pakala was offensive vulnerability scanning of contracts en masse.

pakala's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

pakala's Issues

Dependency chain is out of date thus preventing correct install.

additionally, to the problem below, only one version of eth-bloom is available on PyPi (which is the one being installed).

pakala
Traceback (most recent call last):
  File "/usr/lib64/pypy3-7.3/site-packages/pkg_resources/__init__.py", line 567, in _build_master
    ws.require(__requires__)
  File "/usr/lib64/pypy3-7.3/site-packages/pkg_resources/__init__.py", line 884, in require
    needed = self.resolve(parse_requirements(requirements))
  File "/usr/lib64/pypy3-7.3/site-packages/pkg_resources/__init__.py", line 775, in resolve
    raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.ContextualVersionConflict: (eth-hash 0.3.1 (/usr/lib64/pypy3-7.3/site-packages), Requirement.parse('eth-hash<0.3.0,>=0.1.0a3'), {'eth-bloom'})

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib64/pypy3-7.3/bin/pakala", line 33, in <module>
    sys.exit(load_entry_point('pakala==1.1.10', 'console_scripts', 'pakala')())
  File "/usr/lib64/pypy3-7.3/bin/pakala", line 25, in importlib_load_entry_point
    return next(matches).load()
  File "/usr/lib64/pypy3-7.3/site-packages/importlib_metadata/__init__.py", line 96, in load
    module = import_module(match.group('module'))
  File "/usr/lib64/pypy3-7.3/lib-python/3/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1003, in _gcd_import
  File "<frozen importlib._bootstrap>", line 980, in _find_and_load
  File "<frozen importlib._bootstrap>", line 964, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 674, in _load_unlocked
  File "<builtin>/frozen importlib._bootstrap_external", line 691, in exec_module
  File "<frozen importlib._bootstrap>", line 228, in _call_with_frames_removed
  File "/usr/lib64/pypy3-7.3/site-packages/pakala/cli.py", line 24, in <module>
    from pakala import sm
  File "/usr/lib64/pypy3-7.3/site-packages/pakala/sm.py", line 27, in <module>
    import claripy
  File "/usr/lib64/pypy3-7.3/site-packages/claripy/__init__.py", line 21, in <module>
    from . import backends as _backends_module
  File "/usr/lib64/pypy3-7.3/site-packages/claripy/backends/__init__.py", line 781, in <module>
    from .backend_z3 import BackendZ3
  File "/usr/lib64/pypy3-7.3/site-packages/claripy/backends/backend_z3.py", line 3, in <module>
    import z3
  File "/usr/lib64/pypy3-7.3/site-packages/z3/__init__.py", line 1, in <module>
    from .z3 import *
  File "/usr/lib64/pypy3-7.3/site-packages/z3/z3.py", line 44, in <module>
    from . import z3core
  File "/usr/lib64/pypy3-7.3/site-packages/z3/z3core.py", line 4, in <module>
    import pkg_resources
  File "/usr/lib64/pypy3-7.3/site-packages/pkg_resources/__init__.py", line 3238, in <module>
    @_call_aside
  File "/usr/lib64/pypy3-7.3/site-packages/pkg_resources/__init__.py", line 3222, in _call_aside
    f(*args, **kwargs)
  File "/usr/lib64/pypy3-7.3/site-packages/pkg_resources/__init__.py", line 3251, in _initialize_master_working_set
    working_set = WorkingSet._build_master()
  File "/usr/lib64/pypy3-7.3/site-packages/pkg_resources/__init__.py", line 569, in _build_master
    return cls._build_from_requirements(__requires__)
  File "/usr/lib64/pypy3-7.3/site-packages/pkg_resources/__init__.py", line 582, in _build_from_requirements
    dists = ws.resolve(reqs, Environment())
  File "/usr/lib64/pypy3-7.3/site-packages/pkg_resources/__init__.py", line 775, in resolve
    raise VersionConflict(dist, req).with_context(dependent_req)
pkg_resources.ContextualVersionConflict: (eth-hash 0.3.1 (/usr/lib64/pypy3-7.3/site-packages), Requirement.parse('eth-hash<0.3.0,>=0.1.0a3'), {'eth-bloom'}

How to obtain private key?

Hi,

After a successful analysis I got the following output:

Transaction 1, example solution:
{'caller': '0xcafebabefffffffff0202fffffffff7cff7247c9',
 'data': '2e1a7d4d00000000000000000000000000000000000000000000000000038d7ea4c68001',
 'value': 0}
======> Bug found! Need 1 transactions. <======

In this case, how do I get the private key for caller 0xcafebabefffffffff0202fffffffff7cff7247c9 ?

Thank you!

windows install error

running into this trying to install on windows -- some googling tells me it might be related to an ethash dependency? any tips? thanks!

    src/python/core.c(2): fatal error C1083: Cannot open include file: 'alloca.h': No such file or directory
    error: command 'C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community\\VC\\Tools\\MSVC\\14.15.26726\\bin\\HostX86\\x64\\cl.exe' failed with exit status 2

Please support Infura.

Because not every computer have the power to run a node, please modify web3 importe in order to support web3.auto.infura.

Please support Infura.

Because not every computer have the power to run a node, please modify web3 importe in order to support web3.auto.infura.

"Seems like Web3.py can't connect to your Ethereum node"

Does infura suffice to run the tool, or do I need a local ethereum full node?

Although 'WEB3_PROVIDER_URI' has already been exported to env by $ export WEB3_PROVIDER_URI='https://mainnet.infura.io'

I've also checked that I have good internet connections, can you please help?

Can we use this to get all "traces" for a given bytecode?

First of all, this looks amazing!

Especially the simulator looks very interesting. For our research we want to develop a neural network to analyze contracts, however "simply" comparing the bytecode of contracts won't cut it. Ideally we would split the bytecode in the individual functions, like:

(just some random bytes)
func1: 681526020019550505050505060405160208183030381529060
func2: 05180910390a3620003cb565b606060038054600
func3: 457c2d71161007c578063a457c2d71461068a5780
func4: 780633644e51514610325578063395093511461034357806340c10f19146103a

then when a function calls another one we want to concatenate the bytes to capture the relations between functions, something crucial for our neural network. Like,

func2:
   func4

func1:
    func2

Then func1 should become something like: 681526020019550505050505060405160208183030381529060(f1)05180910390a3620003cb565b606060038054600 05180910390a3620003cb565b606060038054600(f2)780633644e51514610325578063395093511461034357806340c10f19146103a(f4)

Obviously this is not an accurate representation of the EVMtrace, however probably the best we can come close to capture as much information of the corresponding function call, as, to actually simulate them, we probably run into trouble of require statements that require a specific address to call it, lp to exists, balance to be present etc..

It would be amazing if this is possible with pakala, but I couldn't figure it out yet going through the code. Any help and tips would be welcome!

ecrecover related bugs are not detected

Description

It doesn't detect ecrecover failing upon invalid input

How to Reproduce

See the following piece of code:

https://gist.github.com/HarryR/cce52596ffebdff2744c5d790888015a

This was caused by a compiler bug in Solidity < 0.4.14, where the output memory area for the ecrecover call wasn't cleared, which means in the case of an invalid signature the memory may contain user-controllable input.

If the contract address is passed in as the last 20 bytes of the 32-byte stuff2hash input, then the if condition will be true and the contract will send all funds to the caller.

This was recently highlighted as a problem with the 0x contracts, see: https://samczsun.com/the-0x-vulnerability-explained/

Expected behavior

this bug should be detected

README example command fails to find bugs

Hi thanks for making your work on this project available.

When i run the example command with python 3.7 I get the following output:

python pakala.py 0x612f1BDbe93523b7f5036EfA87493B76341726E3 --force-balance="1 ether"
Analyzing contract at 0x612f1BDbe93523b7f5036EfA87493B76341726E3 with balance 1.000000 ether.
Starting symbolic execution step...
2019-01-29 19:53:36 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 8.
2019-01-29 19:53:36 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 20.
2019-01-29 19:53:36 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 24.
2019-01-29 19:53:36 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 29.
2019-01-29 19:53:36 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 35.
2019-01-29 19:53:36 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 40.
2019-01-29 19:53:36 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 46.
2019-01-29 19:53:36 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 51.
2019-01-29 19:53:36 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 57.
2019-01-29 19:53:36 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 60.
2019-01-29 19:53:36 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 65.
2019-01-29 19:53:36 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 68.
2019-01-29 19:53:36 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 89.
2019-01-29 19:53:36 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 125.
2019-01-29 19:53:36 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 163.
2019-01-29 19:53:36 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 202.
2019-01-29 19:53:36 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 212.
2019-01-29 19:53:36 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 230.
2019-01-29 19:53:36 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 245.
2019-01-29 19:53:36 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 289.
2019-01-29 19:53:36 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 292.
2019-01-29 19:53:36 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 304.
2019-01-29 19:53:36 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 380.
2019-01-29 19:53:36 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 385.
2019-01-29 19:53:36 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 400.
2019-01-29 19:53:36 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 423.
2019-01-29 19:53:36 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 432.
2019-01-29 19:53:36 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 433.
2019-01-29 19:53:36 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 467.
2019-01-29 19:53:36 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 486.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 491.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 494.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 506.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 511.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 514.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 522.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 528.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 533.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 546.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 593.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 596.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 602.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 610.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 626.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 631.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 636.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 642.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 646.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 649.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 654.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 673.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 697.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 702.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 745.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 751.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 761.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 767.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 768.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 773.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 786.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 788.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 798.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 812.
2019-01-29 19:53:37 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 816.
2019-01-29 19:54:02 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 823.
2019-01-29 19:54:02 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 825.
2019-01-29 19:54:02 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 826.
2019-01-29 19:54:02 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 830.
2019-01-29 19:54:02 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 843.
2019-01-29 19:54:03 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 848.
2019-01-29 19:54:03 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 875.
2019-01-29 19:54:03 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 880.
2019-01-29 19:54:03 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 886.
2019-01-29 19:54:03 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 930.
2019-01-29 19:54:03 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 935.
2019-01-29 19:54:03 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 941.
2019-01-29 19:54:03 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 944.
2019-01-29 19:54:03 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 949.
2019-01-29 19:54:03 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 978.
2019-01-29 19:54:03 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 984.
2019-01-29 19:54:03 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1009.
2019-01-29 19:54:03 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1012.
2019-01-29 19:54:03 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1016.
2019-01-29 19:54:03 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1026.
2019-01-29 19:54:03 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1062.
2019-01-29 19:54:03 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1085.
2019-01-29 19:54:03 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1088.
2019-01-29 19:54:03 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1107.
2019-01-29 19:54:03 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1118.
2019-01-29 19:54:03 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1140.
2019-01-29 19:54:03 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1167.
2019-01-29 19:54:03 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1170.
2019-01-29 19:54:03 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1175.
2019-01-29 19:54:03 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1243.
2019-01-29 19:54:03 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1249.
2019-01-29 19:54:03 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1281.
2019-01-29 19:54:03 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1284.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1290.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1298.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1301.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1306.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1327.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1330.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1336.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1339.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1342.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1369.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1390.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1417.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1420.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1439.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1449.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1455.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1458.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1487.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1490.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1495.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1498.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1503.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1508.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1511.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1517.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1536.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1541.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1546.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1549.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1555.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1576.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1581.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1620.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1643.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1658.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1661.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1678.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1683.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1686.
2019-01-29 19:54:04 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1723.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1728.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1734.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1757.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1762.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1768.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1771.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1796.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1832.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1837.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1841.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1844.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1850.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1872.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1888.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1893.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1896.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1925.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1938.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1952.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1954.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1957.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 1984.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2007.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2012.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2041.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2044.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2050.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2053.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2058.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2096.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2099.
2019-01-29 19:54:05 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2105.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2157.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2162.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2167.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2170.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2174.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2180.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2185.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2190.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2195.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2233.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2252.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2257.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2263.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2264.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2309.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2314.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2320.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2323.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2350.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2369.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2375.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2380.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2383.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2408.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2411.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2438.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2443.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2446.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2495.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2517.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2536.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2539.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2542.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2546.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2549.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2561.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2566.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2569.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2593.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2594.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2596.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2599.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2602.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2605.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2608.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2625.
2019-01-29 19:54:06 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2658.
2019-01-29 19:54:07 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2675.
2019-01-29 19:54:07 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2708.
2019-01-29 19:54:07 computer pakala.sm[3694] INFO_INTERACTIVE Coverage is now 2759.
2019-01-29 19:56:00 computer pakala.sm[3694] INFO Analysis finished with 19 outcomes (7 interesting, 30 unfinished), coverage is 73%
2019-01-29 19:56:00 computer pakala.sm[3694] INFO Code errors encountered: [('Avoided adding unsatisfiable state', 22), ("CodeError('designed INVALID opcode')", 2)]
2019-01-29 19:56:00 computer pakala.sm[3694] INFO Interpreter errors encountered: [("InterpreterError('Unknown opcode 61')", 3), ("InterpreterError('CALL seems to return data')", 2), ('execute timeout', 1)]
Symbolic execution finished with coverage 73%.
Outcomes: 7 interesting. 19 total and 30 unfinished paths.

Starting analysis step...
2019-01-29 19:56:00 computer pakala.analyzer[3694] WARNING Cannot list storage keys (AttributeError). We will loose a bit of accuracy. Try to use a node that supports the parity_listStorageKeys RPC. 
2019-01-29 19:56:11 computer pakala.analyzer[3694] INFO Loaded 16 storage slots from the contract (non-exhaustive). 4 non-zero.
2019-01-29 19:56:12 computer pakala.recursive_analyzer[3694] INFO_INTERACTIVE Now scanning paths of length 2.
2019-01-29 19:56:19 computer pakala.recursive_analyzer[3694] INFO_INTERACTIVE Now scanning paths of length 3.
2019-01-29 19:57:45 computer pakala.recursive_analyzer[3694] INFO_INTERACTIVE Now scanning paths of length 4.
2019-01-29 20:16:58 computer pakala.recursive_analyzer[3694] INFO_INTERACTIVE Now scanning paths of length 5.
Nothing to report.

Was nothing found due to the code or interpreter errors?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.