Introdução
O Proxy Inteligente (Intelligent Proxy) é um recurso do Cisco Umbrella disponível apenas para as políticas DNS. Este é um serviço que intercepta e faz proxy de requisições de tráfego web pontencialmente maliciosos, especialmente websites de comunidades onde é possível o usuário realizar o compartilhamento de arquivos, e em muita das vezes estes podem conter malware, vírus, arquivos que podem infectar o dispositivo final, e com o risco de se espalhar pela rede a qual o dispositivo está conectado.
A classificação destes sites é baseada na reputação do domínio/URL. Cada domínio possui uma classificação, digamos de menos confiável a mais confiável. Estes domínios são classificados por equipes de pesquisa como a do Cisco Umbrella, Cisco Talos, entre outros.
O Cisco Umbrella classifica os domínios em três categorias:
- Domínios não confiáveis: para estes domínios, o tráfego é imediatamente interceptado pelo Umbrella na camada DNS.
- Domínios confiáveis: Umbrella retorna com o endereço IP do website, e não existe a necessidade de ser feito proxy para o domínio de destino, pelo fato de serem domínios confiáveis e não apresentarem risco. Como exemplo de domínios confiáveis são Google, Office365, Cisco.
- Domínios que estão na lista cinza (greylist) e apresentam algum risco: Cisco Umbrella não bloqueia o acesso total a estes domínios, pois existem conteúdos que podem ser acessados, e com o bloqueio total é gerado um alto índice de falso positivo. Por outro lado, dentro desses domínios podem existir arquivos maliciosos que ao usuário realizar o download infecte à rede. Exemplos de domínios como este são Reddit or Pastebin.
Quando for habilitar o Intelligent proxy, é recomendável habilitar discriptografia SSL (SSL Decryption). O protolo SSL (Secure Socket Layer) é utilizado para encryptar tráfego web em trânsito, para prevenir a visibilidade e o vazamento do dado/informação em trânsito. Contudo, cybercriminosos aproveitam da criptografia para propagar malware e exfiltrar dados, sabendo que podem contornar as soluções tradicionais de inspeção e segurança que não descriptografam o tráfego. Por este motivo, habilitar o SSL Decryption é de grande importância, uma vez que todo tráfego sobre HTTPS/criptografado será descriptografado e inspecionado, e assim será possível olhar dentro do pacote criptografado o que está sendo direcionado, e intercepatar o tráfego malicioso antes que chegue ao destino final.
Fluxo do tráfego para Cisco Umbrella DNS e Intelligent Proxy
O host inicia conexão e envia uma consulta DNS, e o conector Cisco Umbrella no dispositivo intercepta e inspeciona a consulta DNS.
- Se for uma consulta para o DNS local, o pacote DNS é encaminhado sem alteração para o servidor DNS local.
- Caso seja um domínio externo, adiciona o registro Extended DNS (EDNS) para a consulta e envia para o Cisco Umbrella Resolver. O consulta EDNS inclui a identificação do dispositivo, o organization ID e o IP do cliente. Com base na informação recebida, o Cisco Umbrella applica diferentes políticas para a consulta DNS, como:
Se a URL é considerada segura, então o endereço IP do provedor de conteúdo final é retornado na resposta do DNS, e o dispositivo final consegue acessar a página requerida. Isso é chamado de ação whitelist.
Se a URL é considerada maliciosa ou estiver bloqueada por uma política, então, o endereço IP da página incial bloqueada no Cisco Umbrella é retornado na resposta DNS, e o dispositivo final não tem acesso a página requerida. Essa é a ação de blacklist.
Se a URL é considerada suspeita, então o endereço IP unicast do Intelligent proxy é retornado na resposta DNS. Essa é a ação de Graylist. Sendo assim, todo o tráfego HTTP(S) considerado de domínios "grey" é feito proxy pelo Intelligent proxy e passa pela filtragem de URL.
Dessa forma, o cliente final estará com o tráfego protegido.
Abaixo uma imagem com a ilustração do tráfego.
Topologia Cisco Umbrella + Intelligent Proxy
Teste Pré Implementação do Intelligent Proxy e SSL Decryption
Com o intuito de demonstrar a diferença do funcionamento do Intelligent proxy, um teste de pré implementação será aplicado.
Em um política DNS existente no Cisco Umbrella, a opção
Intelligent proxy deve estar desabilitada. Navegue até
Policies > Management > DNS Policies. Mais informações como criar e habilitar políticas DNS em
Cisco Umbrella - Políticas para tráfego DNS
Configuração DNS Policy
Intelligent Proxy desabilitado
SSL Decryption desabilitado
Um outro teste muito interessante a ser realizado é acessar o site
https://eicar.org/. Este site é utilizado para download de arquivo de
teste anti-malware. Mesmo este site não contendo arquivos maliciosos (serem arquivos somente para teste), este deve ser considerado como um site malicioso, que é utilizado para saber se o sistema de detecção está ou não funcionando.
Observe na imagem abaixo em Activity Search dentro do Umbrella, que o acesso ao site foi permitido como se fosse um site sem riscos.
Log Umbrella - acesso ao eicar.org
Outra validação a ser feita, a partir da página eicar.org é clicar em DOWNLOAD ANTI MALWARE TESTFILE, e em seguida clicar em qualquer uma das opções de Download. Observe que ao clicar nas duas primeiras opções, ".com e .txt"será redirecionado para um página similar a imagem abaixo. O navegador identifica como Perigoso, porém não bloqueia o acesso.
Acesso ao eicar.org
Arquivo .txt - eicar.org
Ao clicar nas opções "-zip", pelo fato de ser um arquivo .zip o download é iniciado automaticamente. O sistema local não o reconhece como um arquivo malicioso. Dessa forma, o dispostivo já pode ter sido infectado pelo arquivo malicioso e ter causado danos ao dispositivo final como também se espalhado pela rede.
Voltando ao dashboard do Umbrella, observe que não há registro de tentativa de download do arquivo, note também que o arquivo não foi identificado como malicioso, e todo o tráfego foi permitido.
Activity Search Umbrella - tráfego para domínio eicar
Nota: se existir um software antivirus ativo no dispositivo, este pode detectar o arquivo como um vírus, porém existem arquivos que o sistema de antivirus não o detectará como malicioso.
Habilitando Intelligent Proxy na Política DNS
Para habilitar o Intelligent proxy navegue até o menu Policies > Management > DNS Policies dentro do dashboard Umbrella, e clique sobre a policy que deseja habilitar o Intelligent Proxy.
Dentro da policy, habilite o Enable Intelligent Proxy e também selecione o SSL Decryption, e em seguida clique em Save.
Configuração política DNS - Habilitando Intelligent Proxy
Um ponto importante a ressaltar é, quando habilitar o SSL Decryption o ROOT CERTIFICATE sempre deve ser instalado no dispositivo final do usuário. Mais informações no artigo mencionado acima.
Outra observação para SSL Decryption, caso necessário o administrador da rede pode adicionar categorias para não serem descriptografados por SSL, basta clicar em SELECTIVE DECRYPTION > CREATE LIST e selecionar as categorias necessárias.
Intelligent Proxy - exclusão de categoria
Nota: Quando habilitado o SSL decryption, além de possibilitar a inspeção do tráfego HTTPS, é trazida a possibilidade de quando o tráfego for bloqueado que apareça a página de bloqueio do Umbrella, e não somente uma página em branco dizendo que o site não está disponível.
Testes Intelligent proxy e SSL Decryption
Para realizar o teste de funcionalidade do
Intelligent proxy, clique na página
http://proxy.opendnstest.com e veja que o resultado é diferente do demonstrado anteriormente, o
Intelligent proxy está funcionando.
Intelligent Proxy - em funcionamento
Clique também sobre Blocked URL e será mostrado a página de bloqueio que aparecerá quando acessar uma URL e essa for bloqueada pelo Intelligent proxy.
Intelligent Proxy - página de bloqueio
E clique sobre Allowed URL & blocked page content, um teste para validar que a página está permitida para acesso, porém a imagem da página que é algo malicioso foi bloqueada.
Intelligent Proxy - URL permitida, imagem bloqueada
Voltando ao dashboard do Umbrella, note que as páginas que foram acessadas estão com a ação Blocked e Selectively Proxy.
A blocked pois a página foi bloqueada automaticamente pelo Intelligent proxy sem a necessidade de criar uma política ou filtro de bloqueio para este domínio ou URL, e a Selectively Proxy pois é uma página na greylist do Umbrella.
Umbrella Activity Search
Nota: foi aplicado um filtro ao lado esquerdo para Blocked e Selectively Proxied.
Realize o mesmo teste para eicar.org, tanto o acesso ao site quanto o download do arquivo, conforme a sessão
Teste Pré Implementação.
Olhando os logs no Cisco Umbrella, veja que o acesso ao site já é identificado como greylist pelo Intelligent proxy.
Greylist - domínio eicar
Mas o download do arquivo ainda foi permitido. Isso é devido a necessidade de habilitar a função Inspect File dentro da política DNS. Essa função fará com que todos os downloads realizados a partir do dispositivo sejam inspecionados para assegurar que não apresentam arquivos maliciosos.
Volte a política DNS e habilite o Inspect File.
Habilitando Inspect file
Após essa configuração, experimente realizar o download do arquivo, e este será bloqueado.
Umbrella - página bloqueio download malware
Com os logs no dashboard do Umbrella, veja que ação de bloqueio para a tentativa de download.
Nota: o Inspect File somente fica disponível após habilitar o Intelligent proxy.
Conclusão
Dessa maneira, é possível observar a importância de habilitar o Intelligent proxy e o quanto a rede fica mais protegida, e os administradores podem concentrar os esforços em outros pontos de melhoria para o ambiente ao invés de criar regras individuais para cada domínio.
Espero que tenham aproveitado a leitura.
Obrigado!
Jonas Resende