Reino: Security Features
Segurança de software não é o mesmo que software de segurança. Aqui, estamos interessados em tópicos como autenticação, controle de acesso, confidencialidade, criptografia e gestão de privilégios.
Django Bad Practices: Cookie Stored Sessions
Abstract
As sessões baseadas em cookies não são invalidadas quando um usuário faz o logout. Se um invasor encontrar, roubar ou interceptar o cookie do usuário, ele poderia representar o usuário mesmo se esse usuário tiver feito o logout.
Explanation
O armazenamento de dados de sessão em Cookies apresenta vários problemas:
1. As sessões baseadas em cookies não são invalidadas quando um usuário faz o logout. Se um invasor encontrar, roubar ou interceptar o cookie do usuário, ele poderia representar o usuário mesmo se esse usuário tiver feito o logout.
2. Os cookies de sessão são assinados para evitar adulteração e garantir a autenticidade dos dados, mas não impedirão ataques de repetição.
3. Os dados de sessão serão armazenados utilizando as ferramentas do Django para assinatura criptográfica e configuração
4. Os dados da sessão são assinados, mas não criptografados. Isso significa que os atacantes serão capazes de ler os dados da sessão, mas não de modificá-los.
5. O processo de dimensionamento e serialização de cookies pode representar um problema de desempenho, dependendo da carga do site.
1. As sessões baseadas em cookies não são invalidadas quando um usuário faz o logout. Se um invasor encontrar, roubar ou interceptar o cookie do usuário, ele poderia representar o usuário mesmo se esse usuário tiver feito o logout.
2. Os cookies de sessão são assinados para evitar adulteração e garantir a autenticidade dos dados, mas não impedirão ataques de repetição.
3. Os dados de sessão serão armazenados utilizando as ferramentas do Django para assinatura criptográfica e configuração
SECRET_KEY
. Caso a SECRET_KEY
vazar, um invasor não poderá somente falsificar os dados da sessão, mas se o aplicativo utilizar o Pickle para serializar os dados da sessão em cookies, um invasor será capaz de criar dados maliciosos tratados com o Pickle que executarão um código arbitrário no momento da desserialização.4. Os dados da sessão são assinados, mas não criptografados. Isso significa que os atacantes serão capazes de ler os dados da sessão, mas não de modificá-los.
5. O processo de dimensionamento e serialização de cookies pode representar um problema de desempenho, dependendo da carga do site.
References
[1] Django Foundation Using cookie-based sessions
[2] Standards Mapping - DISA Control Correlation Identifier Version 2 CCI-001185
[3] Standards Mapping - General Data Protection Regulation (GDPR) Access Violation
[4] Standards Mapping - NIST Special Publication 800-53 Revision 4 AU-10 Non-Repudiation (P2), SC-23 Session Authenticity (P1)
[5] Standards Mapping - NIST Special Publication 800-53 Revision 5 AU-10 Non-Repudiation, SC-23 Session Authenticity
[6] Standards Mapping - OWASP API 2023 API5 Broken Function Level Authorization
[7] Standards Mapping - OWASP Mobile 2024 M8 Security Misconfiguration
[8] Standards Mapping - Security Technical Implementation Guide Version 4.2 APSC-DV-002240 CAT I
[9] Standards Mapping - Security Technical Implementation Guide Version 4.3 APSC-DV-002240 CAT I
[10] Standards Mapping - Security Technical Implementation Guide Version 4.4 APSC-DV-002240 CAT I
[11] Standards Mapping - Security Technical Implementation Guide Version 4.5 APSC-DV-002240 CAT I
[12] Standards Mapping - Security Technical Implementation Guide Version 4.6 APSC-DV-002240 CAT I
[13] Standards Mapping - Security Technical Implementation Guide Version 4.7 APSC-DV-002240 CAT I
[14] Standards Mapping - Security Technical Implementation Guide Version 4.8 APSC-DV-002240 CAT I
[15] Standards Mapping - Security Technical Implementation Guide Version 4.9 APSC-DV-002240 CAT I
[16] Standards Mapping - Security Technical Implementation Guide Version 4.10 APSC-DV-002240 CAT I
[17] Standards Mapping - Security Technical Implementation Guide Version 4.11 APSC-DV-002240 CAT I
[18] Standards Mapping - Security Technical Implementation Guide Version 4.1 APSC-DV-002240 CAT I
[19] Standards Mapping - Security Technical Implementation Guide Version 5.1 APSC-DV-002240 CAT I
[20] Standards Mapping - Security Technical Implementation Guide Version 5.2 APSC-DV-002240 CAT I
[21] Standards Mapping - Security Technical Implementation Guide Version 5.3 APSC-DV-000590 CAT II, APSC-DV-002240 CAT I
[22] Standards Mapping - Security Technical Implementation Guide Version 6.1 APSC-DV-000590 CAT II, APSC-DV-002240 CAT I
[23] Standards Mapping - Web Application Security Consortium Version 2.00 Application Misconfiguration (WASC-15)
desc.structural.python.django_bad_practices_cookie_stored_sessions