Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
Packet-Sniffer — Sniffer de paquetes de red basado en sockets sin procesar que captura y desensambla paquetes TCP/IP de interfaces de red para análisis de seguridad y uso educativo. | Kitploit
Herramientas/GitHubGitHub/eonraider/packet-sniffer
Sniffing y Análisis de PaquetesRecopilación de InformaciónSeguridad de RedesAprendizaje y Educación
GitHubeonraider/packet-sniffer

Packet-Sniffer

Sniffer de paquetes de red basado en sockets sin procesar que captura y desensambla paquetes TCP/IP de interfaces de red para análisis de seguridad y uso educativo.

Ver Repositorio
78611184hace 6 díasRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

RootWire

CodeFactor CI PyPI Python Version OS License

Un monitor de tráfico de red para GNU/Linux — anteriormente conocido como Packet-Sniffer. Las tramas se capturan desde una o varias interfaces de red con un socket raw, con marca de tiempo del propio kernel, se decodifican capa por capa con la librería NETProtocols, y se renderizan en vivo, se escriben a un pcap con precisión de nanosegundos, o se transmiten como JSON:

[>] Frame #4 at 15:42:07 (wlan0, 74 bytes)
    [+] Ethernet 3c:7c:3f:1a:be:22 -> 9c:1e:95:aa:01:5f
        EtherType: IPv4
    [+] IPv4 192.168.1.96 -> 142.250.79.78
        TTL: 64 | Flags: Don't fragment (DF) | Total Length: 60 | ID: 39754
        Protocol: TCP | Checksum: 0x2b51
    [+] TCP 51888 -> 443
        Flags: 0x002 (SYN) | Seq: 3598801521 | Ack: 0
        Window: 64240 | Checksum: 0x2008
        Options: Maximum Segment Size (1460), SACK Permitted, Timestamps (3644437524, 0), No-Operation, Window Scale (7)

El decodificador cubre Ethernet (etiquetas VLAN 802.1Q, incluyendo el etiquetado QinQ anidado), ARP, IPv4 (opciones decodificadas y fragmentos), IPv6 incluyendo cabeceras de extensión (un informe MLD renderiza su cadena completa Hop-by-Hop) y Neighbor Discovery (una Solicitud o Anuncio de Router/Neighbor muestra su dirección objetivo y opciones de capa de enlace), ICMPv4/v6, TCP (offsets de payload conscientes de opciones, opciones decodificadas) y UDP. Cada checksum de IPv4/ICMPv4/ICMPv6/TCP/UDP se verifica contra un recálculo, marcando una discrepancia en línea (Checksum: 0x0000 [!] mismatch (expected 0x1a2b)) — una señal real para tráfico corrupto o falsificado, silenciosa para un fragmento no reensamblado, donde el checksum del cable cubre un datagrama que RootWire nunca reconstruye. Las tramas malformadas o truncadas se diagnostican en lugar de hacer fallar la captura, los protocolos desconocidos terminan la cadena de forma controlada, y un límite de 16 capas evita que pilas de cabeceras de extensión fabricadas amplifiquen — la captura sobrevive a lo que sea que entregue la red.

Instalación

pipx install rootwire        # or: uv tool install rootwire

O ejecutar desde un clon con uv:

git clone https://github.com/EONRaider/RootWire.git
cd RootWire
uv sync

Uso

rootwire [-h] [-i INTERFACE] [-r FILE] [-w FILE]
         [--filter NAME_OR_EXPR] [--json] [-d] [--version]

options:
  -i, --interface   interface to capture frames from; repeat to capture on
                    several interfaces concurrently (default: all interfaces)
  -r, --read FILE   replay frames from a pcap or pcapng file instead of live
                    capture (no privileges required; mutually exclusive
                    with -i)
  -w, --write FILE  also write every captured frame to a classic pcap file
  --filter NAME_OR_EXPR
                    attach a kernel-side capture filter so only matching
                    frames reach userspace: a canned name (arp, ip6, tcp,
                    udp) or a filter expression -- protocols tcp/udp/icmp/
                    arp/ip/ip6; host/port, each optionally prefixed with
                    src/dst; and/or/not; parentheses (e.g. "tcp and port
                    80"); live capture only
  --json            one NDJSON object per frame on stdout (banner and
                    statistics stay on stderr): pipe straight into jq
  -d, --data        also display each frame's raw payload (ignored with --json)

Las estadísticas de captura — tramas, bytes, tramas/s, conteos de malformadas/truncadas, recuentos por protocolo — se reportan en stderr cuando la captura termina, ya sea por Ctrl-C, SIGTERM, o (para -r) fin de archivo: los tres desencadenan el mismo apagado limpio. Algunas combinaciones favoritas:

sudo rootwire -i eth0 -w session.pcap             # capture and keep the evidence
sudo rootwire -i eth0 --filter tcp                # drop non-TCP in the kernel
sudo rootwire -i eth0 --filter "tcp and port 80"  # kernel-side filter expression
sudo rootwire -i eth0 -i wlan0                    # merge two interfaces into one stream
rootwire -r session.pcap                          # inspect it later, no root
rootwire -r session.pcap --json | jq .            # machine-readable analysis

La captura en vivo necesita un socket raw, lo que en Linux significa root (sudo rootwire -i eth0) o conceder al intérprete la capacidad CAP_NET_RAW. Reproducir archivos con -r nunca necesita privilegios. Desde un clon, ejecútalo como sudo .venv/bin/python -m rootwire.

Cómo funciona

El capture_async() de capture.py produce tramas raw — fusionadas desde un socket AF_PACKET por interfaz, cada una con marca de tiempo del propio kernel al llegar (SO_TIMESTAMPNS, no una lectura del reloj en espacio de usuario) — como tuplas (bytes, timestamp, interface); la reproducción desde un archivo con -r adapta las tramas de pcap.py a esa misma forma antes de que cualquiera de las fuentes llegue a decoder.py, que recorre la cadena de protocolos de cada trama hasta un DecodedFrame inmutable. Las salidas — el renderizador de pantalla, el flujo NDJSON, el escritor de pcap, el recolector de estadísticas — consumen cada trama a través de una pequeña interfaz Output. El recorrido completo, incluyendo por qué la memoria se mantiene plana durante capturas largas y cómo añadir una salida, está en ARCHITECTURE.md.

Todo excepto el socket raw se ejecuta en cualquier SO, por lo que la suite de pruebas — que incluye un corpus de 65 tramas de tráfico real capturado reproducido a través de todo el pipeline — no necesita ni root ni Linux:

uv run pytest

Contribuir

Los informes de errores y las pull requests son bienvenidos. CONTRIBUTING.md cubre la configuración de desarrollo, las comprobaciones que ejecuta CI, y cómo se ve una buena pull request aquí.

Aviso Legal

El uso del código contenido en este repositorio, ya sea en parte o en su totalidad, para atacar objetivos sin consentimiento mutuo previo es ilegal. Es responsabilidad del usuario final obedecer todas las leyes locales, estatales y federales aplicables.

Los desarrolladores no asumen ninguna responsabilidad y no son responsables de los malos usos o daños causados por cualquier código contenido en este repositorio en cualquier evento en que, accidentalmente o de otro modo, llegue a ser utilizado por un agente de amenaza o entidad no autorizada como medio para comprometer la seguridad, privacidad, confidencialidad, integridad y/o disponibilidad de sistemas y sus recursos asociados. En este contexto, el término "comprometer" se entiende en adelante como el aprovechamiento de la explotación de vulnerabilidades conocidas o desconocidas presentes en dichos sistemas, incluyendo, pero no limitado a, la implementación de controles de seguridad, habilitados por humanos o electrónicamente.

Descargar herramienta