Este artigo é um artigo espelhado de tradução automática, por favor clique aqui para ir para o artigo original.

Vista: 15572|Resposta: 0

[ASP.NET] Explicação detalhada das configurações HttpOnly em linguagens comuns de desenvolvimento web

[Copiar link]
Publicado em 03/06/2015 21:02:38 | | |

Para a análise do HttpOnly sobre o XSS para obter informações de cookies, consulte o texto de Kenshin: Uso do HttpOnly para melhorar a segurança de aplicações.

Configurações em javaEE:

Não há um método operacional específico ou atributo de função fornecido na API, e não sei se isso será fornecido em versões futuras; a seguir é uma solução alternativa:

————————————————————————————–

response.setHeader("Set-Cookie", "cookiename=value;
Caminho=/; Domain=neeao.com; Idade máxima=segundos; HTTPOnly");

————————————————————————————–

Configurações em ASP.NET
  As versões .NET 2.0 e superiores suportam a configuração do httponly global no arquivo Web.config, que é definido da seguinte forma, basta adicionar um nó ao web.config:
  ------------------------------------------------------------------
   <httpCookies httpOnlyCookies="true" />
  ------------------------------------------------------------------
  No objeto de cookies .net 2.0 ou posterior, há um parâmetro HttpOnly direto para chamada, e o método de uso é o seguinte:
  Código C#:
  ------------------------------------------------------------------
  HttpCookie meuCookie = novo HttpCookie("myCookie");
  myCookie.HttpOnly = true;
  Resposta.AppendeCookie(meuCookie);
  -------------------------------------------------------------------
  Código vb.net
  -------------------------------------------------------------------
  Dim myCookie Como HttpCookie = novo HttpCookie("myCookie")
  myCookie.HttpOnly = True
  Resposta.AppendeCookie(meuCookie)
  -------------------------------------------------------------------
  No asp.net 1.1, você também pode configurar os cookies globais HttpOnly para adicionar o evento Application_EndRequest do nó de aplicação do arquivo global Global.asax:
  -------------------------------------------------------------------
  Empty protegido Application_EndRequest(Object sender, EventArgs e)

  {
       string authCookie = FormsAuthentication.FormsCookieName;
       foreach (string sCookie em Response.Cookies)
       {
          if (sCookie.Equals(authCookie))
          {
               Resposta.Cookies[sCookie]. Caminho += "; HttpOnly";
           }
      }
  }
  -------------------------------------------------------------------
  Se você escreve no código, precisa adicionar assim:
  --------------------------------------------
  Response.Cookies[cookie]. Caminho += "; HTTPOnly";
  ---------------------------------------------
configurações em PHP
  Versões do PHP5.2 e superiores já suportam a configuração dos parâmetros HttpOnly e também suportam a configuração global do HttpOnly em php.ini
  -----------------------------------------------------
  session.cookie_httponly =
  -----------------------------------------------------
  Defina seu valor para 1 ou TRUE para ativar o atributo HttpOnly do cookie global, e claro que você também pode ativar isso no código:
  -----------------------------------------------------
  <?php
  ini_set("session.cookie_httponly", 1);
  ou
  session_set_cookie_params(0, NULO, NULO, NULO, VERDADEIRO);
  ?>
  -----------------------------------------------------
  A função de operação de cookies setcookie e a função setrawcookie também adicionam o 7º parâmetro como opção para HttpOnly, e o método de abertura é:
  -------------------------------------------------------
  setcookie("abc", "test", NULL, NULL, NULL, NULL, TRUE);
  setrawcookie("abc", "teste", NULL, NULL, NULL, NULL, TRUE);
  -------------------------------------------------------
  Para versões PHP anteriores à 5.1 e PHP4, você precisa usar a função de cabeçalho para fazer alterações:
  -------------------------------------------------------------
  <?php
  cabeçalho("Set-Cookie: hidden=value; httpOnly");
  ?>
  -------------------------------------------------------------

ASP
Não há métodos relevantes fornecidos nos objetos embutidos do asp, então você só pode implementá-lo como uma solução alternativa:
  -----------------------------------------------------<%
‘**************************************************
'Saída ASP httponly cookie IE6.0 ou superior suporte a navegador
'WDFrog
‘2009-04-15
'<meta http-equiv="Type-Content" content="text/html; charset=gb2312">
‘**************************************************

'———-SetHttpOnlyCookie—————————————-
'Função: Definir cookies somente http
'Parâmetros: expDate é o término da garantia, 0 significa não definido, e definido para um certo tempo no passado significa liquidação
'argumento: domínio é vazio (string. Vazio) significa não definido
‘——————————————————————-
Função SetHttpOnlyCookie(cookieName,cookieValue,domain,path,expDate)
Biscoito Dim
cookie=cookieName & "=" & Server.URLEncode(cookieValue) & "; caminho=" & caminho
Se o expDate <> 0, então
cookie=cookie & "; expires=" & DateToGMT(expDate)
Fim Se

Se o domínio <> "" Então
cookie=cookie & "; domínio=" & domínio
Fim Se

cookie=cookie & "; HttpOnly"

Call Response.AddHeader ("Set-Cookie", cookie)
Função final

'————-getGMTTime————
'Parâmetros: sDate é o tempo que precisa ser convertido para GMT
‘———————————
Função DataParaGMT(sData)
Dim dWeek, dMonth
Dim strZero, strZone
strZero="00"
strZone="+0800"
dSemana=Array("Sol", "Seg", "Ter", "Noite", "Quinta", "Sexta", "Sábado")
dMonth=Array("Jan", "Fev", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Set", "Out", "Nov", "Dec")
DataToGMT = dSemana(Semana(sData)-1)&", "&Direita(strZero&Day(sData),2)&" "&dMês(Mês(data)-1)&" "&Ano(data)&" "&Direita(strZero&Hour(data),2)&":"&Direita(strZero&Minuto( sData),2)&":"&Direita(strZero&Second(sDate),2)&" "&strZone
Função final
' Referência
'Chame SetHttpOnlyCookie("cookieOnly1","onlyValue",".xxx.com","/",0)

%>

  ----------------------------------------------------
Referências:
1.http://www.owasp.org/index.php/HTTPOnly
2.http://blogs.msdn.com/dansellers/archive/2006/03/13/550947.aspx
3.http://ilia.ws/archives/121-httpOnly-cookie-flag-support-in-PHP-5.2.html
4.http://www.asp101.com/tips/index.asp?id=160
5.http://www.cnblogs.com/wdfrog/archive/2009/04/15/1436493.html




Anterior:Melhore a segurança das aplicações web com o Httponly
Próximo:Solução para erro SQL Server 2008 5120 no banco de dados anexado
Disclaimer:
Todo software, material de programação ou artigos publicados pela Code Farmer Network são apenas para fins de aprendizado e pesquisa; O conteúdo acima não deve ser usado para fins comerciais ou ilegais, caso contrário, os usuários terão todas as consequências. As informações deste site vêm da Internet, e disputas de direitos autorais não têm nada a ver com este site. Você deve deletar completamente o conteúdo acima do seu computador em até 24 horas após o download. Se você gosta do programa, por favor, apoie um software genuíno, compre o registro e obtenha serviços genuínos melhores. Se houver qualquer infração, por favor, entre em contato conosco por e-mail.

Mail To:help@itsvse.com