paint-brush
Veja como criamos um detector de sites de phishing em tempo real para MacOSpor@moonlock
1,135 leituras
1,135 leituras

Veja como criamos um detector de sites de phishing em tempo real para MacOS

por Moonlock (by MacPaw)5m2024/08/26
Read on Terminal Reader

Muito longo; Para ler

Descubra como a equipe Moonlock da MacPaw desenvolveu um detector de sites de phishing de última geração em tempo real para macOS. Esta solução no dispositivo aumenta a segurança ao alertar instantaneamente os usuários sobre ameaças de phishing sem depender do processamento em nuvem, garantindo detecção mais rápida e melhor privacidade.
featured image - Veja como criamos um detector de sites de phishing em tempo real para MacOS
Moonlock (by MacPaw) HackerNoon profile picture
0-item

Esta solução antiphishing em tempo real para macOS leva a detecção baseada em referência a um novo patamar, alertando instantaneamente os usuários de Mac que eles estão em um site de phishing.

Primeiro, o contexto

Quantos sites de phishing exclusivos foram publicados em 2023? O Antiphishing Working Group contado quase 5 milhões. No início de 2024, a divisão de segurança cibernética Moonlock da MacPaw relatado sobre o ladrão AMOS que depende de sites falsos de marcas confiáveis para espalhar malware em computadores Apple. Eles não apenas infectam nossos dispositivos, mas também coletam credenciais das vítimas para fins maliciosos. Sites falsificados são perigosos, então minha equipe e eu decidimos fazer algo sobre eles.


A solução que descrevo abaixo começou como um experimento de prova de conceito em Bloqueio da Lua . Nós alisamos as rugas no P&D Tecnológico da MacPaw e apresentamos o protótipo funcional na STAST 2024. Nosso documento de posicionamento descreveu a solução em detalhes e foi originalmente carregado em arXiv.org . Para uma prévia dos bastidores do nosso aplicativo antiphishing, continue lendo.

O que temos em mãos agora?

Os aplicativos antiphishing atuais usam principalmente três métodos de detecção: lista negra, abordagem baseada em classificação e abordagem baseada em referência. Cada método tem suas vantagens, mas todos exigem mais melhorias. Vamos explorar cada um deles.

Lista negra

A abordagem da lista negra é prática e precisa, mas não consegue acompanhar a rapidez com que sites de phishing se espalham. Nem sempre é eficaz, pois novos sites de phishing ainda podem precisar ser adicionados à lista, enquanto os invasores frequentemente alteram URLs para evitar a detecção.


Por exemplo, o Google Safe Browsing usa listas de sites de phishing conhecidos. Quando você tenta visitar um site, ele verifica o endereço em relação a essa lista. Se houver uma correspondência, ele bloqueia o acesso e avisa sobre o perigo. Mas e se o site foi publicado há poucos minutos? Ele não estará na lista, e o usuário ficará preso.

Abordagem baseada em classificação

Neste método antiphishing, o machine learning analisa recursos de páginas da web, como estruturas de URL, conteúdo HTML e metadados para determinar se um site é falsificado ou legítimo. A classificação é excelente para extensões de navegador porque aprende com dados do usuário para detectar novos sites de phishing.


A desvantagem aqui é que o aprendizado de máquina requer algoritmos complexos e muitos dados de treinamento, enquanto os cibercriminosos rapidamente inventam novas táticas de ofuscação para evitar a detecção. Isso torna as abordagens baseadas em classificação menos precisas e não ideais para produtos de segurança autônomos.

Abordagem baseada em referência

Algumas das soluções baseadas em referência são consideradas de última geração. Elas usam visão computacional para analisar a aparência de páginas da web e detectar efetivamente sites de phishing. O que também vemos, no entanto, é que as soluções baseadas em referência poderiam ser mais rápidas se não estivessem processando casos de phishing na nuvem.


Há um intervalo de tempo crítico entre um site de phishing ir ao ar e os sistemas de detecção baseados em referência o adicionarem à lista. Queríamos diminuir esse intervalo para garantir detecção e resposta mais rápidas.

Como funciona nosso aplicativo antiphishing nativo para macOS

Nosso objetivo era alertar os usuários de Mac sobre sites de phishing assim que eles fossem ao ar. Para conseguir isso, adotamos a abordagem baseada em referência e a aprimoramos. Eliminamos o processamento em nuvem e sugerimos fazer todos os cálculos localmente, visando reduzir o tempo de detecção. Como bônus, nossa solução aumenta a privacidade, pois todos os dados do usuário são processados no dispositivo e não vão para nenhum outro lugar.


Construímos um aplicativo macOS nativo usando Swift, incorporando estruturas para captura de tela e aprendizado de máquina. Ao converter nossos modelos para CoreML formato, garantimos um desempenho suave e minimizamos o uso de recursos do sistema. Dessa forma, nosso protótipo verifica continuamente páginas da web em segundo plano, protegendo usuários de Mac de sites de phishing sem exigir interações extras.\O protótipo funciona independentemente dos navegadores. O macOS Acessibilidade A estrutura e os metadados de acessibilidade ajudam o aplicativo a se concentrar em certas regiões de interesse para que ele saiba onde procurar por phishing.


Veja como funciona em poucas palavras.

Primeiro passo: análise da página web

Quando em um site, nosso aplicativo tenta entender o layout da página. Ele identifica elementos-chave da página, como logotipos, campos de entrada e botões. Para esta tarefa, escolhemos DETR com ResNet-50 devido à sua precisão e desempenho.


Nesta etapa, é importante reconhecer o posicionamento dos elementos no site, principalmente a área com o logotipo da marca e os formulários para inserir credenciais.

Segundo passo: atribuição da marca

Em seguida, o protótipo verifica se um logotipo detectado no site corresponde a alguma marca bem conhecida. Além disso, ele compara a URL da página da web com uma lista de referência de sites legítimos. Se o site for oficial, pulamos as etapas seguintes.


Em uma nota lateral, ficamos consternados ao ver quantos domínios oficiais as marcas usam para marketing. Não é de se admirar que sites de phishing sejam tão eficazes em enganar suas vítimas. Por exemplo, a DHL tem vários domínios oficiais como dhl.com, express.dhl, mydhli.com, dhlsameday.com e dhlexpresscommerce.com.

Terceiro passo: evitar a coleta de credenciais

Classificamos a página da web em duas categorias: se ela requer credenciais ou não. Esta etapa verifica se um site de phishing está tentando roubar informações pessoais do usuário.


Na captura de tela, nosso protótipo encontrou campos de entrada de credenciais, atribuiu a página à DHL e verificou a URL em relação à lista de domínios oficiais da DHL. O usuário recebeu um aviso de phishing, pois a página não pertence à DHL.

Quão preciso é o protótipo?

Nosso sistema mantém ou supera a precisão da linha de base e certamente tem tempos de processamento mais rápidos. Alcançamos uma precisão de 90,8% no reconhecimento de logotipo e 98,1% na detecção de entrada de credenciais.


O gráfico abaixo mostra nosso desempenho em relação a outras soluções antiphishing e como nos comparamos em precisão, recall e taxa de falsos positivos. Detectamos orgulhosamente 87,7% das tentativas de phishing, mantendo a taxa de falsos positivos em baixos 3,4%.

É rápido e suave também

As métricas finais demonstram que nossa solução roda suavemente em segundo plano sem perda perceptível de desempenho. O uso da CPU é mínimo: com oito núcleos no Apple M1 Mac, nosso protótipo usa apenas 16% da capacidade disponível de 800%. Esse nível de consumo é semelhante a três abas ativas do Safari ou uma chamada do Zoom.

Considerações finais

Há muitos aplicativos antiphishing no mercado, mas a maioria deles processa dados em servidores externos. Nosso protótipo mostra que o hardware em computadores modernos nos permite trazer modelos de aprendizado de máquina localmente no dispositivo. Podemos usá-los para combater phishing e não nos preocupar com velocidades de processamento e uso de recursos do sistema. Felizmente, o ecossistema da Apple fornece estruturas e ferramentas para otimização.


Autor: Ivan Petrukha, engenheiro de pesquisa sênior na MacPaw Technological R&D, ex-Moonlock.