Este artículo es un artículo espejo de traducción automática, por favor haga clic aquí para saltar al artículo original.

Vista: 15572|Respuesta: 0

[ASP.NET] Explicación detallada de la configuración HttpOnly en los lenguajes comunes de desarrollo web

[Copiar enlace]
Publicado en 3/6/2015 21:02:38 | | |

Para el análisis de HttpOnly sobre XSS para obtener información de cookies, consulte el escrito de Kenshin: Uso de httpOnly para mejorar la seguridad de aplicaciones.

Ajustes en javaEE:

No hay un método de operación o atributo de función específico en la API, y no sé si se proporcionará en futuras versiones; lo siguiente es una solución alternativa:

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

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

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

Ajustes en ASP.NET
  .NET 2.0 y versiones superiores soportan configurar el httponly global en el archivo Web.config, que se configura de la siguiente manera, solo hay que añadir un nodo al web.config:
  ------------------------------------------------------------------
   <httpCookies httpOnlyCookies="true" />
  ------------------------------------------------------------------
  En el objeto de cookies .net 2.0 o posterior, existe un parámetro HttpOnly directo para llamar, y el método de uso es el siguiente:
  Código C#:
  ------------------------------------------------------------------
  HttpCookie miCookie = nueva HttpCookie("miCookie");
  myCookie.HttpOnly = true;
  Respuesta.AppendCookie(miCookie);
  -------------------------------------------------------------------
  vb.net código
  -------------------------------------------------------------------
  Dim myCookie Como HttpCookie = nueva HttpCookie("miCookie")
  myCookie.HttpOnly = True
  Respuesta.AppendCookie(miCookie)
  -------------------------------------------------------------------
  En asp.net 1.1 también puedes configurar las cookies globales HttpOnly para añadir el evento Application_EndRequest del nodo de aplicación del archivo global Global.asax:
  -------------------------------------------------------------------
  Vacío protegido Application_EndRequest(Object sender, EventArgs e)

  {
       cadena authCookie = FormsAuthentication.FormsCookieName;
       foreach (cadena sCookie en Response.Cookies)
       {
          si (sCookie.Iguales(authCookie))
          {
               Response.Cookies[sCookie]. Camino += "; Solo Http";
           }
      }
  }
  -------------------------------------------------------------------
  Si lo escribes en el código, tienes que añadirlo así:
  --------------------------------------------
  Response.Cookies[cookie]. Camino += "; HTTPOnly";
  ---------------------------------------------
Ajustes en PHP
  Las versiones de PHP5.2 y superiores ya soportan la configuración de parámetros HttpOnly y también la configuración global de HttpOnly en php.ini
  -----------------------------------------------------
  session.cookie_httponly =
  -----------------------------------------------------
  Establece su valor en 1 o TRUE para habilitar el atributo HttpOnly de la cookie global, y por supuesto también puedes activarlo en el código:
  -----------------------------------------------------
  <?php
  ini_set("session.cookie_httponly", 1);
  o
  session_set_cookie_params(0, NULO, NULO, NULO, VERDADERO);
  ?>
  -----------------------------------------------------
  La función de operación cookie setcookie y setrawcookie también añade el séptimo parámetro como opción para HttpOnly, y el método de apertura es:
  -------------------------------------------------------
  setcookie("abc", "test", NULL, NULL, NULL, NULL, TRUE);
  setrawcookie("abc", "prueba", NULO, NULO, NULO, NULO, VERDADERO);
  -------------------------------------------------------
  Para las versiones de PHP anteriores a la 5.1 y PHP4, necesitas usar la función de encabezado para hacer cambios:
  -------------------------------------------------------------
  <?php
  encabezado("Set-Cookie: hidden=value; httpOnly");
  ?>
  -------------------------------------------------------------

ASP
No hay métodos relevantes proporcionados en los objetos integrados de asp, así que solo puedes implementarlo como una solución alternativa:
  -----------------------------------------------------<%
‘**************************************************
'Salida ASP: httponly cookie IE6.0 o superior soporte de navegador
'WDFrog
‘2009-04-15
'<meta http-equiv="Type-Content" content="text/html; charset=gb2312">
‘**************************************************

'———-SetHttpOnlyCookie—————————————-
'Función: Establecer cookies solo http
'Parámetros: expDate es la expiración de la garantía, 0 significa no ajustado, y fijado a un tiempo determinado en el pasado significa liquidación
'argumento: el dominio está vacío (cadena. Vacy) significa no fijado
‘——————————————————————-
Función SetHttpOnlyCookie(NombreCookie, ValorCookie, dominio,camino,FechaExpFecha)
Galleta Dim
cookie=cookieName & "=" & Server.URLEncode(cookieValue) & "; camino=" & camino
Si expDate <> 0, entonces
galleta=galleta & "; expires=" & DateToGMT(expDate)
Fin Si

Si el dominio <> "" Entonces
galleta=galleta & "; dominio=" & dominio
Fin Si

galleta=galleta & "; Solo Http"

Call Response.AddHeader ("Set-Cookie", cookie)
Función final

'————-getGMTTime————
'Parámetros: sDate es el tiempo que debe convertirse a GMT
‘———————————
Función FechaAGMT(sFecha)
Dim dWeek, dMonth
Dim strZero, strZone
strZero="00"
strZone="+0800"
dSemana=Arreglo("Sun", "Mon", "Tue", "Wes", "Jue", "Vie", "Sáb")
dMes=Array("Enero", "Feb", "Mar", "Abril", "Mayo", "Jul", "Agosto", "Sep", "Octubre", "Nov", "Diciembre")
FechaDeGMT = dSemana(SemanaDía(sFecha)-1)&", "&Derecha(strZero&Día(sFecha),2)&" "&dMes(Mes(sFecha)-1)&" "&Año(sFecha)&" "&Derecha(strZero&Hora(sFecha),2)&":"&Derecha(strZero&Minuto( sFecha),2)&":"&Derecha(strZero&Second(sFecha),2)&" "&strZone
Función final
' Referencia
'Llama a SetHttpOnlyCookie("cookieOnly1","onlyValue",".xxx.com","/",0)

%>

  ----------------------------------------------------
Referencias:
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:Mejora la seguridad de las aplicaciones web con Httponly
Próximo:Solución para el error SQL Server 2008 5120 en la base de datos adjunta
Renuncia:
Todo el software, materiales de programación o artículos publicados por Code Farmer Network son únicamente para fines de aprendizaje e investigación; El contenido anterior no se utilizará con fines comerciales o ilegales; de lo contrario, los usuarios asumirán todas las consecuencias. La información de este sitio proviene de Internet, y las disputas de derechos de autor no tienen nada que ver con este sitio. Debes eliminar completamente el contenido anterior de tu ordenador en un plazo de 24 horas desde la descarga. Si te gusta el programa, por favor apoya el software genuino, compra el registro y obtén mejores servicios genuinos. Si hay alguna infracción, por favor contáctanos por correo electrónico.

Mail To:help@itsvse.com