mythril-symbolic — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited mythril-symbolic (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Deep vulnerability detection through symbolic execution using Mythril, a security analysis tool for EVM bytecode.
# Install via pip
pip install mythril
# Or use Docker (recommended)
docker pull mythril/myth
# Verify installation
myth version# Analyze single file
myth analyze Contract.sol
# Analyze with Solidity version
myth analyze Contract.sol --solv 0.8.20
# Analyze specific contract
myth analyze Contract.sol:MyContract# Analyze deployed contract
myth analyze -a 0x<address> --rpc <rpc_url>
# Analyze bytecode file
myth analyze --bin-runtime contract.bin# Default depth (2)
myth analyze Contract.sol
# Increased depth for complex interactions
myth analyze Contract.sol --execution-timeout 300 -t 3
# Deep analysis (slow)
myth analyze Contract.sol --execution-timeout 600 -t 4# Set execution timeout (seconds)
myth analyze Contract.sol --execution-timeout 300
# Set solver timeout
myth analyze Contract.sol --solver-timeout 10000
# Quick scan
myth analyze Contract.sol --execution-timeout 60 -t 2# Run specific modules
myth analyze Contract.sol --modules ether_thief,suicide
# Available modules
# - ether_thief
# - suicide
# - integer_overflow/underflow
# - delegatecall
# - arbitrary_write
# - state_change_external_callmyth analyze Contract.solmyth analyze Contract.sol -o json > report.jsonmyth analyze Contract.sol -o markdown > report.mdmyth analyze Contract.sol -o jsonv2 > detailed.jsonMythril detects reentrancy by tracking:
==== External Call To User-Supplied Address ====
SWC ID: 107
Severity: Low
Contract: Vulnerable
Function name: withdraw()
PC address: 1234
Estimated Gas Usage: 2500 - 10000
Type: Informational
...==== Integer Overflow ====
SWC ID: 101
Severity: High
Contract: Token
Function name: transfer(address,uint256)
PC address: 567
Estimated Gas Usage: 3000 - 5000
A possible integer overflow exists in the function...==== Unprotected Selfdestruct ====
SWC ID: 106
Severity: High
Contract: Vulnerable
Function name: kill()
Any sender can trigger self-destruction...# Use concrete values where possible
myth analyze Contract.sol --strategy dfs --execution-timeout 300# Analyze with constraints file
myth analyze Contract.sol --constraints constraints.json# Limit state explosion
myth analyze Contract.sol --max-depth 30 --call-depth-limit 3name: Mythril Analysis
on: [push]
jobs:
mythril:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Run Mythril
uses: docker://mythril/myth
with:
args: analyze /github/workspace/contracts/*.sol --solv 0.8.20#!/bin/bash
for file in contracts/*.sol; do
myth analyze "$file" --solv 0.8.20 -o json > "reports/$(basename $file .sol).json"
done| Level | Description | Action |
|---|---|---|
| High | Critical vulnerability | Fix immediately |
| Medium | Potential issue | Investigate |
| Low | Minor concern | Consider fixing |
| Informational | Code quality | Optional fix |
| SWC ID | Name | Description |
|---|---|---|
| SWC-101 | Integer Overflow | Arithmetic overflow |
| SWC-104 | Unchecked Return | Ignored return values |
| SWC-106 | Unprotected Destruct | Accessible selfdestruct |
| SWC-107 | Reentrancy | State change after call |
| SWC-110 | Assert Violation | Reachable assertion |
| SWC-116 | Timestamp Dependence | Block timestamp usage |
| Process | Purpose |
|---|---|
smart-contract-security-audit.js | Deep vulnerability analysis |
smart-contract-fuzzing.js | Complement to fuzzing |
invariant-testing.js | Property verification |
| Tool | Technique | Speed | Depth |
|---|---|---|---|
| Mythril | Symbolic Execution | Slow | Deep |
| Slither | Static Analysis | Fast | Surface |
| Echidna | Fuzzing | Medium | Medium |
| Certora | Formal Verification | Slow | Deepest |
# Increase timeout, reduce depth
myth analyze Contract.sol --execution-timeout 600 -t 2# Increase solver timeout
myth analyze Contract.sol --solver-timeout 30000# Specify Solidity version
myth analyze Contract.sol --solv 0.8.20
# Use specific compiler
myth analyze Contract.sol --solc-json solc.jsonskills/slither-analysis/SKILL.md - Static analysisskills/echidna-fuzzer/SKILL.md - Property-based fuzzingagents/solidity-auditor/AGENT.md - Security auditor~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.