O ataque previsão de sessão centra-se na previsão dos valores de ID de sessão que
permitem a um atacante contornar o esquema de autenticação de um aplicativo. Ao analisar e compreender o processo de geração de ID da sessão, um atacante pode prever um valor de ID de sessão válido que tenha acesso ao aplicativo. Na primeira etapa, o atacante precisa coletar alguns valores de ID de sessão válidos que são usadospara identificar os usuários autenticados. Então, ele deve entender a estrutura de ID da sessão, a informação que é usada para criá-lo, e a criptografia ou algoritmo de hash usada pelo aplicativo para protegê-lo. Algumas implementações ruins usam IDs de sessões compostas por nome de usuário ou outras informações previsíveis, como data e hora ou o endereço IP do cliente. No pior dos casos, esta informação é utilizada em texto claro ou codificados usando um algoritmo fraco como codificação base64. Além disso, o atacante pode implementar uma técnica de força bruta para gerar e testar diferentes valores de ID da sessão até que ele obtiver com sucesso o acesso ao aplicativo.
Exemplos
As informações de ID da sessão para uma determinada aplicação é normalmente
composta por uma sequência de largura fixa. A aleatoriedade é muito importante para evitar a sua previsão. Olhando para o exemplo da Figura 1, a variável de ID da sessão é representada por JSESSIONID e o seu valor é "Usuário01", que corresponde ao nome do usuário. Ao tentar novos valores para ele, como "Usuário02", que poderia ser possível obter dentro do aplicativo sem autenticação prévia. Previsão de um Cookie autenticado: https://www.owasp.org/images/b/b8/Predictable_cookie.JPG