Šis straipsnis yra veidrodinis mašininio vertimo straipsnis, spauskite čia norėdami pereiti prie originalaus straipsnio.

Rodinys: 15572|Atsakyti: 0

[ASP.NET] Išsamus "HttpOnly" parametrų paaiškinimas įprastomis žiniatinklio kūrimo kalbomis

[Kopijuoti nuorodą]
Paskelbta 2015-06-03 21:02:38 | | |

Norėdami gauti "HttpOnly" XSS analizę, kad gautumėte informaciją apie slapukus, skaitykite "Kenshin" raštą: "httpOnly" naudojimas programų saugumui gerinti.

Nustatymai javaEE:

API nėra konkretaus veikimo metodo ar funkcijos atributo, ir nežinau, ar jis bus pateiktas būsimose versijose, toliau pateikiamas sprendimas:

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

response.setHeader("Nustatyti-slapuką", "cookiename=reikšmė;
Kelias =/; Domain=neeao.com; Maksimalus amžius=sekundės; HTTPOnly");

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

Nustatymai ASP.NET
  .net 2.0 ir naujesnės versijos palaiko visuotinio httponly konfigūravimą Web.config faile, kuris nustatytas taip, tiesiog pridėkite mazgą prie web.config:
  ------------------------------------------------------------------
   <httpCookies httpOnlyCookies="true" />
  ------------------------------------------------------------------
  .net 2.0 ar naujesnio slapuko objekte yra tiesioginis HttpOnly parametras, skirtas skambinti, o naudojimo būdas yra toks:
  C# kodas:
  ------------------------------------------------------------------
  HttpCookie myCookie = naujas HttpCookie ("myCookie");
  myCookie.HttpOnly = teisinga;
  Response.AppendCookie(myCookie);
  -------------------------------------------------------------------
  vb.net kodas
  -------------------------------------------------------------------
  Dim myCookie As HttpCookie = naujas HttpCookie ("myCookie")
  myCookie.HttpOnly = True
  Atsakymas.AppendCookie(myCookie)
  -------------------------------------------------------------------
  1.1 asp.net taip pat galite nustatyti visuotinius slapukus HttpOnly, kad jie būtų įtraukti į visuotinio failo Global.asax programos mazgo Application_EndRequest įvykį:
  -------------------------------------------------------------------
  apsaugota void Application_EndRequest(Objekto siuntėjas, EventArgs e)

  {
       eilutė authCookie = FormsAuthentication.FormsCookieName;
       foreach (eilutė sCookie Response.Cookies)
       {
          if (sCookie.Equals(authCookie))
          {
               Response.Cookies[sCookie]. Kelias += "; Tik http";
           }
      }
  }
  -------------------------------------------------------------------
  Jei parašysite jį kode, turite jį pridėti taip:
  --------------------------------------------
  Atsakymas.Slapukai[slapukas]. Kelias += "; HTTPOnly";
  ---------------------------------------------
PHP nustatymai
  PHP5.2 ir naujesnės versijos jau palaiko HttpOnly parametrų nustatymą, taip pat palaiko visuotinio HttpOnly nustatymą php.ini
  -----------------------------------------------------
  session.cookie_httponly =
  -----------------------------------------------------
  Nustatykite jo reikšmę į 1 arba TRUE, kad įgalintumėte visuotinio slapuko atributą HttpOnly, ir, žinoma, taip pat galite jį įjungti kode:
  -----------------------------------------------------
  <?php
  ini_set("session.cookie_httponly", 1);
  arba
  session_set_cookie_params(0, NULL, NULL, NULL, TRUE);
  ?>
  -----------------------------------------------------
  Slapukų veikimo funkcija setcookie funkcija ir setrawcookie funkcija taip pat prideda 7-ąjį parametrą kaip HttpOnly parinktį, o atidarymo būdas yra:
  -------------------------------------------------------
  setcookie("abc", "testas", NULL, NULL, NULL, NULL, TRUE);
  setrawcookie("abc", "testas", NULL, NULL, NULL, NULL, TRUE);
  -------------------------------------------------------
  PHP versijose iki 5.1 ir PHP4 versijų turite naudoti antraštės funkciją, kad atliktumėte pakeitimus:
  -------------------------------------------------------------
  <?php
  header("Nustatyti-slapukas: paslėptas=reikšmė; httpOnly");
  ?>
  -------------------------------------------------------------

ASP
Įmontuotuose asp objektuose nėra atitinkamų metodų, todėl galite jį įgyvendinti tik kaip sprendimą:
  -----------------------------------------------------<%
‘**************************************************
'ASP išvesties httponly slapukas IE6.0 arba naujesnė naršyklės parama
"WDFrog
‘2009-04-15
'<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
‘**************************************************

'———-SetHttpOnlyCookie—————————————-
"Funkcija: nustatyti httpOnly slapukus
"Parametrai: expDate yra garantijos galiojimo pabaiga, 0 reiškia nenustatyta, o nustatytas tam tikras laikas praeityje reiškia kliringą
'argumentas: domenas tuščias (eilutė. Tuščias) reiškia nenustatytas
‘——————————————————————-
Function SetHttpOnlyCookie(cookieName,cookieValue,domain,path,expDate)
Blankus sausainis
cookie=cookieName & "=" & Server.URLEncode(cookieValue) & "; path=" & kelias
Jei expDate <> 0 Tada
cookie=slapukas & "; expires=" ir DateToGMT(expDate)
Baigti, jei

Jei domeno <> "" Tada
cookie=slapukas & "; domenas=" & domenas
Baigti, jei

cookie=slapukas & "; Tik http"

Call Response.AddHeader ("Set-Cookie", slapukas)
Pabaigos funkcija

"————-getGMTTime————
"Parametrai: sDate yra laikas, kurį reikia konvertuoti į GMT
‘———————————
Funkcija DateToGMT(sDate)
Dim dWeek,dMonth
Dim strZero,strZone
strZero="00"
strZone="+0800"
dWeek=Array("Sekmadienis","Pirmadienis","Antradienis","Wes","Ketvirtadienis","Penktadienis","Šeštadienis")
dMonth=Array("Sausis","Vasaris","Kovas","Balandis","Gegužė","Birželis","Liepa","Rugpjūtis","Rugsėjis","Spalis","Lapkritis","Gruodis")
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
Pabaigos funkcija
' Nuoroda
'Call SetHttpOnlyCookie("cookieOnly1","onlyValue",".xxx.com","/",0)

%>

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




Ankstesnis:Pagerinkite žiniatinklio programų saugą naudodami "Httponly"
Kitą:SQL Server 2008 5120 klaidos sprendimas priedų duomenų bazėje
Atsakomybės apribojimas:
Visa programinė įranga, programavimo medžiaga ar straipsniai, kuriuos skelbia Code Farmer Network, yra skirti tik mokymosi ir mokslinių tyrimų tikslams; Aukščiau nurodytas turinys negali būti naudojamas komerciniais ar neteisėtais tikslais, priešingu atveju vartotojai prisiima visas pasekmes. Šioje svetainėje pateikiama informacija gaunama iš interneto, o ginčai dėl autorių teisių neturi nieko bendra su šia svetaine. Turite visiškai ištrinti aukščiau pateiktą turinį iš savo kompiuterio per 24 valandas nuo atsisiuntimo. Jei jums patinka programa, palaikykite autentišką programinę įrangą, įsigykite registraciją ir gaukite geresnes autentiškas paslaugas. Jei yra kokių nors pažeidimų, susisiekite su mumis el. paštu.

Mail To:help@itsvse.com