retornar retornar
Descodificação de ameaças cibernéticas  para 2023

POR:
Mauro Börner
(Engenharia de automação de segurança)

COMPARTILHAR

Twitter Facebook Linkedin

Transformação de dados em identificadores exclusivos

O hashing é um processo usado para transformar dados em identificadores exclusivos de comprimento fixo, conhecidos como hashes. Esse processo é baseado em uma função que recebe uma entrada e retorna uma cadeia de caracteres de comprimento fixo, geralmente uma combinação aparentemente aleatória de letras e números.


Aqui está uma breve descrição de como funciona o hashing:

1. Entrada de dados:

- É obtido um conjunto de dados que pode ser de qualquer tamanho ou tipo

2. Função de hash:

- Um algoritmo de hashing é aplicado aos dados. Essa função recebe a entrada e produz uma string de comprimento fixo.

3. Identificador exclusivo:

- A string resultante é o hash ou identificador exclusivo associado aos dados originais.

Propriedades importantes:

- Dois conjuntos de dados diferentes não devem gerar o mesmo hash (propriedade de não colisão).

- Alterações mínimas nos dados devem resultar em alterações significativas no hash (propriedade de avalanche)..

Uso Comum:

- Esses algoritmos são comumente usados em indexação de banco de dados, verificação de integridade de arquivos, criptografia, entre outros.

Alguns algoritmos de hash comuns incluem MD5, SHA-1 e SHA-256. No entanto, é importante observar que alguns desses algoritmos provaram ser vulneráveis e são considerados obsoletos para determinadas finalidades. Em aplicativos de segurança, recomenda-se o uso de algoritmos modernos e seguros.


O que é Fuzzy Hashing?

O hashing difuso é comumente usado em software antimalware e análise de malware para detectar variantes de arquivos maliciosos ou suspeitos. Ao dividir um arquivo em fragmentos menores e calcular os hashes desses fragmentos, é possível identificar semelhanças estruturais entre os arquivos, mesmo que eles tenham sofrido modificações mínimas.

Esse recurso é especialmente útil na detecção de "malware polimórfico", que é um tipo de malware que tem a capacidade de mudar sua "aparência" sem alterar sua funcionalidade subjacente.

Com o uso de técnicas de hashing difuso, o software antimalware pode identificar famílias e variantes específicas de malware que compartilham características comuns, permitindo uma detecção mais eficaz. O hashing difuso não é aplicado somente a arquivos, mas também pode ser estendido a outros tipos de dados, como cadeias de texto. Sua aplicação não se limita apenas à segurança cibernética, mas também é usada no gerenciamento de versões de documentos, na detecção de duplicatas em bancos de dados e, em geral, em qualquer cenário em que dados semelhantes, mas não idênticos, precisem ser comparados.


Cenário de phishing

Em um cenário de phishing que emprega hashing difuso, a técnica seria usada para comparar arquivos ou dados semelhantes, especialmente no contexto da identificação de sites falsos ou páginas de phishing que imitam visualmente sites legítimos.

1. Criação de um site falso:

- Um invasor cria um site falso que imita visualmente um site legítimo, como o de um banco. O objetivo é fazer com que o site falso pareça o mais semelhante possível ao original para enganar as vítimas.

2. Geração de variantes:

- O invasor usa técnicas para criar variantes do site falso. Isso envolve fazer pequenas alterações no código-fonte, nas imagens, no texto ou em outros elementos do site para criar versões semelhantes, mas não idênticas.

3. Envio de e-mails de phishing:

- Os e-mails de phishing são enviados a um grupo de destinatários, fazendo-os acreditar que precisam realizar alguma ação urgente, como verificar a conta bancária. O e-mail inclui links que apontam para diferentes variantes do site falso.

4. Fuzzy Hashing para detecção:

- Os sistemas de segurança, como soluções antivírus ou ferramentas de detecção de phishing, usam algoritmos de hashing difuso para calcular hashes de páginas da Web e compará-los com bancos de dados de hashes conhecidos. Se as variantes do site falso tiverem semelhanças suficientes, elas poderão ser detectadas como possíveis páginas de phishing.

5. Prevenção e alerta:

- Se for descoberto que uma página da Web tem um hash semelhante a uma página conhecida como mal-intencionada, poderão ser tomadas medidas preventivas, como bloquear o acesso ao site, alertar o usuário ou notificar o provedor de serviços.s

O uso de hashing difuso nesse contexto ajuda a detectar sites mal-intencionados que foram projetados para serem visualmente semelhantes a sites legítimos, mas que sofreram pequenas modificações para contornar a detecção convencional baseada em hashes estáticos.

Ferramentas

1. ssdeep:

- O ssdeep é uma ferramenta (e uma biblioteca) que implementa o algoritmo de hash difuso chamado CTPH (context-triggered piecewise hashes). Ele é amplamente utilizado na detecção de malware e na identificação de arquivos semelhantes.


2. sdhash:

- O sdhash é outra ferramenta que se baseia em hashing difuso para identificar semelhanças entre conjuntos de dados. Ela pode ser útil na análise forense e na detecção de duplicatas.


3. spamsum:

- O spamsum é uma ferramenta que usa técnicas de hashing difuso para identificar semelhanças entre conjuntos de dados. Embora tenha sido originalmente projetada para a detecção de spam, ela pode ser aplicada em vários contextos.


4. TLSH (Trend Micro Locality Sensitive Hash):

- O TLSH é um algoritmo de hashing difuso desenvolvido pela Trend Micro. Ele foi projetado para ser rápido e eficiente na detecção de semelhanças entre dados.


5. md5deep y hashdeep:

- O md5deep e o hashdeep são ferramentas que permitem a criação e a verificação de hashes para grandes conjuntos de dados. Embora não sejam especificamente para hashing difuso, elas permitem a criação de hashes para comparar semelhanças entre arquivos.


Conclusão

O hashing difuso surge como uma ferramenta essencial na detecção de ameaças e no gerenciamento de dados, permitindo a identificação de semelhanças entre conjuntos de informações, mesmo diante de modificações mínimas. Com ferramentas como ssdeep, sdhash e outras, a detecção de malware, o gerenciamento de versões e a análise forense podem se tornar mais eficientes. Apesar de sua utilidade, elas destacam a importância de uma abordagem abrangente à segurança, incluindo conscientização, educação e atualização constante das medidas de proteção.