O que é HttpOnly?

O chamado HttpOnly é um atributo utilizado por programadores no momento de definir um cookie de sessão. Os cookies de sessão geralmente são essenciais para que o usuário possa aceder a uma página da internet e é configurado pelo próprio servidor no qual o website está alojado. No momento em que acedemos a um endereço web, há uma comunicação do browser com o servidor que mantém o site que está ligado a esse endereço – o servidor envia então um cabeçalho com uma série de informações, entre elas uma identificação da sessão, que é guardada em um cookie.

Esses cookies geralmente expiram assim que o usuário encerra sua sessão, deixando o website. Entretanto, é possível que ocorram ataques XSS, os ataques de “sequestro de sessão” ou Cross-Site Scripting. Nesses ataques, o hacker utiliza-se dos cookies de sessão, rodando um código Javascript que interage com esse cookie. É possível, por exemplo, que hackers emulem uma tela de login dessa forma, gravando os dados ali digitados e enviando-os a outro destino.

O atributo HttpOnly lida com a permissividade, desta forma, caso esteja habilitado em determinado cookie, este não poderá ser manipulado por códigos client-side como JavaScript, VBscript, etc. Atribuir o parâmetro HttpOnly a um determinado cookie visa dificultar ataques de Cross-Site Scripting.