For HttpOnlys analyse af XSS for at opnå cookie-information, henvises til Kenshins skrift: Using httpOnly to improve application security.
Indstillinger i javaEE:
Der findes ingen specifik operationsmetode eller funktionsattribut i API'en, og jeg ved ikke, om den vil blive tilgængelig i fremtidige versioner, følgende er en løsning:
————————————————————————————–
response.setHeader("Set-cookie", "cookiename=value; Sti=/; Domain=neeao.com; Max-Alder=sekunder; HTTPOnly");
————————————————————————————–
Indstillinger i ASP.NET .net 2.0 og nyere versioner understøtter konfiguration af den globale httponly i Web.config-filen, som er sat som følger: tilføj blot en node til web.config: ------------------------------------------------------------------ <httpCookies httpOnlyCookies="true" /> ------------------------------------------------------------------ I .net 2.0 eller nyere cookie-objektet findes der en direkte HttpOnly-parameter til kald, og brugsmetoden er som følger: C#-kode: ------------------------------------------------------------------ httpCookie myCookie = ny HttpCookie ("myCookie"); myCookie.HttpOnly = true; Response.AppendCookie(myCookie); ------------------------------------------------------------------- vb.net kode ------------------------------------------------------------------- Dim myCookie som HttpCookie = ny HttpCookie ("myCookie") myCookie.HttpOnly = True Response.AppendCookie(myCookie) ------------------------------------------------------------------- I asp.net 1.1 kan du også sætte de globale cookies HttpOnly til at tilføje Application_EndRequest-hændelsen for applikationsnoden i den globale fil Global.asax: ------------------------------------------------------------------- beskyttet void Application_EndRequest(Objektafsender, EventArgs e)
{ string authCookie = FormsAuthentication.FormsCookieName; foreach (strengen sCookie i Response.Cookies) { hvis (sCookie.Equals(authCookie)) { Response.Cookies[sCookie]. Sti += "; HttpOnly"; } } } ------------------------------------------------------------------- Hvis du skriver det i koden, skal du tilføje det sådan her: -------------------------------------------- Response.Cookies[cookie]. Sti += "; HTTPOnly"; --------------------------------------------- indstillinger i PHP PHP5.2 og nyere versioner understøtter allerede indstilling af HttpOnly-parametre og understøtter også indstilling af global HttpOnly i php.ini ----------------------------------------------------- session.cookie_httponly = ----------------------------------------------------- Sæt dens værdi til 1 eller TRUE for at aktivere HttpOnly-attributten i den globale cookie, og selvfølgelig kan du også aktivere den i koden: ----------------------------------------------------- <?php ini_set("session.cookie_httponly", 1); eller session_set_cookie_params(0, NULL, NULL, NULL, SAND); ?> ----------------------------------------------------- Cookie-operationen setcookie-funktionen og setrawcookie-funktionen tilføjer også den 7. parameter som en mulighed for HttpOnly, og åbningsmetoden er: ------------------------------------------------------- setcookie ("abc", "test", NULL, NULL, NULL, NULL, TRUE); setrawcookie ("abc", "test", NULL, NULL, NULL, NULL, TRUE); ------------------------------------------------------- For PHP-versioner før 5.1 og PHP4 versionerne skal du bruge header-funktionen til at foretage ændringer: ------------------------------------------------------------- <?php header("Set-Cookie: hidden=value; httpOnly"); ?> -------------------------------------------------------------
ASP Der er ingen relevante metoder i de indbyggede objekter i ASP, så du kan kun implementere det som en workaround: -----------------------------------------------------<% ‘************************************************** 'ASP-output httponly cookie IE6.0 eller derover browserunderstøttelse 'WDFrog ‘2009-04-15 '<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> ‘**************************************************
'———-SetHttpOnlyCookie—————————————- 'Funktion: Sæt kun http-cookies 'Parametre: udløbsdato er udløbet af garantien, 0 betyder ikke sat, og sat til et bestemt tidspunkt i fortiden betyder clearing 'argument: domænet er tomt (streng. Tom) betyder ikke sat ‘——————————————————————- Function SetHttpOnlyCookie(cookieName,cookieValue,domain,path,expDate) Dim cookie cookie=cookieName & "=" & Server.URLEncode(cookieValue) & "; sti=" & sti Hvis expDate <> 0 Så cookie=cookie & "; udløber=" & DateToGMT(expDate) Slut Hvis
Hvis domænet <> "" Så cookie=cookie & "; domæne=" & domæne Slut Hvis
cookie=cookie & "; HttpOnly"
Call Response.AddHeader ("Set-cookie", cookie) Slutfunktion
'————-getGMTTime———— 'Parametre: sDate er det tidspunkt, der skal konverteres til GMT ‘——————————— Funktion DateToGMT(sDate) Dimmer dUge, dMåned Dæmpet strZero, strZone strZero="00" strZone="+0800" dUge=Array("Sol", "Man", "Tirs", "Wes", "Tor", "Fredag", "Lør") dMonth=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 ' reference 'Kald SetHttpOnlyCookie("cookieOnly1","onlyValue",".xxx.com","/",0)
%>
---------------------------------------------------- Referencer: 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 |