Segurança com Cookie

29/04/2015

0

Fala pessoal!
No ponto de vista de vocês, existe uma boa segurança em gravar determinado tipo de dados no cookie?
Criptografar esses dados no cookie é a melhor forma de segurança existente?
Thiago Santana

Thiago Santana

Responder

Post mais votado

29/04/2015

Em teoria toda forma de criptografia atualmente pode ser quebrada, até as que usam os famosos números primos. O que acontece é que você levaria até uns 10 mil anos para quebrar uma determinada chave, então o custo/trabalho não vale o benefício. Possivelmente com o aumento da capacidade de processamento, processamento paralelo ou computadores quânticos, vai ficar cada vez mas fácil quebrar a criptografia existente. Então existe um corrida para se criar formas de criptografias mais eficientes. É uma corrida em que um time cria as barreiras de segurança e outro tenta rompê-las.

Atualmente Cookies são um forma de abordar o problema, mas tenha em mente que não é 100% seguro e definitivo. Um dos problemas dos cookies é que eles ficam na máquina de forma que o acesso a eles é simples o que talvez facilite a vida de quem que acessá-los. Outro senão é que se o usuário desativar o Cookies não vai conseguir acessar o site.

Enfim sim seria uma forma, mas o mais indicado é utilizar de vários recursos, cookies, sessions (quando necessários) e validação em dois passos. Nada é definitivo ou garantido, mas você deve tomar todos os passos para mitigar o problema.

E é bom ressaltar que 70% dos ataques bem sucedidos usam Engenharia Social, assim como todos o roubos usam gente de dentro, então você pode criar um "jacatraca" tecnológica que se alguém usar um senha fraca ou simplesmente passar informações não há como impedir a quebra da segurança.

Jothaz

Jothaz
Responder

Mais Posts

29/04/2015

Thiago Santana

É exatamente isso que estou analisando!
Você abordou pontos muito importantes Jothaz.
Será que existem formas mais seguras para gravar cookies ao invés de utilizar apenas criptografia?
Responder

29/04/2015

Jothaz

Não sou especialista em segurança o que vou fazer é compartilhar a minha experiência e vivência, portanto qualquer informação imprecisa ou mesmo bobagem dita por favor corrijam-me.

Não sei se ainda é possível, mas lembro-me de ler algo sobre Cookie SQL Injection ou algo assim, acredito que uma pesquisa no goolge pode aclarar o tema.

Com relação a sua pergunta acho que não tem muito que fazer a não ser seguir o passos:
--Ser espartano no conteúdo do cookie, colocar somente o que interessa e ter cuidado com informações sensíveis.
--Usar o melhor método de criptografia disponível.


Algumas preucações no uso de controle de sessions:

--Nunca incluir os identificadores de sessão na URL. Desta foram evita-se uma série de ataques tais como session fixation.

--Implementar um mecanismo de cancelamento de sessões (logout).

--Implementar mecanismos de detecção de ataques de força bruta assim evita-se teste diversos valores até encontrar um identificador de sessão válido.

--Usar identificadores com alta entropia (pelo menos 32 bits). Isto é possível pelo uso de bons geradores de sequências pseudo-aleatórias.

--Sempre transmitir os identificadores em canais seguros, de preferência utilizando o protocolo SSL.

--Verificar os identificadores da sessão SSL em conjunto com os identificadores da sessão do usuário para dificultar ataques.

--Definir na aplicação um período de validade e um tempo máximo de inatividade para as sessões.

Cuidados adicionais deve ser tomados nos casos em que são utilizados cookies para o controle de sessão:

--Usar a flag secure = true: isto indica ao browser que o cookie comente deve ser transmitido por conexões SSL.

--Especificar domain: especificar corretamente o domínio (o nome do servidor, preferencialmente) para o qual o cookie deve ser usado. Indica aobrowser que o cookie somente deve ser enviado para servidores que correspondam ao domínio indicado.

--Usar flag httpOnly: impede o uso do cookie por scripts, evitando ataques de cross-site scripting.

--Usar cookies não-persistentes: sem data de expiração definida, este será considerado não-persistente. Neste caso, o browser não armazenará o cookie em disco, mantendo-o somente em memória. O conteúdo do cookie será descartado quando o browser for fechado.


Alguns dos ataques que referi podem não ser possívies hoje, mas mesmo assim acho que serve como informação.

[url:descricao=As 10 vulnerabilidades de segurança mais críticas em aplicações WEB] https://www.owasp.org/images/4/42/OWASP_TOP_10_2007_PT-BR.pdf[/url] o material é antigo mas acho que serve como referencia.

[url:descricao=Cookie que pretende aumentar a segurança permite tracking de utilizadores em modo incógnito ]http://abertoatedemadrugada.com/2015/01/cookie-que-pretende-aumentar-seguranca.html[/url]
Responder

30/04/2015

Thiago Santana

Show Jothaz!
Irei montar uma rotina que possa ter uma segurança interessante usando os cookies!
Assim pretendo postar um artigo aqui no Devmedia relacionado a isso, este é o motivo de
está fazendo alguns levantamentos.
Sua contribuição foi de grande importância! ;)
Responder

30/04/2015

Jothaz

Fico feliz em ajudar, só compartilhei a vivência que tenho.

Na verdade nos últimos anos tenho participado deprojetos voltados para intranets, vpns e principalmente integrados com ambiente Sharepoint.
Então fica mais tranquilo pois os usuários pertencem a um domínio com login válidado e ainda tem a segurança do Sharepoint e mesmo quando existe acesso via internet sempre tem a politica de segurança da empresa usada no portal corporativo. Então nunca tenho de me preocupar em criar nada só uso o que já existe. Mas nunca negligencio a parte de segurança.

Então tem um tempo que não crio site para acesso público o que nos deixa enferrujado.

Precisando é só se manifestar.
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar