Denna artikel är en spegelartikel om maskinöversättning, klicka här för att hoppa till originalartikeln.

Utsikt: 15572|Svar: 0

[ASP.NET] Detaljerad förklaring av HttpOnly-inställningar i vanliga webbutvecklingsspråk

[Kopiera länk]
Publicerad på 2015-06-03 21:02:38 | | |

För HttpOnlys analys av XSS för att erhålla cookieinformation, se Kenshins text: Using httpOnly to improve application security.

Inställningar i javaEE:

Det finns ingen specifik operationsmetod eller funktionsattribut i API:et, och jag vet inte om det kommer att finnas i framtida versioner, följande är en lösning:

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

response.setHeader("Set-cookie", "cookiename=value;
Path=/; Domain=neeao.com; Maxålder=sekunder; HTTPOnly");

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

Inställningar i ASP.NET
  .net 2.0 och senare versioner stödjer konfiguration av den globala httponly-filen i Web.config-filen, som är inställd enligt följande, lägg bara till en nod i web.config:
  ------------------------------------------------------------------
   <httpCookies httpOnlyCookies="true" />
  ------------------------------------------------------------------
  I .net 2.0 eller senare cookie-objektet finns en direkt HttpOnly-parameter för anrop, och användningsmetoden är följande:
  C#-kod:
  ------------------------------------------------------------------
  HttpCookie myCookie = ny HttpCookie ("myCookie");
  myCookie.HttpOnly = true;
  Response.AppendCookie(myCookie);
  -------------------------------------------------------------------
  vb.net kod
  -------------------------------------------------------------------
  Dim myCookie As HttpCookie = ny HttpCookie ("myCookie")
  myCookie.HttpOnly = True
  Svar.AppendCookie(myCookie)
  -------------------------------------------------------------------
  I asp.net 1.1 kan du också ställa in de globala cookies HttpOnly för att lägga till Application_EndRequest-händelsen i applikationsnoden i den globala filen Global.asax:
  -------------------------------------------------------------------
  skyddat tomrum Application_EndRequest(Objektavsändare, EventArgs e)

  {
       sträng authCookie = FormsAuthentication.FormsCookieName;
       foreach (strängen sCookie i Response.Cookies)
       {
          om (sCookie.Equals(authCookie))
          {
               Response.Cookies[sCookie]. Väg += "; HttpOnly";
           }
      }
  }
  -------------------------------------------------------------------
  Om du skriver det i koden behöver du lägga till det så här:
  --------------------------------------------
  Svar.Cookies[cookie]. Väg += "; HTTPOnly";
  ---------------------------------------------
inställningar i PHP
  Versioner från PHP5.2 och senare stöder redan inställning av HttpOnly-parametrar, och stöder även inställning av global HttpOnly i php.ini
  -----------------------------------------------------
  session.cookie_httponly =
  -----------------------------------------------------
  Sätt dess värde till 1 eller SANT för att aktivera attributet HttpOnly för den globala cookien, och självklart kan du också aktivera det i koden:
  -----------------------------------------------------
  <?php
  ini_set("session.cookie_httponly", 1);
  eller
  session_set_cookie_params(0, NULL, NULL, NULL, SANN);
  ?>
  -----------------------------------------------------
  Cookie-operationen setcookie-funktionen och setrawcookie-funktionen lägger också till den 7:e parametern som ett alternativ för HttpOnly, och öppningsmetoden är:
  -------------------------------------------------------
  setcookie ("abc", "test", NULL, NULL, NULL, NULL, TRUE);
  setrawcookie ("abc", "test", NULL, NULL, NULL, NULL, TRUE);
  -------------------------------------------------------
  För PHP-versioner före version 5.1 och PHP4 behöver du använda header-funktionen för att göra ändringar:
  -------------------------------------------------------------
  <?php
  header("Set-Cookie: hidden=value; httpOnly");
  ?>
  -------------------------------------------------------------

ASP
Det finns inga relevanta metoder i de inbyggda objekten i asp, så du kan bara implementera det som en lösning:
  -----------------------------------------------------<%
‘**************************************************
'ASP-utdata httponly-cookie IE6.0 eller högre webbläsarstöd
'WDFrog
‘2009-04-15
'<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
‘**************************************************

'———-SetHttpOnlyCookie—————————————-
'Funktion: Sätt HttpOnly-cookies
'Parametrar: expDate är utgången av garantin, 0 betyder inte satt, och att sätta till en viss tid i det förflutna betyder clearing
'argument: domänen är tom (sträng. Tom) betyder inte satt
‘——————————————————————-
Function SetHttpOnlyCookie(cookieName,cookieValue,domain,path,expDate)
Dim cookie
cookie=cookieName & "=" & Server.URLEncode(cookieValue) & "; väg=" & väg
Om expDate <> 0 Då
cookie=cookie & "; expires=" & DateToGMT(expDate)
Slut om

Om domänen <> "" Då
cookie=cookie & "; domän=" & domän
Slut om

cookie=cookie & "; HttpOnly"

Call Response.AddHeader ("Set-cookie", cookie)
Slutfunktion

'————-getGMTTime————
'Parametrar: sDate är tiden som behöver konverteras till GMT
‘———————————
Funktion DateToGMT(sDate)
Dim dVecka, dMånad
Dim strZero, strZone
strZero="00"
strZone="+0800"
dWeek=Array("Sol","Mån","Tis","Wes","Tor","Fri","Lör")
dMånad=Array("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dec")
DateToGMT = dWeek(WeekDay(sDate)-1)&", "&Right(strZero&Day(sDate),2)&" "&dMonth(Month(sDate)-1)&" "&Year(sDate)&" "&Right(strZero&Hour(sDate),2)&":"&Right(strZero&Minute( sDate),2)&":"&Right(strZero&Second(sDate),2)&" "&strZone
Slutfunktion
' referens
'Anropa SetHttpOnlyCookie("cookieOnly1","onlyValue",".xxx.com","/",0)

%>

  ----------------------------------------------------
Referenser:
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




Föregående:Förbättra webbapplikationssäkerheten med Httponly
Nästa:Lösning för SQL Server 2008 5120-fel i bilagdatabasen
Friskrivning:
All programvara, programmeringsmaterial eller artiklar som publiceras av Code Farmer Network är endast för lärande- och forskningsändamål; Ovanstående innehåll får inte användas för kommersiella eller olagliga ändamål, annars kommer användarna att bära alla konsekvenser. Informationen på denna sida kommer från internet, och upphovsrättstvister har inget med denna sida att göra. Du måste helt radera ovanstående innehåll från din dator inom 24 timmar efter nedladdning. Om du gillar programmet, vänligen stöd äkta programvara, köp registrering och få bättre äkta tjänster. Om det finns något intrång, vänligen kontakta oss via e-post.

Mail To:help@itsvse.com