Kerberos


Kerberos é um protocolo desenvolvido para fornecer poderosa autenticação em aplicações usuário/servidor, onde ele funciona como a terceira parte neste processo, oferendo autenticação ao usuário.

Para garantir a segurança, ele usa criptografia de chave simétrica, com o DES.

O Kerberos foi desenvolvido como parte do Project Athena, do Massachussets Institute of Technology (MIT). Seu nome vem da mitologia, onde Cerberus (Kerberus para os gregos) é um cão com três cabeças que tem por missão proteger a entrada do inferno de Hades.

O que faz o Kerberos:

Para explicar o que faz o Kerberos, vamos usar algumas analogias baseadas The Moron’s Guide to Kerberos, Version 1.2.2.

Na vida real, usamos rotineiramente uma autenticação, na forma de (por exemplo) uma carteira de motorista. A carteira de motorista é fornecida por uma agência, na qual podemos supor confiável, e contém dados pessoais da pessoa como nome, endereço e data de nascimento. Além disto pode conter algumas restrições, como necessidade de óculos para dirigir, e mesmo algumas restrições implícitas (a data de nascimento pode ser usada para comprovar maioridade). Finalmente, a identificação tem um prazo de validade, a partir do qual é considerada inválida.

Para ser aceita como autenticação, algumas regras devem ser observadas: ao apresentar a carteira, não se pode ocultar parte dela (como foto ou data de nascimento). Além disto, quem verifica a autenticação deve reconhecer a agência que forneceu a autenticação como válida (uma carteira de motorista emitida no Brasil pode não ser aceita fora do território nacional).

Kerberos trabalha basicamente da mesma maneira. Ele é tipicamente usado quando um usuário em uma rede tenta fazer uso de um determinado serviço da rede e o serviço quer se assegurar de que o usuário é realmente quem ele diz que é. Para isto, o usuário apresenta um ticket, fornecido pelo Kerberos authenticator server (AS), assim como a carteira de motorista é fornecida pelo DETRAN. O serviço então examina o ticket para verificar a identidade do usuário. Se tudo estiver ok o usuário é aceito.

O ticket deve conter informações que garantam a identidade do usuário. Como usuário e serviço não ficam face a face uma foto não se aplica. O ticket deve demonstrar que o portador sabe alguma coisa que somente o verdadeiro usuário saberia, como uma senha. Além disto, devem existir mecanismo de segurança contra um atacante que “pegue” um ticket e use mais tarde.

Explicando como funciona:

Vejamos como o Kerberos trabalha. Usuários e serviços que utilizem o Kerberos possuem chaves armazenadas no AS. As chaves dos usuários são derivadas de senhas escolhidas por estes, e as chaves dos serviços são geradas aleatoriamente.

Continuar a ler

Técnicas de ataques hacker


Abaixo Técnicas mais comuns de invasões :

Ataques de canal de comando
Esta técnica ataca diretamente um serviço específico, através do envio de comandos da mesma forma que o servidor geralmente recebe. Muito usados em forma de Worm causando negação de serviço.

Ataques direcionados à dados
É o que envolve as informações transmitidas pela rede, ou vírus transmitidos por correio eletrônico, geralmente para roubo de informações que trafegam pela rede, com senhas de internet e números de cartão de crédito

Ataques de terceiros
 Caso se permita conexão entrante em qualquer porta acima da 1024, na tentativa de dar suporte a algum protocolo, bastaria utilizar um firewall configurado para não permitir conexões em portas não usadas acima de 1024.

Falsa autenticação
 Um dos maiores riscos  à redes de computadores, por exemplo, criptografar uma senha e enviá-la pela rede por si só não funciona, pois um hacker pode estar coletando informações que trafegam pela rede com um sniffer (programa que permite capturar dados que trafegam pela rede) e depois usa a senha de forma criptografada mesmo para acessar o sistema.

 Packet sniffing
O sniffing é um software que captura as informações que trafegam pela rede,  dados importantes devem ser criptografados antes de serem transmitidos de forma que somente o computador de destino possa descriptografá-los. Porém, mesmo um arquivo autenticação criptografado pode ser usado para ataques, mesmo sendo impossível descriptografa-lo: Imagine capurar um pacote usado em hashes (utilização de usuário e senha) se um invasor obter um pacote destes, mesmo sem descriptografar, ele pode apresentar ao servidor de autenticação como sendo dele, o arquivo pode ser usado como credencial. Uma boa estratégia é utilizar servidor Kerberos (A versão 5 do kerberos que é uma versão simplificada, já é nativo  no Windows 2003 server quando configurado para controlador de domínio), este método de autenticação tem tempo limite de concessão de tickets que serão usadas na autenticação, deve ser usadas em até 5 minutos, mas este tempo pode ser configurado de acordo com as necessidades da empresa no secpol.msc do servidor. 

Injeção de dados
Um invasor que tenha acesso ao roteador que faz a conexão cliente-servidor, pode alterar os arquivos capturados ao invés de somente le-los, causando problemas na integridade do arquivo.

Syn Flod
É um dos ataques mais comuns de negação de serviço, visa impedir o funcionamento de um host ou de um serviço específico. Tudo se baseia na forma com que funciona as conexões a um servidor como no exemplo:
 O computador cliente envia um pacote para o servidor com um flg-syn, que indica que deseja fazer uma conexão, o servidor responde um pacote contendo os flags SYN e ACK, indicando que aceitou a solicitação e aguarda o cliente se identifique para que o requerimento seja atendido, o ataque consiste em se enviar várias solicitações com endereço de origem forjado, com isso os usuários autênticos ficam impedidos de fazer uso dos serviços. Causando indisponibilidade.

Ping of death
Consiste em enviar vários pacotes ICMP Echo-request (usados em testes de conexões) com um tamanho muito grande 65500 Bytes, que são muito maiores que o padrão de 32 bytes ocasionando um congestionamento e problemas no servidor, pode ser facilmente evitado com a utilização de um firewall que não permita ping´s superiores à 32 bytes ou simplesmente negue estes pedidos.

IP spoofing
É o nome dado a falsificação de endereços IP,  esta técnica permite ao invasor assumir a identidade de qualquer outro computador da rede,  através desta técnica, o atacante pode tirar proveito de  hosts confiáveis, aí é só acessar os dados. Em um servidor linux este tipo de ataque pode ser evitado facilmente com um firewall, porem a maioria das distribuições já vem com anti-spoofing ativado por padrão.

Ataques com uso de BOTS
Bots são malwares usados para ataques, um computador infectado com um BOT não tem sintoma algum (travamentos, lentidão etc..) O bot fica inativo no sistema até uma data e hora específica (coordenado a distância pelo criador do bot). Geralmente, hackers usam estes bots, espalhando-os pela internet até infectar milhões de computadores, após este periodo e muitos sistemas infectados, o hacker dá início a ação dos bots atacando um servidor por exemplo, com milhõs de “computadores zumbís” como seus aliados, e os donos dos computadores nem se dão conta disso.
Este ataque é capaz de “tirar do ar” grandes servidores de empresas globais.

Kerberos:
Da mitologia, existe o Cerberus, que é um cachorro de trez cabeças que guarda as portas do inferno, baseado nisso, o sistema de autenticação Kerberos é um sistema de autenticação baseado em 3 servidores, (concessão de tickets, autenticação e Serviços)

fonte : Professor André Silvertone

Leia também:  Ataque com SSLStrip

Pense como um hacker

Controle de Acesso – parte III


Gerência de identidades

O uso cada vez mais disseminado de sistemas dentro das organizações com o propósito de automatizar as suas rotinas, bem como o próprio crescimento destas organizações, criou a necessidade de soluções em grandes escala para automatizar à utilização das tecnologias de identificação e autenticação. Além disso, a internet provocou mudanças profundas na estrutura organizacional, incrementando a quantidade de usuários a serem gerenciados, como clientes, fornecedores, prestadores de serviços etc .

Para viabilizar tais necessidades, foram desenvolvidas as tecnologias de gerencia de identidades. Apesar das diferenças que podem ser encontradas em produtos de diferentes fabricantes, todas as tecnologias, em maior ou menor grau, se baseiam em alguns componentes básicos :

  • Serviços de diretório;
  • SSO (Single Sign-on);
  • MAS (Account Management Systems);

3.1 – Serviços de diretório

São repositórios de informações sobre diversos ativos,  armazenadas de maneira centralizada com o propósito de permitir seu compartilhamento. Pode –se armazenar dentro de um diretório contas de usuários, permitindo alterações no formato dente armazenamento que suportem as aplicações atuais e futuras. Um servidor de correio eletrônico precisaria de endereços de email armazenado dentro da conta de cada usuário. Dessa forma, a estrutura das tabelas que armazenam os dados no diretório, chamada de schema , pode ser alterada para criar um novo campo, permitindo então o armazenamento dessas informações.

Os diretórios são compostos por dois componentes principais:

  • Estrutura de armazenamento: A maioria utiliza o padrão X-500;
  • Protocolo de Acesso:  O padrão  é o LDAP (Lightweight Directory Acess Protocol), que é uma versão simplificada do DAP (Directory Acess Protocol), existente na especificação do padrão X.500

É possível utilizar o protocolo SSL (Secure Sockets Layer)  para encapsular a comunicação LDAP de maneira segura, garantindo a confidencialidade, integridade e autenticação da comunicação

3.2 – SSO (Single Sign-On)

O Single Sign On (SSO) é definido como um único ponto de entrada, ou seja, um usuário apenas necessita se autenticar uma única vez, para  permitir o acesso automaticamente às diversas aplicações externas, sem a necessidade de recordar seu login e senha em cada sistema.

Os produtos de SSO contêm um sistema de sincronização da sua senha com a do cliente ou então um sistema de integração com os sistemas de rede. Como diferentes aplicações e recursos suportam mecanismos de autenticação diferentes, o único sign-on tem que internamente traduzir a e armazenar as credenciais diferentes comparadas ao que é usado para a autenticação inicial. (Wikipédia)

Os principais tipos são :

  • Enterprise SSO (conhecido com o Legaxy): autenticam o usuário, normalmente em um serviço de diretório, e interceptam pedidos de autenticação de outras aplicações , repassando credenciasi que ficam armazenadas neste mesmo diretório.
  • Wam (Web Acess Management ) ou Web-SSO – Permite que o usuário acesse diversos aplicativos Web com apenas uma autenticação. As tecnologias mais empregadas  costuma utilizar cookies de sessão.
  • Federation : Permite a uma aplicação validar a identidade de um usuário para outra. Exemplos dessas novos tecnologia são SAML (Security Assertion Markup Language)  e o WSS (Web Services Security). Tecnologia destinada a fazer Web-SSO;
  • Kerberos  : é o nome de um Protocolo de rede, que permite comunicações individuais seguras e identificadas, em uma rede insegura. O protocolo Kerberos previne Eavesdropping e Replay attack, e ainda garante a integridade dos dados, é possível a autenticação mutua entre o cliente e o servidor, permitindo assim que ambos se autentiquem.Kerberos utiliza Criptografia simétrica e necessita de um sistema de confiança tripla.

3.3 – AMS (Account Management Systems)

Onde o responsável direto autorize o processo, bem como as pessoas responsáveis pelos recursos que este usuários acessará. Dentro dos sistemas de gerencia de identidades, esses e outros aspectos podem ser automatizados através de sistemas AMS

Continua  ….

Aldo Silva