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 |