Für die Analyse von XSS durch HttpOnly zur Erlangung von Cookie-Informationen siehe bitte Kenshins Text: Verwendung von httpOnly zur Verbesserung der Anwendungssicherheit.
Einstellungen in javaEE:
Es gibt keine spezifische Operationsmethode oder Funktionsattribut in der API, und ich weiß nicht, ob es in zukünftigen Versionen verfügbar sein wird; Folgendes ist ein Workaround:
————————————————————————————–
response.setHeader("Set-Cookie", "cookiename=value; Pfad=/; Domain=neeao.com; Max-Alter = Sekunden; HTTPOnly");
————————————————————————————–
Einstellungen in ASP.NET .net 2.0 und höher Versionen unterstützen die Konfiguration des globalen httponly in der Web.config-Datei, die wie folgt festgelegt ist: Fügen Sie einfach einen Knoten zur web.config hinzu: ------------------------------------------------------------------ <httpCookies httpOnlyCookies="true" /> ------------------------------------------------------------------ Im .net 2.0 oder neueren Cookie-Objekt gibt es einen direkten HttpOnly-Parameter zum Aufrufen, und die Nutzungsmethode ist wie folgt: C#-Code: ------------------------------------------------------------------ httpCookie myCookie = neuer HttpCookie ("myCookie"); myCookie.HttpOnly = true; Response.AppendCookie(myCookie); ------------------------------------------------------------------- vb.net Code ------------------------------------------------------------------- Dim myCookie As HttpCookie = neuer HttpCookie ("myCookie") myCookie.HttpOnly = True Response.AppendCookie(myCookie) ------------------------------------------------------------------- In asp.net 1.1 können Sie auch die globalen Cookies HttpOnly einstellen, um das Application_EndRequest Ereignis des Anwendungsknotens der globalen Datei Global.aSax hinzuzufügen: ------------------------------------------------------------------- protected void Application_EndRequest(Objektsender, EventArgs e)
{ string authCookie = FormsAuthentication.FormsCookieName; foreach (String sCookie in Response.Cookies) { if (sCookie.Equals(authCookie)) { Response.Cookies[sCookie]. Weg += "; HttpOnly"; } } } ------------------------------------------------------------------- Wenn du es im Code schreibst, musst du es so hinzufügen: -------------------------------------------- Response.Cookies[cookie]. Weg += "; HTTPOnly"; --------------------------------------------- Einstellungen in PHP Versionen von PHP5.2 und höher unterstützen bereits das Setzen von HttpOnly-Parametern und auch die Einstellung von globalem HttpOnly in php.ini ----------------------------------------------------- session.cookie_httponly = ----------------------------------------------------- Setzen Sie seinen Wert auf 1 oder TRUE, um das HttpOnly-Attribut des globalen Cookies zu aktivieren, und natürlich können Sie es auch im Code aktivieren: ----------------------------------------------------- <?php ini_set ("session.cookie_httponly", 1); oder session_set_cookie_params(0, NULL, NULL, NULL, WAHR); ?> ----------------------------------------------------- Die Cookie-Operation-Funktion setcookie-Funktion und die setrawcookie-Funktion fügen ebenfalls den siebten Parameter als Option für HttpOnly hinzu, und die Öffnungsmethode lautet: ------------------------------------------------------- setcookie("abc", "test", NULL, NULL, NULL, NULL, TRUE); setrawcookie ("abc", "test", NULL, NULL, NULL, NULL, TRUE); ------------------------------------------------------- Für PHP-Versionen vor den Versionen 5.1 und PHP4 müssen Sie die Header-Funktion verwenden, um Änderungen vorzunehmen: ------------------------------------------------------------- <?php header("Set-Cookie: hidden=value; httpOnly"); ?> -------------------------------------------------------------
ASP In den eingebauten Objekten von asp werden keine relevanten Methoden bereitgestellt, daher kannst du es nur als Workaround implementieren: -----------------------------------------------------<% ‘************************************************** 'ASP gibt httponly-Cookie-Unterstützung für IE6.0 oder höher aus 'WDFrog ‘2009-04-15 '<meta http-equiv="Content-Type" content="text/html; charset=gb2312"> ‘**************************************************
'———-SetHttpOnlyCookie—————————————- 'Funktion: HttpOnly-Cookies festlegen 'Parameter: ExpDate ist das Ablauf der Garantie, 0 bedeutet nicht gesetzt, und auf eine bestimmte Zeit in der Vergangenheit zu setzen bedeutet Clearing 'Argument: Domäne ist leer (String. Leer) bedeutet nicht gesetzt ‘——————————————————————- Funktion SetHttpOnlyCookie(cookieName,cookieValue,domain,path,expDate) Dim Cookie cookie=cookieName & "=" & Server.URLEncode(cookieValue) & "; Pfad=" & Pfad Wenn ExpDate <> 0 gilt, dann cookie=cookie & "; expires=" & DateToGMT(expDate) Ende Wenn
Wenn Domäne <> "" Dann cookie=cookie & "; Domäne=" & Domäne Ende Wenn
cookie=cookie & "; HttpOnly"
Call Response.AddHeader ("Set-Cookie", Cookie) Endfunktion
'————-getGMTTime———— 'Parameter: sDate ist die Zeit, die in GMT umgewandelt werden muss ‘——————————— Funktion DateToGMT(sDate) Dim dWeek, dMonth Dimm strNull, strZone strZero="00" strZone="+0800" dWeek=Array("Sonne", "Mon", "Tu", "Wes", "Donner", "Freitag", "Samstag") dMonth=Array("Jan","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez") 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 Endfunktion ' Referenz 'Call SetHttpOnlyCookie("cookieOnly1","onlyValue",".xxx.com","/",0)
%>
---------------------------------------------------- Quellen: 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 |