Question

Je cherche à implémenter httpOnly dans mes anciens sites classiques ASP.Quelqu'un sait comment le faire?

Était-ce utile?

La solution

Response.AddHeader "Set-Cookie", "mycookie=yo; HttpOnly"

D'autres options comme expires, path et secure peuvent également être ajoutés de cette manière.Je ne connais aucun moyen magique de modifier toute votre collection de cookies, mais je peux me tromper.

Autres conseils

Si vous exécutez vos pages Web ASP classique sur IIS 7/7.5, vous pouvez utiliser le module IIS URL Rewrite pour écrire une règle permettant de rendre vos cookies HTTPOnly.

Collez ce qui suit dans la section de votre web.config :

<rewrite>
    <outboundRules>
        <rule name="Add HttpOnly" preCondition="No HttpOnly">
            <match serverVariable="RESPONSE_Set_Cookie" pattern=".*" negate="false" />
            <action type="Rewrite" value="{R:0}; HttpOnly" />
            <conditions>
            </conditions>
        </rule>
        <preConditions>
            <preCondition name="No HttpOnly">
                <add input="{RESPONSE_Set_Cookie}" pattern="." />
                <add input="{RESPONSE_Set_Cookie}" pattern="; HttpOnly" negate="true" />
            </preCondition>
        </preConditions>
    </outboundRules>
</rewrite>

Voir ici pour les détails : http://forums.iis.net/t/1168473.aspx/1/10

Pour information, les cookies HTTPOnly sont requis pour des raisons de conformité PCI.Les responsables des normes PCI (pour la sécurité des cartes de crédit) vous obligent à avoir au moins HTTPOnly sur vos cookies d'ID de session afin d'aider à prévenir les attaques XSS.

De plus, à l'heure actuelle (11/02/2013), tous les principaux navigateurs prennent en charge la restriction HTTPOnly sur les cookies.Cela inclut les versions actuelles d'IE, Firefox, Chrome et Safari.

Voir ici pour plus d'informations sur la façon dont cela fonctionne et la prise en charge par les différentes versions de navigateur :https://www.owasp.org/index.php/HTTPOnly

Vous devez ajouter « ;HttpOnly » à la collection de cookies de réponse.

Response.AddHeader "Set-Cookie", ""&CStr(Request.ServerVariables("HTTP_COOKIE"))&";path=/;HttpOnly"&""

HttpOnly fait très peu pour améliorer la sécurité des applications Web.D'une part, cela ne fonctionne que dans IE (Firefox le "supporte", mais divulgue toujours les cookies en Javascript dans certaines situations).D'autre part, cela empêche uniquement une attaque « drive-by » contre votre application ;cela ne fait rien pour empêcher une attaque de script intersite de réinitialiser les mots de passe, de modifier les adresses e-mail ou de passer des commandes.

Faut-il l'utiliser ?Bien sûr.Cela ne vous fera pas de mal.Mais il y a 10 choses que vous devez être sûr de faire avant de commencer à jouer avec HttpOnly.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top