Communitygithub.com

protocol-reverse

Utilice para ingeniería inversa autorizada de protocolos binarios personalizados, Protobuf/gRPC, tramas WebSocket y recuperación de protocolos basada en PCAP.

¿Qué es protocol-reverse?

Este skill está diseñado para realizar ingeniería inversa autorizada de protocolos binarios, formatos de serialización y tráfico de red. Es útil cuando se enfrenta a protocolos TCP/UDP personalizados, Protobuf, gRPC, WebSocket o MQTT, y se necesita entender su estructura de tramas, campos de longitud, sumas de verificación o cifrado. El skill guía al agente a través de un flujo de trabajo de cuatro fases: recolección y clasificación de muestras (PCAP, registros), reconstrucción del diseño de la trama (alineación, campos de longitud, sumas de verificación), análisis de serialización y cifrado (recuperación de .proto, análisis de claves), y producción de artefactos reutilizables (tablas de mensajes, scripts de decodificación). Requiere herramientas como tshark, Wireshark, Python3, y opcionalmente blackboxprotobuf, ImHex o IDA. Está integrado con otros skills como `ida-reverse`, `js-reverse` y `firmware-pentest`, y depende de un archivo de precedentes (`precedent-reverse.md`) para confirmar autorización y alcance. El skill está disponible para su uso en entornos de pruebas autorizados, y el agente debe verificar que la tarea realmente involucra ingeniería inversa de protocolos antes de proceder.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/zhaoxuya520/reverse-skill/tree/main/skills/protocol-reverse

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

Ingeniería Inversa de Protocolos

ACCIÓN REQUERIDA (leer y ejecutar después de leer)

  1. AHORA: Leer ../field-journal/precedent-reverse.md — confirmar autorización y límites operativos habituales
  2. AHORA: Confirmar si la tarea es ingeniería inversa de protocolo/tráfico/formato de serialización (no solo firma de parámetros web → ir a js-reverse/)
  3. AHORA: Si hay interacción de red objetivo → ../scripts/case-init.ps1 para completar el alcance; si auth no está concedido, no ACTUAR sobre el objetivo
  4. SIGUIENTE: Leer ../tool-index.md; si faltan herramientas, bootstrap (tshark/wireshark etc. pueden necesitar instalación manual)
  5. ACTUAR: Entrar en el flujo de trabajo Fase 1, producir un borrador del diseño de la trama o diccionario de mensajes

Escenarios de Aplicación

  • Protocolos binarios TCP/UDP personalizados
  • Protobuf / gRPC / FlatBuffers / MessagePack
  • WebSocket / MQTT / RPC privado
  • Recuperación de campos y máquina de estados desde PCAP / PCAPNG
  • Validación cliente-servidor, números de secuencia, cabeceras cifradas

No usar este skill

SituaciónIr a
Solo firma de parámetros HTTP / cifrado JSjs-reverse/
Solo problemas de certificados TLSpentest-tools/ o proxy de navegador
Análisis profundo de stack de protocolos en firmware + simulaciónfirmware-pentest/ y luego volver a este skill

Flujo de Trabajo

Fase 1 — Recolección y Triaje

□ Obtener muestra: PCAP / exportación de proxy / registros de cliente / binario
□ Marcar dirección: C→S / S→C; ¿handshake, heartbeat, reconexión?
□ ¿Cabecera fija? ¿Número mágico? ¿Campo de longitud? ¿TLV? ¿Longitud fija?
□ ¿Comprimido (zlib/gzip/lz4) o cifrado (AES/ChaCha dentro de la trama)?
□ tshark -r cap.pcap -T fields -e frame.number -e ip.src -e tcp.payload

Fase 2 — Reconstrucción del Diseño de la Trama

□ Alinear múltiples mensajes del mismo tipo, buscar bytes invariables / números de secuencia crecientes
□ Campo de longitud: big-endian/little-endian, ¿incluye cabecera o no?
□ Suma de verificación: CRC16/32, checksum, posición de HMAC
□ Dibujar máquina de estados: Connect → Auth → Ready → Request/Response → Close
□ Herramientas: Borrador de dissector personalizado de Wireshark / ImHex / Plantilla de 010 Editor / Kaitai Struct

Fase 3 — Serialización y Cifrado

□ Protobuf: Recuperación de .proto (blackboxprotobuf / pbtk / protoc --decode_raw)
□ gRPC: Cabeceras HTTP/2 + cuerpo protobuf
□ Cifrado: Buscar derivación de clave (cliente so/dll/JS) → Combinar con ida-reverse / js-reverse / apk-reverse
□ Rejuego: Solo dentro del alcance autorizado; primero campos inofensivos, luego operaciones sensibles

Fase 4 — Artefactos

DEBE producir:
- Tabla de tipos de mensaje (nombre / código de operación / campos)
- Al menos 1 comando o script de decodificación reproducible
- Evidencia: Extracto hex original + resultado decodificado (anonimizado)

Cadena de Herramientas

Herramienta¿Obligatorio?UsoBootstrap
tshark / WiresharkAltamente recomendadoAnálisis PCAPManual / winget
Python3SíScripts de decodificaciónSistema
blackboxprotobufOpcionalProtobuf desconocidopip
ImHex / 010OpcionalPlantillas de estructuraManual
IDA / r2 / GhidraSegún necesidadFunciones de serialización del clienteVer skill correspondiente

Referencias

  • references/protocol-workflow.md — Diseño de trama y referencia rápida de Protobuf
  • Relacionados: ../ida-reverse/ ../js-reverse/ ../firmware-pentest/ ../pentest-tools/

Contexto de Enrutamiento

Ascendente: MASTER-ROUTING R21 · routing.md
Descendente: Si se necesita algoritmo del cliente → ida-reverse/js-reverse; si se necesita rejuego → pentest-tools/api-security
Mismo nivel: malware-analysis (protocolo C2), digital-forensics (forense de tráfico)

Autochequeo de Finalización de Tarea

  • ¿Se reconstruyó el diseño del mensaje o la máquina de estados (no solo pegar hex)?
  • ¿Hay un comando de decodificación reproducible?
  • ¿Se respetó el alcance / anonimización?
  • ¿Se actualizó el field-journal / informe Checklist?

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

api-security

Use for authorized security assessment of REST, GraphQL, WebSocket, or SOAP APIs, including discovery, authentication, authorization, rate-limit, and CI/CD testing.

apk-reverse

在 CLI 环境下做 Android APK 逆向时使用。适用于 APK 解包、Java 反编译、smali 修改、重打包、Frida 动态 Hook,以及按需切换到 so/native 分析。优先使用本机已安装的 jadx、apktool、frida、adb、ida-reverse、radare2。

attack-chain

Use for authorized multi-stage attack-path planning and orchestration when a task spans reconnaissance, initial access, privilege escalation, lateral movement, or impact assessment. Route single-stage tasks directly to their specialist skill.

binary-diff

|

binary-ninja-reverse

Use for authorized binary analysis in Binary Ninja, including HLIL/MLIL/LLIL inspection, strings/imports/exports, cross-references, types, patch review, Python API automation, and optional Binary Ninja MCP or localhost HTTP integration.

browser-automation

|

browser-extension-reverse

Use for authorized reverse engineering of browser extensions (Chrome/Firefox) including manifest analysis, background workers, and extension-based credential or traffic logic recovery.

case-review

Reviews a reverse-skill case package for scope readiness, Evidence to Finding to Path traceability, work item coverage, timeline references, and optional artifact hash integrity before report handoff.

cloud-k8s

Use for authorized cloud, container, and Kubernetes security assessment including metadata SSRF, IAM misconfig, container escape paths, and cluster RBAC review.

code-audit

Use for authorized source-code security review and SAST workflows including Semgrep, CodeQL patterns, dangerous API hunting, and fix verification.

ctf-sandbox

Thin PRIMARY for CTF / AWD / 靶场 multi-type orchestration. Hands off to the sidecar CTF-Sandbox-Orchestrator. Use when the user says CTF, AWD, 靶场, or 比赛题 and no more specific pwn/APK/IDA route already won.

database-security

Use for authorized database security assessment covering PostgreSQL/MySQL/MSSQL/Mongo/Redis exposure, authz, UDF/command paths, and misconfiguration review.

diagram-generator

generate, refine, validate, and render diagrams from natural language, notes, code snippets, schemas, tables, or existing diagram source. use for flowcharts, swimlanes, sequence diagrams, state diagrams, er diagrams, class diagrams, architecture/c4-style diagrams, dependency graphs, gantt charts, mind maps, user journeys, sankey-style flows, org charts, network graphs, and other visual models. supports mermaid by default, graphviz dot for complex graph layout, plantuml for uml-heavy engineering diagrams, and svg output when direct markup is more reliable.

digital-forensics

Use for authorized digital forensics including memory dumps, disk timelines, PCAP investigation, artifact triage, and IR evidence preservation.

docs-generator

|

dotnet-reverse

.NET / C# 二进制逆向。当目标是 .NET assembly(PE 头含 CLR、.exe/.dll 托管程序)、C# 编译产物(含 NativeAOT)、红队 Sharp* 工具(Rubeus / SharpHound / SharpHound 等)、.NET 混淆程序(ConfuserEx / SmartAssembly / Babel / Eazfuscator)、.NET loader / info-stealer / 套壳 malware 时使用。优先用 dnSpyEx + de4dot,需要 AI 直接操作时联动 dnSpy MCP。不用于纯 native 二进制(走 reverse-engineering / ida-reverse)。

edr-bypass-re

|

email-security

Use for authorized email security review including phishing analysis, header authentication (SPF/DKIM/DMARC), BEC patterns, and mailbox token abuse research.

firmware-pentest

|

ghidra-reverse

Use for free/open reverse engineering with Ghidra (headless or GUI), including decompile, cross-refs, and optional Ghidra MCP workflows when IDA is unavailable.

Skills relacionados