Αυτό το άρθρο είναι ένα άρθρο καθρέφτη της αυτόματης μετάφρασης, κάντε κλικ εδώ για να μεταβείτε στο αρχικό άρθρο.

Άποψη: 15572|Απάντηση: 0

[ASP.NET] Λεπτομερής επεξήγηση των ρυθμίσεων HttpOnly σε κοινές γλώσσες ανάπτυξης ιστού

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 3/6/2015 9:02:38 μ.μ. | | |

Για την ανάλυση του XSS από το HttpOnly για τη λήψη πληροφοριών cookie, ανατρέξτε στο γραπτό του Kenshin: Χρήση του httpOnly για τη βελτίωση της ασφάλειας των εφαρμογών.

Ρυθμίσεις στο javaEE:

Δεν παρέχεται συγκεκριμένη μέθοδος λειτουργίας ή χαρακτηριστικό συνάρτησης στο API και δεν ξέρω αν θα παρέχεται σε μελλοντικές εκδόσεις, το παρακάτω είναι μια λύση:

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

response.setHeader("Set-Cookie", "cookiename=value;
Διαδρομή=/; Domain=neeao.com; Μέγιστη ηλικία=δευτερόλεπτα; HTTPOnly");

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

Ρυθμίσεις σε ASP.NET
  Οι εκδόσεις .net 2.0 και νεότερες υποστηρίζουν τη διαμόρφωση του καθολικού httponly στο αρχείο Web.config, το οποίο έχει οριστεί ως εξής, απλώς προσθέστε έναν κόμβο στο web.config:
  ------------------------------------------------------------------
   <httpCookies httpOnlyCookies="true" />
  ------------------------------------------------------------------
  Στο αντικείμενο cookie .net 2.0 ή νεότερη έκδοση, υπάρχει μια άμεση παράμετρος HttpOnly για κλήση και η μέθοδος χρήσης είναι η εξής:
  Κωδικός C#:
  ------------------------------------------------------------------
  HttpCookie myCookie = νέο HttpCookie ("myCookie");
  myCookie.HttpOnly = αληθές;
  Response.AppendCookie(myCookie);
  -------------------------------------------------------------------
  vb.net κωδικός
  -------------------------------------------------------------------
  Dim myCookie As HttpCookie = νέο HttpCookie("myCookie")
  myCookie.HttpOnly = Αληθές
  Response.AppendCookie(myCookie)
  -------------------------------------------------------------------
  Στο asp.net 1.1 μπορείτε επίσης να ορίσετε τα καθολικά cookies HttpOnly για προσθήκη στην Application_EndRequest περίπτωση του κόμβου εφαρμογής του καθολικού αρχείου Global.asax:
  -------------------------------------------------------------------
  προστατευμένο void Application_EndRequest(Αποστολέας αντικειμένου, EventArgs e)

  {
       συμβολοσειρά authCookie = FormsAuthentication.FormsCookieName;
       foreach (συμβολοσειρά sCookie στο Response.Cookies)
       {
          αν (sCookie.Equals(authCookie))
          {
               Response.Cookies[sCookie]. Διαδρομή += "; HttpOnly";
           }
      }
  }
  -------------------------------------------------------------------
  Εάν το γράψετε στον κώδικα, πρέπει να το προσθέσετε ως εξής:
  --------------------------------------------
  Response.Cookies[cookie]. Διαδρομή += "; HTTPOnly";
  ---------------------------------------------
ρυθμίσεις στην PHP
  Οι εκδόσεις PHP5.2 και νεότερες υποστηρίζουν ήδη τη ρύθμιση παραμέτρων HttpOnly και υποστηρίζουν επίσης τη ρύθμιση καθολικού HttpOnly σε php.ini
  -----------------------------------------------------
  session.cookie_httponly =
  -----------------------------------------------------
  Ορίστε την τιμή του σε 1 ή TRUE για να ενεργοποιήσετε το χαρακτηριστικό HttpOnly του καθολικού cookie και φυσικά μπορείτε επίσης να το ενεργοποιήσετε στον κώδικα:
  -----------------------------------------------------
  <?php
  ini_set("session.cookie_httponly", 1);
  ή
  session_set_cookie_params(0, NULL, NULL, NULL, TRUE);
  ?>
  -----------------------------------------------------
  Η λειτουργία λειτουργίας cookie setcookie και η συνάρτηση setrawcookie προσθέτουν επίσης την 7η παράμετρο ως επιλογή για το HttpOnly και η μέθοδος ανοίγματος είναι:
  -------------------------------------------------------
  setcookie("abc", "δοκιμή", NULL, NULL, NULL, NULL, TRUE);
  setrawcookie("abc", "δοκιμή", NULL, NULL, NULL, NULL, TRUE);
  -------------------------------------------------------
  Για εκδόσεις PHP πριν από τις εκδόσεις 5.1 και PHP4, πρέπει να χρησιμοποιήσετε τη λειτουργία κεφαλίδας για να κάνετε αλλαγές:
  -------------------------------------------------------------
  <?php
  header("Set-Cookie: hidden=value; httpOnly");
  ?>
  -------------------------------------------------------------

ΕΠΔΥ
Δεν παρέχονται σχετικές μέθοδοι στα ενσωματωμένα αντικείμενα του asp, επομένως μπορείτε να το εφαρμόσετε μόνο ως λύση:
  -----------------------------------------------------<%
‘**************************************************
«Έξοδος ASP httponly cookie IE6.0 ή νεότερη υποστήριξη προγράμματος περιήγησης
«WDFrog
‘2009-04-15
'<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
‘**************************************************

«———-SetHttpOnlyCookie—————————————-
'Λειτουργία: Ορισμός HttpOnly Cookies
«Παράμετροι: η ημερομηνία λήξης είναι η λήξη της εγγύησης, το 0 σημαίνει ότι δεν έχει οριστεί και η ρύθμιση σε μια συγκεκριμένη χρονική στιγμή στο παρελθόν σημαίνει εκκαθάριση
'argument: ο τομέας είναι κενός (string. Κενό) σημαίνει ότι δεν έχει οριστεί
‘——————————————————————-
Συνάρτηση SetHttpOnlyCookie(cookieName,cookieValue,domain,path,expDate)
Dim μπισκότο
cookie=cookieName &; "=" &; Server.URLEncode(cookieValue) &; "; διαδρομή=" & διαδρομή
Εάν η ημερομηνία λήξης <> 0 Τότε
cookie=cookie & "; expires=" & DateToGMT(expDate)
Τέλος εάν

Εάν ο τομέας <> "" Τότε
cookie=cookie & "; τομέας=" & τομέας
Τέλος εάν

cookie=cookie & "; Μόνο Http"

Call Response.AddHeader ("Set-Cookie", cookie)
Λειτουργία τερματισμού

«————-getGMTTime————
«Παράμετροι: sDate είναι η ώρα που πρέπει να μετατραπεί σε GMT
‘———————————
Συνάρτηση DateToGMT(sDate)
Dim dWeek,dMonth
Dim strZero,strZone
strZero="00"
strZone="+0800"
dWeek=Array("Κυρ","Δευτ","Τρί","Γουές","Πέμ","Παρ","Σαβ")
dMonth=Array("Ιαν","Φεβ","Μαρ","Απρ","Μάιος","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Νοε","Δεκ")
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
Λειτουργία τερματισμού
' Παραπομπή
'Call SetHttpOnlyCookie("cookieOnly1","onlyValue",".xxx.com","/",0)

%>

  ----------------------------------------------------
Βιβλιογραφικές αναφορές:
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




Προηγούμενος:Βελτιώστε την ασφάλεια των εφαρμογών web με το Httponly
Επόμενος:Λύση για το σφάλμα SQL Server 2008 5120 στη βάση δεδομένων συνημμένων
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com