OWASP Chapter BrasilPágina principal | Sobre | Ajuda | FAQ | Páginas especiais | Entrar
A enciclopédia livre
Versão para impressão | Disclaimers

A3 Falha de Autenticação e Gerenciamento de Sessão

(Redirecionado de A3 Broken Authentication and Session Management)

Conteúdo

A3.1 Descrição

O gerenciamento de autenticação e de sessão inclui todos os aspectos referentes ao manuseio da autenticação do usuário e o controle das sessões ativas. A autenticação é um aspecto crítico deste processo, mas mesmo os mecanismos mais robustos de autenticação podem ser comprometidos por falhas nas funções relacionadas ao gerenciamento das credenciais dos usuários, incluindo funções para troca de senhas, esquecimento de senha, atualização de conta e outras relacionadas. Uma vez que muitas aplicações Web podem sofrer ataques do tipo “walk by” (onde alguém deixa o computador com sua sessão autenticada aberta e outra pessoa utiliza esta estação para o acesso indevido), todas as funções de gerenciamento de conta devem exigir a reautenticação do usuário, mesmo se ele possui uma identificação válida daquela sessão.

A autenticação do usuário na Web tipicamente envolve o uso de um nome de usuário (“userid”) e de uma senha. Alguns métodos de autenticação forte são disponíveis comercialmente, tais como o uso de ”tokens” criptográficos (baseados em software e hardware) ou biometria, porém tais mecanismos possuem custo proibitivo para a maioria das aplicações Web. Uma seqüência de falhas no gerenciamento das contas de acesso e da sessão pode resultar no comprometimento da conta do usuário ou mesmo do administrador do sistema. As equipes do desenvolvimento freqüentemente subestimam a complexidade envolvida na elaboração de um mecanismo para gerenciamento de autenticação e de sessão que consiga protejer adequadamente as credenciais dos usuários em todo o site.

As aplicações Web devem estabelecer sessões para controlar a seqüência de requisições de cada usuário. Como o protocolo HTTP não possui este recurso, as aplicações Web devem tomar esta função para si. Freqüentemente, o ambiente da aplicação Web fornece recursos para estabelecer a sessão, mas muitos desenvolvedores preferem criar seu próprio controle (“token”) da sessão. Em um ou outro caso, se o token da sessão não for protegido corretamente, um atacante pode seqüestrar uma sessão ativa e assumir a identidade de um usuário. Ter um mecanismo para criar tokens de sessão de forma robusta e protegê-los durante todo seu ciclo de vida provou ser algo complicado para muitos desenvolvedores.

A menos que todas as credenciais de autenticação e os identificadores de sessão estejam sempre protegidos com o uso de SSL e protegidos contra a descoberta de outras falhas, tais como “cross site script”, um atacante pode seqüestrar a sessão de um usuário e assumir sua identidade.

A3.2 Ambientes Afetados

Todos os servidores Web, servidores de aplicação e os ambientes de aplicação Web são suscetíveis à falhas relacionadas ao gerenciamento de autenticação e de sessão.

A3.3 Exemplos e Referências

A3.4 Como Descobrir se Você Está Vulnerável

A revisão do código e testes de invasão (“penetration tests”) podem ser usados para diagnosticar problemas no gerenciamento de autenticação e de sessão. Revise com cuidado cada aspecto de seus métodos de autenticação para assegurar-se que as credenciais do usuário estejam protegidas o tempo todo, quando estão armazenadas (por exemplo, no disco) e quando estiverem em trânsito (por exemplo, durante o início de uma sessão). Revise cada meio disponível para troca de credenciais de um usuário para garantir que somente possam ser trocadas por um usuário autorizado. Revise os métodos de gerenciamento da sessão para garantir que os identificadores da sessão sempre estejam protegidos e sejam usados de forma que minimizem a possibilidade de exposição acidental ou intencional.

A3.5 Como se Proteger

O uso cuidadoso e apropriado de métodos conhecidos para gerenciamento de autenticação e de sessão (“de prateleira”) pode reduzir significativamente a chance de surgir um problema nesta área. Uma primeira etapa recomendável consiste em definir e documentar a política do seu site no que se refere ao gerenciamento das credenciais dos usuários de forma segura. Assegurar de que sua implementação reforce esta política consistentemente é um fator chave para ter um mecanismo seguro e robusto para gerenciamento de autenticação e de sessão. Alguns pontos críticos são apresentados a seguir:

Retirado de "http://owasp.securenet.com.br/index.php/A3_Falha_de_Autentica%C3%A7%C3%A3o_e_Gerenciamento_de_Sess%C3%A3o"

Esta página foi acessada 1 090 vezes. Está página foi modificada pela última vez em 14:44, 23 Fevereiro 2006. Content is available under GNU Free Documentation License 1.2.


Procura
Folhear
Página principal
Community portal
Eventos atuais
Mudanças Recentes
Página randômica
Ajuda
Donations
Editar
Editar esta página
Ajuda de edição
Opções de página
Discutir esta página
Post a comment
Versão para impressão
Informação de página
Histórico
Artigos Relacionado
Páginas relacionadas
Minhas opções
Entrar
Special pages
Páginas novas
Lista de Imagens
Estatísticas
Reportagem de 'bugs'
More...