Acest articol este un articol oglindă al traducerii automate, vă rugăm să faceți clic aici pentru a sări la articolul original.

Vedere: 15572|Răspunde: 0

[ASP.NET] Explicație detaliată a setărilor HttpOnly în limbajele comune de dezvoltare web

[Copiază linkul]
Postat pe 03.06.2015 21:02:38 | | |

Pentru analiza HttpOnly a XSS pentru a obține informații despre cookie-uri, vă rugăm să consultați scrierile lui Kenshin: Utilizarea httpOnly pentru îmbunătățirea securității aplicațiilor.

Setări în javaEE:

Nu există o metodă specifică de operare sau atribut de funcție în API și nu știu dacă va fi disponibilă în versiunile viitoare, următoarea este o soluție de ocolire:

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

response.setHeader("Set-Cookie", "cookiename=value;
Cale=/; Domain=neeao.com; Max-Vârstă=secunde; HTTPOnly");

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

Setări în ASP.NET
  versiunile .net 2.0 și anterioare suportă configurarea httponly globală în fișierul Web.config, care este setat astfel, pur și simplu adaugă un nod în web.config:
  ------------------------------------------------------------------
   <httpCookies httpOnlyCookies="true" />
  ------------------------------------------------------------------
  În obiectul cookie .net 2.0 sau mai târziu, există un parametru HttpOnly direct pentru apelare, iar metoda de utilizare este următoarea:
  Cod C#:
  ------------------------------------------------------------------
  HttpCookie myCookie = new HttpCookie("myCookie");
  myCookie.HttpOnly = adevărat;
  Răspuns.AnexăCookie(CookieMea);
  -------------------------------------------------------------------
  Codul vb.net
  -------------------------------------------------------------------
  Dim myCookie As HttpCookie = new HttpCookie("myCookie")
  myCookie.HttpOnly = True
  Răspuns.AnexăCookie(myCookie)
  -------------------------------------------------------------------
  În asp.net 1.1 poți seta și cookie-urile globale HttpOnly pentru a adăuga Application_EndRequest eveniment al nodului aplicație al fișierului global Global.asax:
  -------------------------------------------------------------------
  Vid protejat Application_EndRequest(Object sender, EventArgs e)

  {
       string authCookie = FormsAuthentication.FormsCookieName;
       foreach (șir sCookie în Response.Cookies)
       {
          if (sCookie.Egal(authCookie))
          {
               Răspuns.Cookie[sCookie]. Path += "; HttpOnly";
           }
      }
  }
  -------------------------------------------------------------------
  Dacă o scrii în cod, trebuie să o adaugi astfel:
  --------------------------------------------
  Response.Cookies[cookie]. Path += "; HTTPOnly";
  ---------------------------------------------
setări în PHP
  Versiunile PHP5.2 și anterioare suportă deja setarea parametrilor HttpOnly și suportă, de asemenea, setarea globală a HttpOnly în php.ini
  -----------------------------------------------------
  session.cookie_httponly =
  -----------------------------------------------------
  Setează valoarea la 1 sau TRUE pentru a activa atributul HttpOnly al cookie-ului global și, desigur, îl poți activa și în cod:
  -----------------------------------------------------
  <?php
  ini_set("session.cookie_httponly", 1);
  sau
  session_set_cookie_params(0, NUL, NUL, NUL, ADEVĂRAT);
  ?>
  -----------------------------------------------------
  Funcția de operare cookie, setcookie function și setrawcookie adaugă, de asemenea, al 7-lea parametru ca opțiune pentru HttpOnly, iar metoda de deschidere este:
  -------------------------------------------------------
  setcookie("abc", "test", NULL, NULL, NULL, NULL, TRUE);
  setrawcookie("abc", "test", NULL, NULL, NULL, NULL, TRUE);
  -------------------------------------------------------
  Pentru versiunile PHP anterioare 5.1 și PHP4, trebuie să folosești funcția de antet pentru a face modificări:
  -------------------------------------------------------------
  <?php
  header("Set-Cookie: hidden=value; httpOnly");
  ?>
  -------------------------------------------------------------

ASP
Nu există metode relevante oferite în obiectele încorporate din asp, așa că poți implementa asta doar ca soluție temporară:
  -----------------------------------------------------<%
‘**************************************************
'Ieșire ASP httponly cookie IE6.0 sau suport superior pentru browsere
'WDFrog
‘2009-04-15
'<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
‘**************************************************

'———-SetHttpOnlyCookie—————————————-
"Funcție: setează cookie-uri doar http
"Parametri: expDate este expirarea garanției, 0 înseamnă nesetată, iar setată la o anumită perioadă în trecut înseamnă eliberare
"argument: domeniul este gol (șir. Vid) înseamnă nesetat
‘——————————————————————-
Function SetHttpOnlyCookie(cookieName,cookieValue,domain,path,expDate)
Dim cookie
cookie=cookieName & "=" & Server.URLEncode(cookieValue) & "; Cale=" & Calea
Dacă expDate <> 0, atunci
cookie=cookie & "; expires=" & DateToGMT(expDate)
Sfârșit dacă

Dacă domeniul <> "" atunci
cookie=cookie & "; domeniu=" & domeniu
Sfârșit dacă

cookie=cookie & "; HttpOnly"

Call Response.AddHeader ("Set-Cookie", cookie)
Funcția finală

'————-getGMTTime————
"Parametri: sDate este timpul care trebuie convertit în GMT
‘———————————
Funcție DatePână GMT(sData)
Dim dWeek, dMonth
Dim strZero, strZone
strZero="00"
strZone="+0800"
dSăptămână=Aranjament("Sun", "Mon", "Marți", "Wes", "Joi", "Vine", "Sâmbătă")
dMonth=Array("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec")
DateToGMT = dSăptămâna(ZileSăptămânii(sData)-1)&", "&Dreapta(strZero&Ziua(sData),2)&" "&dLună(Lună(sData)-1)&" "&An(sData)&" "&Dreapta(strZero&Ora(sData),2)&":"&Dreapta(strZero&Minute( sDate),2)&":"&Right(strZero&Second(sDate),2)&" "&strZone
Funcția finală
' Referință
'Call SetHttpOnlyCookie("cookieOnly1","onlyValue",".xxx.com","/",0)

%>

  ----------------------------------------------------
Referințe:
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




Precedent:Îmbunătățiți securitatea aplicațiilor web cu Httponly
Următor:Soluție pentru eroarea SQL Server 2008 5120 în baza de date cu atașament
Disclaimer:
Tot software-ul, materialele de programare sau articolele publicate de Code Farmer Network sunt destinate exclusiv scopurilor de învățare și cercetare; Conținutul de mai sus nu va fi folosit în scopuri comerciale sau ilegale, altfel utilizatorii vor suporta toate consecințele. Informațiile de pe acest site provin de pe Internet, iar disputele privind drepturile de autor nu au legătură cu acest site. Trebuie să ștergi complet conținutul de mai sus de pe calculatorul tău în termen de 24 de ore de la descărcare. Dacă îți place programul, te rugăm să susții software-ul autentic, să cumperi înregistrarea și să primești servicii autentice mai bune. Dacă există vreo încălcare, vă rugăm să ne contactați prin e-mail.

Mail To:help@itsvse.com