Voltar às atualizações
New releaseJul 26, 2026

OffsetInspect v3.2.0

Kit de ferramentas PowerShell para análise de limites de detecção do AMSI/Defender e triagem estática de malware — mapeia deslocamentos de bytes para gatilhos de detecção, além de análise YARA, entropia, strings e PE/imphash. Complemento do OffsetScan.

Compartilhar

Dread Host Research

Release License PowerShell 5.1 and 7.x Cross-platform core Windows threat providers CI Security policy X (Twitter): @warped_atom

OffsetInspect

Um kit de ferramentas PowerShell com memória limitada para inspeção de deslocamento de bytes, correlação de código-fonte, comparação binária e análise defensiva de limites de detecção.

O OffsetInspect responde a uma pergunta prática de analista:

Que conteúdo está presente neste deslocamento de byte, e que contexto de origem ou binário o cerca?

Ele também fornece um fluxo de trabalho de limites de detecção nativo do OffsetInspect, inspirado no mesmo problema de analista abordado pelo ThreatCheck, sem incorporar seu código-fonte ou binários: ele localiza o prefixo de conteúdo mais antigo que o AMSI ou o Microsoft Defender ainda detecta, valida o limite repetidamente e alimenta o deslocamento resultante diretamente no inspetor de contexto. Além desse núcleo, ele adiciona uma suíte de análise de red team e triagem estática — descoberta de múltiplas regiões, varredura de corpus, diff de detecção, correlação de gatilhos de detecção, registro de drifts, relatórios de engajamento, análise de entropia, extração de strings e parsing de PE/imphash — tudo somente leitura, além de um testador de robustez de assinaturas para uso autorizado que perturba amostras apenas em memória, sem nunca desabilitar ou reconfigurar a proteção de endpoints.

Ferramenta complementar

Para triagem estática em escala de corpus (parsing de PE, entropia, strings, IOC) sem a sobrecarga do PowerShell, veja OffsetScan — um binário Rust nativo com o mesmo esquema de saída JSON. O OffsetInspect 3.1.0+ consome o JSON de IOC do OffsetScan diretamente via -IocJsonPath.


Destaques

  • Abre cada arquivo de inspeção único por meio de um handle de leitura estável e processa todos os deslocamentos solicitados em conjunto.
  • Usa uma passagem de streaming com memória limitada para mapeamento de linhas, em vez de reler o arquivo completo para cada deslocamento.
  • Lê apenas as janelas de bytes solicitadas para saída hexadecimal e comparação.
  • Mapeia deslocamentos de bytes UTF-8 e UTF-16 para linhas de código-fonte e posições de caracteres.
  • Implementa contexto de origem anterior e posterior por meio de -ContextLines.
  • Suporta contratos de saída humana, objeto, JSON, CSV e arquivo CSV.
  • Suporta planos de arquivo/deslocamento um-para-muitos, muitos-para-um e emparelhados.
  • Compara o byte alvo com um segundo arquivo sem carregar esse arquivo repetidamente.
  • Adiciona uma camada de provedores AMSI e Microsoft Defender implementada de forma independente, com estados explícitos de erro, tempo limite, bloqueio e indeterminado.
  • Registra uma trilha de auditoria por sonda (ProbeLog/ProbeCount) de cada invocação distinta de provedor, transmitida ao vivo para -Verbose, para uma transcrição pronta para relatório do custo real de provedores de uma varredura.
  • Descobre múltiplas regiões independentemente detectáveis em um arquivo por meio de varredura AMSI em memória (nada detectado é gravado em disco) e mapeia cada limite para um deslocamento absoluto.
  • Varre um corpus em uma matriz de detecção consolidada, faz diff de detecção entre duas varreduras e exporta relatórios de engajamento em Markdown/HTML (opcionalmente alimentados pelo JSON do motor nativo OffsetScan para painéis de IOC em escala de corpus).
  • Correlaciona um limite de detecção ao conteúdo que o produziu — a seção PE, a entropia do trecho até o limite e as strings que terminam nele ou o cruzam como conteúdo candidato de assinatura.
  • Registra a detecção ao longo do tempo (hash do arquivo e a versão local da assinatura do Defender) para que uma mudança na detectabilidade possa ser atribuída ao arquivo, a uma atualização do banco de assinaturas ou a um resultado não determinístico do provedor.
  • Testa a robustez de assinaturas para engajamentos autorizados ao perturbar uma amostra detectada em memória (maiúsculas/minúsculas, concatenação, comentário, espaços em branco) e relata quais classes de transformação evadem — nenhuma variante é gravada em disco.
  • Correlaciona uma varredura com a telemetria do Windows que ela gera (-CaptureTelemetry): se um alerta do Microsoft Defender foi emitido, com qual contexto, e quais fontes de telemetria ficaram cegas — codificando o princípio "assuma visibilidade, depois valide-a". Somente leitura, sem administrador, somente Windows.
  • Adiciona auxiliares estáticos de triagem de malware: entropia por janela (regiões empacotadas/criptografadas), extração de strings ASCII/UTF-16LE com deslocamentos e parsing de cabeçalho/seção/importações de PE com imphash e detecção de overlay.
  • Verifica a proveniência Authenticode (Get-OffsetSignature): usando a validação de confiança real da plataforma, informa se um arquivo é validamente assinado e confiável, quem o assinou e se é assinado incorporado ou por catálogo — um sinal de assinante que complementa o imphash e a impressão digital da cadeia de ferramentas de build (importações vs cadeia de ferramentas vs assinante). Somente Windows.
  • Nunca altera exclusões do Defender, proteção em tempo real ou configuração de segurança do sistema.
  • É distribuído como um pacote autocontido da PowerShell Gallery, sem dependências externas de runtime; varredura YARA e ClamAV são as únicas exceções opcionais, cada uma exigindo seu próprio motor externo.

Comandos

Categorias