Skip to main content

🛡️ AW3SS v4.16 — Automated Web3 Security Scanner & PoC Engine

Python Version Docker Sandbox Foundry Powered Static Analysis SARIF Export License

AW3SS (Automated Web3 Security Scanner) is an enterprise-grade, autonomous smart contract security framework designed for vulnerability research, deep AST data-flow analysis, multi-agent AI orchestration, stateful invariant fuzzing, and deterministic Proof of Concept (PoC) validation under isolated Docker Foundry sandboxes.


🏗️ End-to-End Architecture Pipeline

flowchart TD
    subgraph INGESTION ["1. Pre-build & Static Analysis"]
        A[Target Smart Contracts .sol / .rs / .cairo] --> B[Solc Selection & Hybrid Remappings]
        B --> C[Slither & Slitherin AST Data-Flow / Call-Graph]
    end

    subgraph RAG_AGENTS ["2. Threat Intelligence & Multi-Agent AI"]
        C --> D[RAG Engine : 1,015 Indexed Exploit Templates]
        D --> E[Multi-Agent Analysis: Finance, Access, EVM, MEV]
        E --> F[Vulnerability Deduplication AST Sink Hash]
    end

    subgraph SANDBOX ["3. Docker Sandbox & Deterministic PoC"]
        F --> G[Dual-Level Simulation : Level 1 Mock / Level 2 Fork]
        G --> H[Docker Sandbox : --cap-drop=ALL --dns 1.1.1.1]
        H --> I{Universal 8 Formal Assertions & forge test}
        I -->|FAIL / Revert| J[Autonomous Self-Healing Loop : Max 3 Retries]
        J --> H
    end

    subgraph REPORTING ["4. Verified Outputs & CI/CD"]
        I -->|PASS| K[Non-LLM Markdown Report C4 / Sherlock / Immunefi]
        I -->|PASS| L[SARIF v2.1.0 JSON & Discord/Telegram Webhooks]
        I -->|Exhausted| M[FALSE_POSITIVE Auto-Discard]
    end

⚡ Core Innovations & Features (v4.16)

1. 🧠 Multi-Chain Native RPC Routing & Dual-Level Sandbox

  • Level 1 (Local Mocks) : Instant local compilation with mocks for Uniswap V2/V3, Chainlink Aggregators, and WETH9.
  • Level 2 (Deterministic Mainnet Forking) : Native, dynamic multi-chain state forking via official high-speed RPCs:
    • Ethereum Mainnet, Arbitrum One, Base, Flare Network, Cronos, Polygon, Optimism, BSC.
  • Container Hardening : Strict container constraints (--cap-drop=ALL --dns 1.1.1.1 --memory=4g, non-root user).

2. 📚 Vector RAG Knowledge Base (1,015 Curated Exploits)

  • Integrated SQLite vector index covering real-world exploit patterns:
    • Tokenomics & DeFi Logic (420 templates)
    • Price Oracles & TWAP Manipulation (145 templates)
    • ERC-4626 Vault Inflation & Accounting (71 templates)
    • Privilege Escalation & Access Control (58 templates)
    • Read-Only & Cross-Function Reentrancy (15 templates)

3. 🎯 Universal 8 Formal Invariant Assertions

AW3SS validates vulnerabilities across the complete severity spectrum without false validations:

  • CRITICAL: Direct Asset Drain (assertGt), Admin Takeover (assertEq(owner, attacker)), Permanent Lock.
  • HIGH: Undercollateralized Bad Debt (borrowed > collateral), Signature Replay (EIP-712), Unclaimed Yield Theft.
  • MEDIUM: Stale Oracle Acceptance (vm.warp), Share Ratio Discontinuity, Gas Limit Exhaustion (> 30M gas).
  • LOW: Precision Loss / Dust Truncation (previewDeposit(dust) == 0).

4. 🔄 Autonomous Self-Healing Engine (3 Retries Max)

When a generated PoC encounters compilation or execution issues, the Self-Healing engine automatically iterates with temperature-controlled adjustments:

  • Attempt 1 (T=0.1) : Solidity syntax, pragma alignments, imports.
  • Attempt 2 (T=0.3) : Remappings, interfaces, mock setups.
  • Attempt 3 (T=0.5) : Minimal vector isolation & state adjustments.

🚀 Quickstart

Prerequisites

  • Python 3.11+
  • Docker Desktop (active engine)
  • Foundry (forge / cast)
  • Git

Installation

# Clone the repository
git clone https://github.com/<your-username>/AW3SS.git
cd AW3SS

# Install Python dependencies
pip install -r requirements.txt

# Configure environment variables
cp .env.example .env

# Initialize SQLite database and RAG embeddings
python aw3ss.py init-db

Running Scans

# 1. Scan an EVM Solidity target on Ethereum Mainnet Fork
python aw3ss.py scan ./target/my_protocol --network mainnet

# 2. Scan on Arbitrum / Base / Flare
python aw3ss.py scan ./target/arbitrum_vault --network arbitrum

# 3. Multi-Ecosystem Plugins (Cairo / Solana / Soroban)
python aw3ss.py scan ./tests/cairo_target --network mainnet
python aw3ss.py scan ./tests/solana_target --network mainnet

📊 Standardized Outputs

  • Markdown Audit Report : Ready for submission on Code4rena, Sherlock, and Immunefi.
  • SARIF v2.1.0 : data/reports/<scan_id>.sarif.json for GitHub Advanced Security and VS Code SARIF Viewer.
  • PoC Artifacts : Standalone, runnable Foundry test file stored in data/pocs/ with exact reproduction steps.

🧪 Testing & Verification

Execute the complete test suite:

pytest tests/test_v415_integration.py tests/test_env_config.py -v

📄 License

Distributed under the MIT License. See LICENSE for more information.

Metadata

Release files for aw3ss 4.15.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for aw3ss 4.15.0
File Size Uploaded Provenance
aw3ss-4.15.0.tar.gz 101.3 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for aw3ss 4.15.0
File Interpreter ABI Platform
aw3ss-4.15.0-py3-none-any.whl Python 3 none any Details

Total release size: 194.7 kB

Release files / aw3ss-4.15.0.tar.gz

Download URL aw3ss-4.15.0.tar.gz
Size 101.3 kB
Tags Source
SHA-256 checksum
How to use checksums
73eb02ddedccccd21065094d1b7dc358314ed5efa4fa86a24d645116db4fff12
BLAKE2b-256 checksum
How to use checksums
fb3ea7a3a3d85e598efef8a48829242fc04485fbc660215aa3e2b09bc6a3db0d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Release files / aw3ss-4.15.0-py3-none-any.whl

Download URL aw3ss-4.15.0-py3-none-any.whl
Size 93.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
34f10e8c6bc9395e02b9c9b927c1b3a22e0b7fbdd85948bbe4b502fd91f6cdc7
BLAKE2b-256 checksum
How to use checksums
978dda5172d6104217f927edbcae08660ffcd7541ba489ec6bd5a2e1490079c8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.4

Security for aw3ss 4.15.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

4.15.0 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page