Atributo HttpOnly ausente detectado no cookie de sessão

Para o relatório de avaliação de segurança do NSFOCUS "Remote Security Assessment System", aqui está um registro do processo de processamento.

Atributo HttpOnly ausente detectado no cookie de sessão

Uma descrição detalhada

A falta do atributo HttpOnly no cookie da sessão permitirá que o invasor obtenha as informações do cookie do usuário por meio de programas (scripts JS, Applets etc.), resultando no vazamento de informações do cookie do usuário e aumentando a ameaça de ataques de script entre sites pelo atacante.

HttpOnly é uma extensão feita pela Microsoft para cookies. Este valor especifica se os cookies podem ser acessados ​​por scripts do lado do cliente. O Microsoft Internet Explorer versão 6 Service Pack 1 e posterior oferece suporte ao atributo de cookie HttpOnly.

Se o atributo HttpOnly não for definido como true no cookie, o cookie poderá ser roubado. Os cookies roubados podem conter informações confidenciais que identificam os usuários do site, como IDs de sessão ASP.NET ou tíquetes de autenticação de formulários, e os invasores podem reproduzir cookies roubados para se passar por usuários ou obter informações confidenciais, realizar ataques de script entre sites e muito mais.

Se o atributo HttpOnly for definido como true no cookie e o navegador compatível receber o cookie HttpOnly, o cliente não conseguirá ler as informações do cookie por meio de programas (scripts JS, Applets etc.), o que ajudará a mitigar o tráfego cruzado. ameaças de script de site.

Solução

Adicione o atributo "HttpOnly" a todos os cookies de sessão.

Exemplo Java:

HttpServletResponse response2 = (HttpServletResponse)response;
response2.setHeader( "Set-Cookie", "name=value; HttpOnly"); 

C# exemplo:

HttpCookie myCookie = new HttpCookie("myCookie");   
myCookie.HttpOnly = true;  
Response.AppendCookie(myCookie);

Exemplo VB.NET:

Dim myCookie As HttpCookie = new HttpCookie("myCookie")  
myCookie.HttpOnly = True  
Response.AppendCookie(myCookie) 

solução PHP

A informação acima é fornecida no relatório.O projeto que realmente mantenho é PHP, então como resolver esse problema em PHP.
Modificar php.ini

session.cookie_httponly = 1

Basta reiniciar o serviço.

Verifique se ainda existe esse bug

alert(document.cookie);

insira a descrição da imagem aqui
Se o valor puder ser obtido, significa que há um bug.

Existe outra maneira, conforme mostrado na figura a seguir:
insira a descrição da imagem aqui

referência

https://stackoverflow.com/questions/51205876/https-cookie-httponly-and-secure

Acho que você gosta

Origin blog.csdn.net/lxyoucan/article/details/131724444
Recomendado
Clasificación