De-anonymizing the Internet Using Unreliable IDs Yinglian Xie, Fang Yu, and Martín Abadi Microsoft Research Silicon Valley SIGCOMM 2009 Apresentado por: Edelberto Franco Silva Instituto de Computação - Universidade Federal Fluminense (UFF) Maio, 2012
Agenda 1 Introdução HostTracker Trabalhos Relacionados 2 Formulação do Problema Host-Tracking Graph Host Representation Goals and Challenges HostTracker detalhado Agrupamento de ID Construção do Host-Tracking Graph Resolvendo inconsistências Fechando o loop 3 Validação e Resultados Ambiente Validação Verificação do resultado de rastreamento Estimativa de Botnets Onde estão? Conclusões Silva, E. F. 2
Introdução Proposta de identificação responsáveis por ações maliciosas. Internet, aberta e anônima. Identidade oculta por trás do IP. A dificuldade de identificação do atacante por conta de: IP dinâmico NAT Proxy Silva, E. F. 3
Propostas clean-slate são difíceis de se empregar (Accountable Internet Protocol AIP) Propõe uma abordagem prática e imediata. Proposta infere relação entre IP e host. Proposta de identificação posterior do atacante e auxílio na criação dinâmica de tracklists. Silva, E. F. 4
HostTracker Proposta no nível de Aplicação para inferir relação IP/host. Visa identificar ID em logs da aplicação para criar a identificação do host. Dificuldades: IP dinâmico, proxies, NAT e atividades maliciosas. Testes utilizando log de um grande provedor de e-mail. Rastreamento de 92% dos 76% de hosts identificados no log. Alta taxa de identificação dos hosts controlados por botnets. Criação em tempo real de listas negras com baixo falso positivo. A importância do anonimato (países represivos). Onion routing (Tor). Silva, E. F. 5
Trabalhos Relacionados São trabalhos que visam a identificação da fonte de ataque. Packet-timing analysis e content analysis Filtro de ingresso e egresso (roteador de borda). Propostas que necessitam de mudança nos roteadores: IP-traceback (marcação de pacotes ou armazena estado) Passport (criptografia para identificação do host) Dificuldade de ataque por spoofing quando se utiliza TCP. Botnets não precisam spoofar IPs Clean-slate: AIP (Accountable Internet protocol). Silva, E. F. 6
Formulação do Problema Consideremos apenas a análise posterior ao ataque para identificação de culpados. A partir de log. Host-Tracking Graph. Host Representation. Goals and Challenges. Silva, E. F. 7
Host-Tracking Graph Dado que: o IP é o único identificador atual de um host. O IP muda dinamicamente. Analisar a posteriori um log para inferir relação entre host/ip. Hosts A, B e C. Host A = IP 1 = w = [t1, t2]. Se proxy ou NAT, hosts usam mesmo IP. Silva, E. F. 8
Host Representation A identificação do usuário (ID) será no nível da aplicação. Usuário de e-mail, usuário de rede social, usuário de IM ou cookie. Cookies de um usuário com IPs diferentes, sugere estar sob DHCP. Agrupamento de usuários a partir da Identity Mapping Table. Silva, E. F. 9
Goals and Challenges Gerar o Host-Tracking Graph a partir de logs com IDs duvidosa (unreliable). Identificação a partir do Input Events (Identificador único da ID duvidosa, IP, Momento) A partir do Input Events gera-se a Identity Mapping Table e depois o Host-Tracking Graph Tracked events e untracked events. Desafios: Múltiplos hosts com mesmo usuário, compartilhando a ID. Grande parcela dos IPs da Internet são dinâmicos (duração variada). Proxy e NAT. Host comprometido tem um perfil completamente diferente. Silva, E. F. 10
HostTracker detalhado O sistema para identificação de hosts/ip no nível de aplicação a partir de logs. Usuário de e-mail como identificador. Executado separadamente para cada range de IP (BGP table prefixes e Whois database). Ponto crucial: a montagem da Identity-mapping table. 1 IDs diferentes compartilhando host; 2 Proxy com vários hosts associados; 3 u 2 é um guest user (real ou atacante). Silva, E. F. 11
Silva, E. F. 12
Agrupamento de ID Computar a probabilidade de vários IDs pertencerem a um mesmo grupo. Usuários diferentes utilizando o mesmo IP em tempo próximo, grande chance de pertencerem ao mesmo host. Usuários independentes sob IPs iguais mas randômicos. Probabilidade para eventos randômicos e independentes. Sequência de login como uma distribuição binomial. Silva, E. F. 13
Construção do Host-Tracking Graph Para cada grupo U, verifica-se se a usuários utilizando o mesmo IP no intervalo entre t1 e t2. w = [t1, t2], onde w é a janela de U sob o IP i. Identificando inconsistências: Conflito: 2 grupos com o mesmo IP. Concorrência: 1 usuário 2 IPs. Silva, E. F. 14
Resolvendo inconsistências Inconsistências são causadas por NAT, proxy, guest login que não puderam ser mapeados ou inseridos incorretamente em grupos. Remoção de conflito: Resolvendo Proxy: expande gradualmente a janela de conflito para um IP, gerando o merge das janelas identificadas. Redução de 90% dos conflitos identificados. Remoção do Guest: usuários não rastreáveis em grupos rastreáveis. Remoção de concorrência: Splitting Grooups: o agrupamento (merge) pode ser muito agressivo. Então, para cada grupo com mais de um usuários simultâneo, estes são colocados em grupos separados. Silva, E. F. 15
Fechando o loop Reiniciado o processo e refeita a Identity-mapping table. Geralmente 4 a 6 refinamentos. Se houver uma marcação errada de usuário guest, por exemplo, todos os eventos seguintes não serão rastreáveis. Silva, E. F. 16
Ambiente Trace um grande servidor de e-mail (msn, hotmail?) em outubro de 2008 Volume de dados 330 GB (ID a ser identificado, IP, tempo). 550 milhões de IDs únicos e mais de 220 milhões de IPs únicos. Maior número de usuários caseiros com IPs dinâmicos. Informação de range com BGP-prefix table. IPs são descartados se tiveram menos de 100 eventos ou ativos por menos de 7 dias no mês. Após filtro, sobraram 30K ranges de IP. Silva, E. F. 17
Validação Realizada a partir de um trace de software update (windows?) no mesmo mês de outubro de 2008. Informações de ID do hardware, IP, host e momento de atualização. Silva, E. F. 18
Verificação do resultado de rastreamento 220 milhões de hosts rastreados. Verificação do percentual de eventos rastreáveis do log; e por duração de utilização de IP/dia para associação de host/ip. Silva, E. F. 19
Estimativa de Botnets Botnets criada com milhões de usuários em serviço gratuítos de e-mails para envio de spam. Difícil identificação: envio de um único e-mail por cada conta. IP dinâmico. Silva, E. F. 20
1: Diferença de perfil entre usuário real e malicioso. 1: Onde estão? Silva, E. F. 21
Conclusões Com as informações coletadas de usuários maliciosos (IDs) é possível criar Tracklists. Melhor do que blacklists (baseado em IP). Menor falso-positivo. Testes realizados em ambiente limitado. Log de provedor de e-mail. Utilização de técnicas como onion routing dificultam a identificação. Técnicas interessantes de identificação e agrupamento de hosts atra? de NAT e proxy. Silva, E. F. 22
De-anonymizing the Internet Using Unreliable IDs Yinglian Xie, Fang Yu, and Martín Abadi Microsoft Research Silicon Valley SIGCOMM 2009 Apresentado por: Edelberto Franco Silva Instituto de Computação - Universidade Federal Fluminense (UFF) Maio, 2012