Volver a actualizaciones
Nuevo releaseJul 29, 2026

slither v0.11.6

Analizador estático para Solidity y Vyper

Compartir

Slither, el analizador estático de contratos inteligentes

Slither Static Analysis Framework Logo

Build Status PyPI Slither - Read the Docs Slither - Wiki

Únete al Slack de Empire Hacking

Slack Status

- Discusiones y Soporte

Slither es un framework de análisis estático para Solide y Vyper escrito en Python3. Ejecuta un conjunto de detectores de vulnerabilidades, imprime información visual sobre los detalles del contrato y proporciona una API para escribir fácilmente análisis personalizados. Slither permite a los desarrolladores encontrar vulnerabilidades, mejorar su comprensión del código y prototipar rápidamente análisis personalizados.

Características

  • Detecta código Solidity vulnerable con bajos falsos positivos (ver la lista de trofeos)
  • Identifica dónde ocurre la condición de error en el código fuente
  • Se integra fácilmente en la integración continua y en compilaciones de Hardhat/Foundry
  • 'Impresoras' integradas que reportan rápidamente información crucial del contrato
  • API de detectores para escribir análisis personalizados en Python
  • Capacidad de analizar contratos escritos con Solidity >= 0.4
  • Representación intermedia (SlithIR) permite análisis simples y de alta precisión
  • Analiza correctamente el 99.9% de todo el código Solidity público
  • Tiempo de ejecución promedio de menos de 1 segundo por contrato
  • Se integra con el escaneo de código de Github en CI
  • Soporte para contratos inteligentes Vyper

Uso

Ejecuta Slither en una aplicación Hardhat/Foundry/Dapp/Brownie:```console slither .

Esta es la opción preferida si tu proyecto tiene dependencias, ya que Slither se basa en el marco de compilación subyacente para compilar el código fuente.

Sin embargo, puedes ejecutar Slither en un solo archivo que no importe dependencias:```console
slither tests/uninitialized.sol

Cómo instalar

Nota Slither requiere Python 3.10+. Si no vas a usar uno de los frameworks de compilación compatibles, necesitas solc, el compilador de Solidity; recomendamos usar solc-select para cambiar convenientemente entre versiones de solc.

Usando uv (Recomendado)

uv es un gestor de paquetes de Python rápido que es 10-100x más rápido que pip.```console

Install uv if you haven't already

curl -LsSf https://astral.sh/uv/install.sh | sh

Install slither as a tool

uv tool install slither-analyzer

Or run slither without installation

uvx --from slither-analyzer slither

Para actualizar:```console
uv tool upgrade slither-analyzer

Usando Pip```console

python3 -m pip install slither-analyzer

Para actualizar:```console
python3 -m pip install --upgrade slither-analyzer

Usando Brew```console

brew install slither-analyzer

### Usando Git (Desarrollo)```bash
git clone https://github.com/crytic/slither.git && cd slither

# Install as editable for development
uv tool install -e .

# Or use uv run for testing without installation
uv run slither <target>

The -e flag installs in editable mode, meaning changes to the source code are immediately reflected without reinstalling.

Usando Docker

Use la imagen docker eth-security-toolbox. Incluye todas nuestras herramientas de seguridad y todas las versiones principales de Solidity en una sola imagen. /home/share se montará en /share dentro del contenedor.```bash docker pull trailofbits/eth-security-toolbox

Para compartir un directorio en el contenedor:```bash
docker run -it -v /home/share:/share trailofbits/eth-security-toolbox

Integración

  • Para integración de GitHub Action, usa slither-action.
  • Para integración de pre-commit, usa (reemplaza $GIT_TAG con la etiqueta real) ```YAML
  • Para generar un informe en Markdown, use slither [objetivo] --checklist.
  • Para generar un Markdown con resaltado de código fuente de GitHub, use slither [objetivo] --checklist --markdown-root https://github.com/ORG/REPO/blob/COMMIT/ (reemplace ORG, REPO, COMMIT)

Detectores

Categorías