安全与测试56安全与测试找到的资源: 56 / 56安全与测试(56)调试与检查(31)CodeTracerCodeTracer 是一个用户友好的时间旅行调试器,旨在支持广泛的 web3 编程语言。EDB: The Ethereum Project DebuggerEDB 是一个用于 Solidity 执行的源码级调试器,具有单步执行、局部变量、监视和断点功能,适合当你需要 IDE 级别的可见性来了解链上或测试中的合约行为时使用。Simbolik - Solidity DebuggerSimbolik 是一个强大的 Solidity 调试器,它将传统的断点调试与符号执行相结合,使开发者能够探索每一种可能的执行路径并精确地发现漏洞。作为 VSCode 扩展提供,Simbolik 无缝集成到现有工作流中,提供断点式调试、Solidity 和 EVM 级别的检查以及形式化验证功能。Abi NinjaAbi Ninja 是一个浏览器 UI,用于使用已知 ABI、粘贴的 ABI 或反编译的字节码调用合约,支持跨多个网络(包括本地运行的 Hardhat 或 Anvil 节点)进行代理感知读取。4byte4byte.directory maps four-byte function selectors and 32-byte event-signature hashes to their human-readable signatures. Builders query it when decoding calldata or logs from contracts without a published ABI.ABI Calldata Layout VisualizerThe ABI Calldata Layout Visualizer decodes ABI calldata and draws its byte layout, showing where heads, tails, and offsets sit in the encoded payload. Builders open it when a plain decoder does not explain why an encoding is wrong.evm-storageevm-storage turns a transaction hash into readable state diffs and can list a contract's full storage. Builders install the command line tool when they need to see exactly which storage slots a call changed.EVMConnectorEVMConnector is a browser workspace for calling contract functions on any EVM chain, with saved contracts and shareable call links. Builders use it to drive a contract without writing a script.forkyforky is a fork choice viewer for the Ethereum beacon chain. Consensus client developers self-host it or use the public instances to see and debug fork choice behavior on mainnet and testnets.geas (Good Ethereum Assembler)geas, the Good Ethereum Assembler, is an assembler for writing raw EVM bytecode by hand, maintained by a go-ethereum core developer. It is used for EIP test cases and other low-level contract work.hardhat-tracerhardhat-tracer is a Hardhat plugin that prints internal calls, events, and storage operations for a transaction in the console. Hardhat users install it to see what actually happened inside a failing test transaction.HashEx ABI EncoderThe HashEx ABI Encoder is a web form that ABI-encodes constructor and function arguments from a pasted signature and values. Builders use it when they need encoded arguments and are not at a terminal.heimdall-rsheimdall-rs is a Rust EVM toolkit that disassembles bytecode, decompiles contracts, generates control flow graphs, and decodes calldata and traces. Builders reach for it when they need to understand a contract that has no published source.pyevmasmpyevmasm is a Python disassembler and assembler for EVM bytecode from Trail of Bits. Analysis scripts import it to turn bytecode into instructions and back.Radar (Auditware)Radar, from Auditware, is a static analysis tool that covers Solidity as well as Rust, Anchor, and Stylus contracts. Auditors run it to get findings across a mixed contract codebase.recursive calldata decoderA calldata decoder that also unwraps nested function calls. Builders open it when a flat decoder leaves the inner calls of a batched or forwarded transaction unreadable.scopelintscopelint is an opinionated formatter and linter for Foundry Solidity projects. Builders install it to hold a codebase to the ScopeLift conventions.Semgrep (smart-contracts rules)Semgrep is a pattern-based static analysis tool with rulesets for Solidity vulnerabilities. Builders run those rules over a codebase to catch known vulnerable patterns and style issues before review.SmartContractGUISmartContractGUI turns an uploaded ABI into an interface for reading from and writing to that contract on any EVM chain. Builders use it when they have an ABI but no frontend.sol-profilersol-profiler is a command line tool that lists a Solidity contract's methods with their visibility, mutability and modifiers. Reviewers run it to see the surface of a contract at a glance.sol2umlsol2uml generates UML class and storage-layout diagrams from Solidity source or from verified contracts. Builders run it to see contract relationships and how state variables are packed into storage.TenderlyTenderly provides transaction simulation, trace debugging, alerting, and Virtual TestNets for contracts. Builders use it to replay a failing transaction, watch deployed contracts, and test against a forked network.Tenderly CLIThe Tenderly CLI is the command line client for Tenderly, pushing contracts for verification and driving error tracking, monitoring, and alerting. Builders install it to run those steps from a terminal or a continuous integration job.tracoortracoor is an explorer for beacon states and execution traces. Client and protocol developers self-host it to inspect block and state traces on devnets and testnets.Web3ClientWeb3Client is a browser tool for creating, testing, and sharing contract ABIs and the calls made against them. Builders use it to work out a call and hand the result to someone else.Walnut基于 Web 的 EVM 交易调试器和模拟器。开源且可自托管。在每一步检查变量状态,在部署之前模拟交易,并分析 Gas 使用情况。支持任何 RPC 提供商。viem-tracerviem-tracer 增强了 Viem 客户端,以便失败的 ethestimateGas 和 ethsendTransaction 调用自动包含使用 sourcify.dev 解码的人类可读的跟踪输出,并且它围绕 debug_traceCall 添加了类型化助手,以便开发者可以在不离开其现有 RPC 堆栈的情况下检查执行情况。EVMoleEVMole extracts function selectors, arguments, and control flow from raw EVM bytecode, including contracts with no verified source. Builders point it at an unknown contract to work out what its functions take.revm-inspectorsrevm-inspectors is a Rust crate of EVM execution hooks and tracing built on revm, and it powers call tracing in Reth and Foundry. Rust builders import it to build their own tracers and debuggers.hardhat-gas-reporter一个 hardhat 插件,为智能合约测试套件提供 Gas 使用分析。它专门支持 OP Stack 链,是超过 15 万个 Github 仓库的依赖项,并且每周从 NPM 下载量超过 10 万次。SlippySlippy is a Solidity linter for static analysis of smart contracts. Teams install the npm package to lint contracts as part of a build.模糊/属性测试(18)ChimeraChimera 是一个在 Foundry 中编写 Solidity 测试的框架,并能够与其他开源工具(如 Echidna、Medusa、Halmos 和 Kontrol)一起重用它们。Slither斯莱瑟是 Trail of Bits 用于 Solidity 和 Vyper 的 Python 静态分析引擎:在 CI 中运行它以触发检测器、打印合约的结构视图,或在整个代码库上编写自定义检查脚本。SynpressSynpress 将 Playwright 与感知以太坊的浏览器自动化分层,以便你可以在 CI 中对去中心化应用 (dapp) 进行端到端测试,包括钱包弹出窗口和链切换。AderynAderyn 是 Cyfrin 开源的、基于 Rust 的 Solidity 智能合约静态分析器,旨在帮助协议工程师和安全研究人员在 Solidity 代码库中发现漏洞。TitanoboaTitanoboa 是一个交互式 Vyper 解释器和测试工具,当你在完整的 Foundry 循环之外试验合约时,可用于实现快速反馈循环。MedusaMedusa 是一个受 Echidna 启发的有状态智能合约模糊测试工具。它提供智能合约的并行模糊测试和高级智能合约不变量的验证。solidity-coveragesolidity-coverage 为 Hardhat 开发者平台提供智能合约代码覆盖率。它高度准确,支持完整的 viaIR Solidity 编译和大量特定于 Solidity 的代码分支模式。它安装在约 23 万个 Github 项目上,每周从 NPM 下载约 10 万次。hevmhevm 是一个开源、最先进、快速的符号和具体 EVM 执行引擎,可以发现智能合约中的问题。通过其符号执行和分析系统,hevm 可以符号化、半具体化或具体化地执行合约以发现错误,或者比较两个不同合约的差异,执行等价性检查。Crytic-PropertiesCrytic-Properties 是一套可重用的安全测试,针对一些最广泛使用的代币标准,例如 ERC-20、ERC-721、ERC-4626 等。bulloak一个基于分支树技术的智能合约测试生成器。AssertoorAssertoor runs configurable checks and assertions against a live Ethereum devnet to validate its behavior. Client and devnet teams use it to confirm a running network is healthy, in the same family as Hive.contender (Flashbots)contender from Flashbots is a load-testing tool that floods EVM execution nodes over JSON-RPC and benchmarks the results. Teams benchmarking a client point it at an endpoint to generate load and measure throughput.EchidnaEchidna is a property-based and grammar fuzzer for Ethereum smart contracts. Builders and auditors write properties with it to find inputs that break contract invariants.eth-testereth-tester is a pluggable in-memory Ethereum backend used by web3.py for fast unit tests. Python builders import it when tests should run against a simulated chain instead of a node.ItyFuzzItyFuzz is a bytecode-level smart-contract fuzzer that combines fuzzing with symbolic analysis. Builders and auditors run it against EVM bytecode when source-level fuzzing is not enough or no source is available.spamoorspamoor is a configurable Ethereum transaction generator for load-testing testnets and devnets with realistic traffic. Teams point it at a network to see how it behaves under sustained transaction volume.goevmlabgoevmlab is an EVM fuzzing and differential testing lab built by a go-ethereum core developer. EVM implementers use it to fuzz their own implementation and compare its behavior against others to find divergences.HiveHive is an end-to-end integration test harness that runs Ethereum clients in Docker across simulator scenarios. Client teams use it to check that implementations agree with each other.形式化验证(7)K Semantics of the Ethereum Virtual Machine (EVM)KEVM 是 EVM 的 K 框架可执行语义:当你需要一致性检查执行、符号探索、Gas 推理或密切跟踪以太坊规则的证明时,可以将其指向字节码。haxhax 是一个用于将 Rust 的大部分子集高保证地翻译成形式化语言(如 F* 或 Rocq)的工具。Kontrol - formal verification tool based on Foundry and KEVMKontrol 将 Foundry 属性测试提升为由 KEVM 支持的证明,以便你可以追求形式化保证,与单独使用原始 KEVM 相比,减少了手工编写规范的工作量。ActAct 是以太坊的声明式规范语言和工具链,用于描述 EVM 程序的所有行为,以便 SMT 求解器、定理证明器或经济分析工具能够推理字节码级别的正确性和激励兼容性,包括针对具体实现的自动求精证明。Certora AutoProverCertora AutoProver is an AI bot that automates parts of formal verification for smart contracts. Verification engineers use it to generate and run checks with less manual specification work.VerifereumVerifereum 将以太坊智能合约连接到由 HOL4 支持的定理证明,因此当自动化的 SMT 方法不够用时,你可以瞄准非常强的正确性声明。Certora ProverCertora Prover is a cloud formal-verification service that checks specifications written in CVL against deployed contract code. Verification engineers use it to prove that a contract holds stated properties for all inputs.推荐资源知道有什么很棒的构建者资源应该被列出吗?请提交 Issue 与我们分享。推荐资源 (在新标签页中打开)