question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Cirtical Error using mythril Docker

See original GitHub issue

Description

After pulling latest mythril Docker from docker hub, i tried to analyze a smart contract. myth analyze throws Critical Error and aborts.

How to Reproduce

sudo docker run -v /home/zotac/BA:/tmp mythril/myth analyze /tmp/Contract.sol
mythril.mythril.mythril_analyzer [CRITICAL]: Exception occurred, aborting analysis. Please report this issue to the Mythril GitHub page.
Traceback (most recent call last):
  File "/usr/local/lib/python3.8/dist-packages/mythril-0.22.14-py3.8.egg/mythril/mythril/mythril_analyzer.py", line 149, in fire_lasers
    sym = SymExecWrapper(
  File "/usr/local/lib/python3.8/dist-packages/mythril-0.22.14-py3.8.egg/mythril/analysis/symbolic.py", line 163, in __init__
    self.laser.sym_exec(
  File "/usr/local/lib/python3.8/dist-packages/mythril-0.22.14-py3.8.egg/mythril/laser/ethereum/svm.py", line 175, in sym_exec
    self._execute_transactions(created_account.address)
  File "/usr/local/lib/python3.8/dist-packages/mythril-0.22.14-py3.8.egg/mythril/laser/ethereum/svm.py", line 216, in _execute_transactions
    execute_message_call(self, address)
  File "/usr/local/lib/python3.8/dist-packages/mythril-0.22.14-py3.8.egg/mythril/laser/ethereum/transaction/symbolic.py", line 108, in execute_message_call
    laser_evm.exec()
  File "/usr/local/lib/python3.8/dist-packages/mythril-0.22.14-py3.8.egg/mythril/laser/ethereum/svm.py", line 253, in exec
    new_states, op_code = self.execute_state(global_state)
  File "/usr/local/lib/python3.8/dist-packages/mythril-0.22.14-py3.8.egg/mythril/laser/ethereum/svm.py", line 335, in execute_state
    self._execute_pre_hook(op_code, global_state)
  File "/usr/local/lib/python3.8/dist-packages/mythril-0.22.14-py3.8.egg/mythril/laser/ethereum/svm.py", line 654, in _execute_pre_hook
    hook(global_state)
  File "/usr/local/lib/python3.8/dist-packages/mythril-0.22.14-py3.8.egg/mythril/analysis/module/base.py", line 69, in execute
    result = self._execute(target)
  File "/usr/local/lib/python3.8/dist-packages/mythril-0.22.14-py3.8.egg/mythril/analysis/module/modules/state_change_external_calls.py", line 116, in _execute
    issues = self._analyze_state(state)
  File "/usr/local/lib/python3.8/dist-packages/mythril-0.22.14-py3.8.egg/mythril/analysis/module/modules/state_change_external_calls.py", line 180, in _analyze_state
    issue = annotation.get_issue(global_state, self)
  File "/usr/local/lib/python3.8/dist-packages/mythril-0.22.14-py3.8.egg/mythril/analysis/module/modules/state_change_external_calls.py", line 61, in get_issue
    solver.get_transaction_sequence(
  File "/usr/local/lib/python3.8/dist-packages/mythril-0.22.14-py3.8.egg/mythril/analysis/solver.py", line 65, in get_transaction_sequence
    model = get_model(tx_constraints, minimize=minimize)
  File "/usr/local/lib/python3.8/dist-packages/mythril-0.22.14-py3.8.egg/mythril/support/model.py", line 57, in get_model
    result = s.check()
  File "/usr/local/lib/python3.8/dist-packages/mythril-0.22.14-py3.8.egg/mythril/laser/smt/solver/solver_statistics.py", line 19, in function_wrapper
    result = func(*args, **kwargs)
  File "/usr/local/lib/python3.8/dist-packages/mythril-0.22.14-py3.8.egg/mythril/laser/smt/solver/solver.py", line 55, in check
    evaluate = self.raw.check(args)
  File "/usr/local/lib/python3.8/dist-packages/z3/z3.py", line 7534, in check
    return CheckSatResult(Z3_optimize_check(self.ctx.ref(), self.optimize, num, _assumptions))
  File "/usr/local/lib/python3.8/dist-packages/z3/z3core.py", line 4468, in Z3_optimize_check
    _elems.Check(a0)
  File "/usr/local/lib/python3.8/dist-packages/z3/z3core.py", line 1420, in Check
    raise self.Exception(self.get_error_message(ctx, err))
z3.z3types.Z3Exception: b'push canceled'

Expected behavior

analysis of the given smart contract

Environment

Docker Image: mythril/myth:latest created (local) 2020-11-14 09:48:07

Issue Analytics

  • State:closed
  • Created 3 years ago
  • Reactions:1
  • Comments:6

github_iconTop GitHub Comments

1reaction
norhhcommented, Dec 23, 2020

This should be fixed in the develop branch.

0reactions
KurtMerbethcommented, Dec 19, 2020

@KurtMerbeth , can you provide the BadBet contact in that case, as that might be helpful.

BadBet.sol

Read more comments on GitHub >

github_iconTop Results From Across the Web

Version 0.22.27 fails to run analysis on a file "outside ... - GitHub
Mythril 0.22.27 fails to run analysis on a file whereas 0.22.26 runs smoothly. The file is put in /tmp of the official Docker...
Read more >
Mythril Documentation - Read the Docs
We encounter the following error: mythril.interfaces.cli [ERROR]: Solc experienced a fatal error. ParserError: Source "@openzeppelin/contracts/ ...
Read more >
A Practical Guide to Smart Contract Security Tools - Mythril
All reviewed software is quite fresh and is constantly under development, thus serious errors should not be considered unsolvable. In this article we...
Read more >
How to use the mythril.exceptions.CriticalError function in mythril ...
To help you get started, we've selected a few mythril.exceptions.CriticalError examples, based on popular ways it is used in public projects.
Read more >
Installation and Setup — Mythril v0.23.9 documentation
After installing Docker CE: # Pull the latest release of mythril/myth $ docker pull mythril/myth. Use docker run mythril/myth the same way you...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found