extracting-iocs-from-malware-samples
Faz seu agente extrair informações de ameaças de arquivos maliciosos. Ajuda a identificar e bloquear ataques, protegendo sistemas e redes.
O que ela faz
Esta ferramenta extrai informações importantes (chamadas de 'indicadores') de amostras de malware. Ela encontra coisas como endereços de sites, arquivos e padrões de comportamento que podem ser usados para se defender contra ameaças.
Quando usar
- ✓Após analisar um programa malicioso e precisar coletar as pistas.
- ✓Para criar listas de bloqueio em firewalls ou sistemas de segurança.
- ✓Para gerar regras de detecção para outras ferramentas de segurança.
Exemplo do que pedir para a IA
“Extraia os indicadores de comprometimento da amostra de malware 'malware.exe'.”
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
Mensagem pronta para colar
Como funciona
A ferramenta examina o arquivo e os relatórios de análise para encontrar endereços IP, nomes de domínio, caminhos de arquivos e outros artefatos. Em seguida, ela formata essas informações para que possam ser usadas facilmente por outras ferramentas de segurança.
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 extracting-iocs-from-malware-samplesOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/mukul975/Anthropic-Cybersecurity-Skills/main/skills/extracting-iocs-from-malware-samples/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Extraindo IOCs de Amostras de Malware
Quando Usar
- A análise de malware (estática ou dinâmica) foi concluída e indicadores acionáveis precisam ser extraídos para as equipes de defesa.
- Construindo listas de bloqueio para firewalls, proxies e DNS sinkholes a partir de amostras analisadas.
- Criando regras YARA, assinaturas Snort/Suricata ou conteúdo de detecção SIEM a partir de artefatos de malware.
- Contribuindo para plataformas de compartilhamento de inteligência de ameaças (MISP, OTX, ThreatConnect).
- Rastreando campanhas de malware correlacionando IOCs entre várias amostras.
Não use para IOCs de fontes não verificadas sem validação; falsos positivos em listas de bloqueio podem interromper operações comerciais legítimas.
Pré-requisitos
- Python 3.8+ com as bibliotecas
iocextract,pefile,yara-pythoninstaladas. - Relatório de análise de malware concluído (análise estática, análise dinâmica ou engenharia reversa).
- Acesso a arquivos PCAP, dumps de memória ou relatórios de sandbox da análise.
- Instância MISP ou servidor STIX/TAXII para compartilhamento estruturado de IOCs.
- Chave de API do VirusTotal para enriquecimento e validação de IOCs.
- CyberChef para decodificar indicadores ofuscados.
Fluxo de Trabalho
Etapa 1: Extrair IOCs Baseados em Arquivos
Calcule hashes e identifique indicadores de metadados de arquivos:
# Generate all standard hashes
md5sum malware_sample.exe
sha1sum malware_sample.exe
sha256sum malware_sample.exe
# Generate ssdeep fuzzy hash for similarity matching
ssdeep malware_sample.exe
# Generate imphash (import hash) for PE files
python3 -c "
import pefile
pe = pefile.PE('malware_sample.exe')
print(f'Imphash: {pe.get_imphash()}')
"
# Generate TLSH (Trend Micro Locality Sensitive Hash)
python3 -c "
import tlsh
with open('malware_sample.exe', 'rb') as f:
h = tlsh.hash(f.read())
print(f'TLSH: {h}')
"
# Compile file metadata IOCs
python3 << 'PYEOF'
import pefile
import os
import hashlib
import datetime
pe = pefile.PE("malware_sample.exe")
print("FILE IOCs:")
with open("malware_sample.exe", "rb") as f:
data = f.read()
print(f" MD5: {hashlib.md5(data).hexdigest()}")
print(f" SHA-1: {hashlib.sha1(data).hexdigest()}")
print(f" SHA-256: {hashlib.sha256(data).hexdigest()}")
print(f" File Size: {len(data)} bytes")
ts = pe.FILE_HEADER.TimeDateStamp
print(f" Compile: {datetime.datetime.utcfromtimestamp(ts)} UTC")
print(f" Imphash: {pe.get_imphash()}")
PYEOF
Etapa 2: Extrair IOCs de Rede
Obtenha indicadores de rede de strings, PCAP e relatórios de sandbox:
# Extract network IOCs from strings
import re
with open("malware_sample.exe", "rb") as f:
data = f.read()
# Extract ASCII and Unicode strings
ascii_strings = re.findall(b'[ -~]{4,}', data)
unicode_strings = re.findall(b'(?:[ -~]\x00){4,}', data)
all_strings = [s.decode('ascii', errors='ignore') for s in ascii_strings]
all_strings += [s.decode('utf-16-le', errors='ignore') for s in unicode_strings]
# IP addresses (excluding private ranges for C2 indicators)
ip_pattern = re.compile(r'\b(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]?\d)\b')
ips = set()
for s in all_strings:
for ip in ip_pattern.findall(s):
# Filter out private/reserved ranges
octets = [int(o) for o in ip.split('.')]
if octets[0] not in [10, 127, 0] and not (octets[0] == 172 and 16 <= octets[1] <= 31) and not (octets[0] == 192 and octets[1] == 168):
ips.add(ip)
# Domain names
domain_pattern = re.compile(r'\b[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z]{2,})+\b')
domains = set()
for s in all_strings:
for d in domain_pattern.findall(s):
if not d.endswith(('.dll', '.exe', '.sys', '.com.au')):
domains.add(d)
# URLs
url_pattern = re.compile(r'https?://[^\s<>"{}|\\^`\[\]]+')
urls = set()
for s in all_strings:
for u in url_pattern.findall(s):
urls.add(u)
print("NETWORK IOCs:")
print(f" IPs: {ips}")
print(f" Domains: {domains}")
print(f" URLs: {urls}")
Etapa 3: Extrair IOCs Baseados em Host
Identifique caminhos de arquivo, chaves de registro, mutexes e serviços:
# Extrair IOCs baseados em host do relatório de sandbox
import json
with open("cuckoo_report.json") as f:
report = json.load(f)
print("IOCs de HOST:")
# Caminhos de arquivo criados ou modificados
print("\nCaminhos de Arquivo:")
for f in report["behavior"]["summary"].get("files", []):
if any(p in f.lower() for p in ["temp", "appdata", "system32", "programdata"]):
print(f" [DROPPED] {f}")
# Chaves de registro para persistência
print("\nChaves de Registro:")
…
Perguntas frequentes
O que são 'indicadores de comprometimento' (IOCs)?
São pistas digitais, como um endereço IP ou um nome de domínio, que indicam que um sistema pode ter sido invadido ou comprometido por malware.
Por que é importante 'desfangar' os IOCs?
'Desfangar' significa modificar os IOCs (como adicionar colchetes a um endereço IP) para que não sejam acidentalmente ativados se alguém clicar neles em um documento ou e-mail, evitando assim infecções.
Preciso ser um especialista em segurança para usar isso?
Embora a ferramenta seja poderosa, o objetivo é simplificar a extração de IOCs. No entanto, entender o contexto da análise de malware ajuda a interpretar os resultados.
Detalhes
Descrição original do autor
Extracts indicators of compromise (IOCs) from malware samples, including file hashes, network indicators (IPs, domains, URLs, PCAP indicators), host artifacts (file paths, registry keys, mutexes), and behavioral patterns, using tools like CyberChef, then defangs and exports them in standard threat-intel formats. Use for IOC extraction, threat indicator harvesting, or building detection content fro
Popularidade
- Estrelas no GitHub
- 35 mil
- Posição no ranking
- #5770
- Licença
- Apache-2.0
- Atualizada em
- 31/08/2026
Comentários
- …
Mais skills deste repositório
abusing-dpapi-for-credential-access
Dá ao seu agente de IA instruções prontas para uma tarefa específica, para ele fazer melhor e mais rápido.
mukul975/Anthropic-Cybersecurity-Skills
abusing-shadow-credentials-for-privesc
Ensina seu agente de IA a escrever textos claros e bem estruturados.
mukul975/Anthropic-Cybersecurity-Skills
achieving-cmmc-level-2-compliance
Ajuda seu agente a preparar um ambiente para conformidade com CMMC Nível 2. Ele implementa requisitos de segurança e gerencia a documentação necessária.
mukul975/Anthropic-Cybersecurity-Skills
acquiring-disk-image-with-dd-and-dcfldd
Ajuda seu agente a criar cópias exatas de discos rígidos. Isso é útil para garantir que nenhuma informação seja perdida ou alterada durante investigações.
mukul975/Anthropic-Cybersecurity-Skills
Skills parecidas
data-scraper-agent
Ajuda seu agente a coletar dados automaticamente de qualquer fonte pública. Ele pode ser agendado, enriquecer informações e salvar os resultados. É útil para monitorar ou rastrear dados online.
affaan-m/ECC
Apify Automation
Faz seu agente coletar dados da web de forma automática usando a plataforma Apify. Ele pode executar tarefas de raspagem e extrair informações.
ComposioHQ/awesome-claude-skills
Firecrawl Automation
Ajuda seu agente a extrair dados da web. Ele pode raspar páginas, rastrear sites e organizar informações.
ComposioHQ/awesome-claude-skills