Pular para o conteúdo
Skillpedia
Análise e planilhas35 mil · #5500

analyzing-usb-device-connection-history

Faz seu agente reconstruir o histórico de conexões de dispositivos USB. Ajuda a rastrear o uso de mídias removíveis e identificar possíveis vazamentos de dados.

O que ela faz

Esta ferramenta analisa o histórico de conexão de dispositivos USB no Windows. Ela mostra quando um dispositivo foi conectado pela primeira vez, a última vez que foi conectado e qual letra de unidade foi atribuída a ele.

Quando usar

  • ✓Investigar se alguém usou um pendrive para roubar dados.
  • ✓Verificar quais dispositivos USB foram usados em um computador.
  • ✓Criar uma linha do tempo de quando dispositivos foram conectados.

Exemplo do que pedir para a IA

“Mostre o histórico de conexão dos dispositivos USB neste computador.”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/mukul975/Anthropic-Cybersecurity-Skills/blob/main/skills/analyzing-usb-device-connection-history/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/mukul975/Anthropic-Cybersecurity-Skills/blob/main/skills/analyzing-usb-device-connection-history/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

A ferramenta examina arquivos especiais do Windows (como o registro e logs) que guardam informações sobre dispositivos conectados. Ela junta essas informações para reconstruir o histórico.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add mukul975/Anthropic-Cybersecurity-Skills --skill analyzing-usb-device-connection-history

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/mukul975/Anthropic-Cybersecurity-Skills/main/skills/analyzing-usb-device-connection-history/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

Analisando o Histórico de Conexão de Dispositivos USB

Quando Usar

  • Ao investigar potencial exfiltração de dados via dispositivos de armazenamento removíveis
  • Durante investigações de ameaças internas para rastrear o uso de dispositivos USB
  • Para auditorias de conformidade verificando a aplicação da política de mídia removível
  • Ao correlacionar conexões USB com eventos de acesso e cópia de arquivos
  • Para estabelecer uma linha do tempo de conexões de dispositivos durante um incidente

Pré-requisitos

  • Imagem forense ou colmeias de registro e logs de eventos extraídos
  • Acesso às colmeias de registro SYSTEM, SOFTWARE e NTUSER.DAT
  • Logs SetupAPI (setupapi.dev.log)
  • Logs de Eventos do Windows (System, Security, DriverFrameworks-UserMode)
  • USBDeview, USB Forensic Tracker ou RegRipper
  • Compreensão da identificação de dispositivos USB (VID, PID, número de série)

Fluxo de Trabalho

Etapa 1: Extrair Artefatos Relacionados a USB

# Mount forensic image and copy relevant artifacts
mount -o ro,loop,offset=$((2048*512)) /cases/case-2024-001/images/evidence.dd /mnt/evidence

mkdir -p /cases/case-2024-001/usb/

# Registry hives
cp /mnt/evidence/Windows/System32/config/SYSTEM /cases/case-2024-001/usb/
cp /mnt/evidence/Windows/System32/config/SOFTWARE /cases/case-2024-001/usb/
cp /mnt/evidence/Users/*/NTUSER.DAT /cases/case-2024-001/usb/

# SetupAPI logs (first connection timestamps)
cp /mnt/evidence/Windows/INF/setupapi.dev.log /cases/case-2024-001/usb/

# Event logs
cp /mnt/evidence/Windows/System32/winevt/Logs/System.evtx /cases/case-2024-001/usb/
cp "/mnt/evidence/Windows/System32/winevt/Logs/Microsoft-Windows-DriverFrameworks-UserMode%4Operational.evtx" \
   /cases/case-2024-001/usb/ 2>/dev/null
cp "/mnt/evidence/Windows/System32/winevt/Logs/Microsoft-Windows-Partition%4Diagnostic.evtx" \
   /cases/case-2024-001/usb/ 2>/dev/null

Etapa 2: Analisar a Chave de Registro USBSTOR

# Extract USBSTOR entries from SYSTEM hive
python3 << 'PYEOF'
from Registry import Registry
import json

reg = Registry.Registry("/cases/case-2024-001/usb/SYSTEM")

# Find current ControlSet
select = reg.open("Select")
current = select.value("Current").value()
controlset = f"ControlSet{current:03d}"

# Parse USBSTOR
usbstor_path = f"{controlset}\\Enum\\USBSTOR"
usbstor = reg.open(usbstor_path)

devices = []
print("=== USBSTOR DEVICES ===\n")

for device_class in usbstor.subkeys():
    # Format: Disk&Ven_VENDOR&Prod_PRODUCT&Rev_REVISION
    class_name = device_class.name()
    parts = class_name.split('&')
    vendor = parts[1].replace('Ven_', '') if len(parts) > 1 else 'Unknown'
    product = parts[2].replace('Prod_', '') if len(parts) > 2 else 'Unknown'
    revision = parts[3].replace('Rev_', '') if len(parts) > 3 else 'Unknown'

    for instance in device_class.subkeys():
        serial = instance.name()
        last_write = instance.timestamp()

        device_info = {
            'vendor': vendor,
            'product': product,
            'revision': revision,
            'serial': serial,
            'last_connected': str(last_write),
        }

        # Get friendly name if available
        try:
            friendly = instance.value("FriendlyName").value()
            device_info['friendly_name'] = friendly
        except:
            pass

        # Get device parameters
        try:
            params = instance.subkey("Device Parameters")
            try:
                device_info['class_guid'] = params.value("ClassGUID").value()
            except:
                pass
        except:
            pass

        devices.append(device_info)
        print(f"Device: {vendor} {product}")
        print(f"  Serial: {serial}")
        print(f"  Last Connected: {last_write}")
        print(f"  Friendly Name: {device_info.get('friendly_name', 'N/A')}")
        print()

# Save results
with open('/cases/case-2024-001/analysis/usb_devices.json', 'w') as f:
    json.dump(devices, f, indent=2)

print(f"\nTotal USB storage devices found: {len(devices)}")
PYEOF

Etapa 3: Extrair Atribuições de Letras de Unidade e Associações de Usuário

# Analisar MountedDevices da colmeia SYSTEM
python3 << 'PYEOF'
from Registry import Registry
import struct

reg = Registry.Registry("/cases/case-2024-001/usb/SYSTEM")

mounted = reg.open("MountedDevices")

print("=== MOUNTED DEVICES (Atribuições de Letras de Unidade) ===\n")
for value in mounted.values():
    name = value.name()
    data = value.value()

    if name.startswith("\\DosDevices\\"):
        drive_letter = name.replace("\\DosDevices\\", "")
        if len(data) > 24:

…
Perguntas frequentes

O que são 'hives' de registro?

São arquivos que contêm as configurações e informações do sistema Windows, como quais dispositivos foram conectados.

O que é 'setupapi.dev.log'?

É um arquivo de log que registra quando os drivers de dispositivos são instalados ou atualizados no Windows, ajudando a saber quando um dispositivo foi conectado pela primeira vez.

Por que preciso de acesso a arquivos específicos do Windows?

Esses arquivos contêm os dados brutos sobre as conexões de dispositivos USB que a ferramenta precisa analisar.

Detalhes

Descrição original do autor

Correlate Windows registry keys (USBSTOR, MountedDevices), Event Logs, and setupapi.dev.log to reconstruct USB device connection history, first/last-plugged timestamps, and drive letter mappings. Use when investigating removable media usage, tracking device provenance, or building a timeline for suspected data exfiltration.

repo: mukul975/Anthropic-Cybersecurity-Skills

Popularidade

Estrelas no GitHub
35 mil
Posição no ranking
#5500
Licença
Apache-2.0
Atualizada em
31/08/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas