O que é Shellcode?
É um código de máquina de pequeno porte que permite obter acesso à linha de comando ou executar comandos personalizados na máquina alvo, explorando vulnerabilidades nos sistemas.
Definição
Este fragmento de código especial, utilizado no mundo da cibersegurança e em testes de intrusão, é injetado diretamente na memória do sistema. Historicamente, seu nome deriva do objetivo de abrir um shell de comando no sistema alvo. Atualmente, ele é projetado não apenas para abrir shells de comando, mas para executar qualquer tipo de instrução personalizada desejada no sistema.
Como funciona
Pesquisadores de segurança ou atacantes detectam vulnerabilidades em softwares, como estouro de buffer. Em seguida, eles colocam o pequeno código de máquina que prepararam na memória, na forma de uma sequência de bytes que o processador entende diretamente. Quando o processador executa esses comandos, obtém-se controle não autorizado sobre o sistema alvo.
Onde é usado
Você encontrará isso em análises de segurança, testes de intrusão e investigações de malware.
Costuma ser confundido com
Não deve ser confundido com scripts de shell. Enquanto os scripts de shell são códigos de alto nível baseados em texto, este conceito é um código binário de bytes que opera diretamente no nível do processador.
Perguntas e respostas
O shellcode é usado apenas para fins maliciosos?
Especialistas em segurança também usam esses códigos para testar a resistência de defesa dos sistemas e para corrigir vulnerabilidades.
Por que esses fragmentos de código são escritos com um tamanho tão pequeno?
Eles são projetados para serem o menor possível, a fim de infiltrar áreas restritas na memória e operar sem serem detectados por filtros de segurança.
Termos relacionados
Esta explicação foi escrita em linguagem simples para a TreScout com IA e traduzida automaticamente do original em turco · a versão turca é a que vale. Se algo parecer errado ou faltando, escreva para hello@trescout.com. Ler em turco →