Comment sécuriser ces cookies

bonsoir, sur l'un de mes sites je voudrais sécuriser les cookies, comment faire ?
car on me dit que dans la plupart des cas, il n'est pas nécessaire que les applications aient accès aux cookies déjà installés sur le navigateur. C'est pourquoi il est possible de choisir si un cookie sera disponible sur un navigateur. Pour cela, utilisez le flag HttpOnly dans Set-Cookie-Response-Header:

> Set-Cookie: MonCookie=MaValeur; path=/; HttpOnly

Si vous utilisez PHP, vous pouvez intégrer le flag avec la fonction setcookie(). PHP utilise déjà des Session-Cookies, que vous pouvez paramétrer avec la fonction session_set_cookie_params().

sa ce ferait via le Htaccess ? merci de vos réponse

Bonjour,

non cela se gère dans le code du site on s'amuse pas à modifier des cookies avec un htaccess.

De plus si vous utilisez un CMS y a de forte chance qu'il y est déjà le flag.
Enfin pour "sécuriser" ce serait plutôt le flag "secure" couplé à httponly pour faire obligatoirement transiter les cookies en HTTP sécurisé (aka HTTPS).

Cordialement, janus57

bonsoir j'utilise Wordpress et woocommerce


j'utilise Wordpress

et

... on me dit que ...

Faut pas écouter ces 'on' : demande WordPress directement. Ils savent.
Google : https://codex.wordpress.org/WordPress_Cookies wordpress Cookie secure

Soit, va voir /wp-login.php, ligne 458 (si ta WP version est à jour).
L'info passe par le https - si disponible - qui assure que le transport.
Pour que le https fonctionne, il faut l'activer dans le Manager d'OVH de ton site.
Si le navigateur n'accepte pas les cookies, le problème est vite réglé : impossible de se logger avec WP - et la sécurité est au top.

Inutile d'utiliser "session_set_cookie_params()", qui ne fait que modifier les paramètres de php.ini pour la session en cours : setcookie() possède les variables pour tout préparer.

Les cookies sont stockés dans l'espace du navigateur, par exemple Firefox utilise une base des données 'sqllite'. Il n'y pas de 'mot de passe' mais une sorte d'identification de session, qui est géré coté serveur. Le cookie lui-même ne possède (souvent) pas d'info exploitable. le mot de passe peut être là, mais "hashé" deux fois donc pas facilement récupérable.

edit : ce qui est paramétrable dans WP : "post_password_expires" qui détermine le temps que le Cookie reste valable. Par défaut c'est 10 jours. Mais à toi de changer ça.
Exemple : http://stackoverflow.com/questions/33639013/logging-out-of-wordpress-password-protected-pages-with-cookie-timout

@Nowwhat bonjour


Soit, va voir /wp-login.php, ligne 458 (si ta WP version est à jour).


j'ai que 91 lignes dans le /Wp-login.php !!! j'ai la dernier version de Wordpress

root@ns311465:/var/www/1fumel.fr#fumel.fr# ll wp-login.php
-rw-r–r-- 1 www-data www-data 34K Dec 8 20:28 wp-login.php

wp-login.php est un fichier de env 34 kilo octets.
91 lignes … ?

Voici les répertoire racine d'un site 'WP' :
root@ns311465:/var/www/1fumel.fr#fumel.fr# ls -al
total 216K
drwxrwxr-x 5 www-data www-data 4.0K Jan 11 22:38 .
drwxr-xr-x 12 www-data www-data 4.0K Jul 20 21:36 ..
drwxr-xr-x 7 www-data www-data 4.0K Jan 14 08:11 wp-content
drwxr-xr-x 9 www-data www-data 4.0K Apr 18 2016 wp-admin
drwxr-xr-x 18 www-data www-data 12K Dec 8 20:28 wp-includes
-rw-r–r-- 1 www-data www-data 1.6K Dec 1 2015 .htaccess
-rw-r–r-- 1 www-data www-data 418 Jan 5 2015 index.php
-rw-r–r-- 1 www-data www-data 5.4K Dec 8 20:28 wp-activate.php
-rw-r–r-- 1 www-data www-data 2.4K Dec 8 20:28 wp-links-opml.php
-rw-r–r-- 1 www-data www-data 364 Apr 18 2016 wp-blog-header.php
-rw-r–r-- 1 www-data www-data 1.6K Dec 8 20:28 wp-comments-post.php
-rw-r–r-- 1 www-data www-data 3.5K Dec 8 20:28 wp-config-sample.php
-rw------- 1 www-data www-data 4.1K Dec 21 23:19 wp-config.php
-rw-r–r-- 1 www-data www-data 3.3K Sep 1 2015 wp-cron.php
-rw-r–r-- 1 www-data www-data 3.3K Dec 8 20:28 wp-load.php
-rw-r–r-- 1 www-data www-data 34K Dec 8 20:28 wp-login.php
-rw-r–r-- 1 www-data www-data 7.9K Jan 11 22:38 wp-mail.php
-rw-r–r-- 1 www-data www-data 16K Dec 8 20:28 wp-settings.php
-rw-r–r-- 1 www-data www-data 30K Dec 8 20:28 wp-signup.php
-rw-r–r-- 1 www-data www-data 4.5K Dec 8 20:28 wp-trackback.php
-rw-r–r-- 1 www-data www-data 3.0K Dec 8 20:28 xmlrpc.php

La source officielle, dernière version de WP : https://github.com/WordPress/WordPress/blob/master/wp-login.php

T'as quelle version ?
Tu trouve ou ton fichier "wp-login.php" ( et certainement pas Wp-login.php) ?!

@Nowwhat

Ma configuration WP actuelle :

- Version de WordPress : 4.7.1
- Version de PHP/MySQL : 7.0.10 / 5.7.14
- Thème utilisé : MediaCenter Child
- Thème URI : http://demo.transvelo.com/media-center-wp/
- Extensions en place : Akismet (3.2), Autoptimize (2.1.0), Broken Link Checker (1.11.2), Cookie Notice (1.2.37), Envato Market (1.0.0-RC2), EnvoiMoinsCher (2.0.8), Forum_wordpress_fr (4.1), FS License Manager (2.0), Imagify (1.6.3), Jetpack by WordPress.com (4.5), MailPoet Newsletters (2.7.5), MailPoet WooCommerce Add-on (3.0.2), Media Center Extensions (2.3.6), NIX Gravatar Cache (0.0.7), Recover Abandoned Cart (13.7), Redux Framework (3.6.3), Regenerate Thumbnails (2.2.6), Rename wp-login.php (2.5.5), Shortcodes Ultimate (4.9.9), Slider Revolution (5.2.6), WooCommerce (2.6.12), Woocommerce - Loi Hamon (1.1.0), WooCommerce Brands (1.5.0), Woocommerce Google Shopping (1.5), WooCommerce Helper (1.7.2), WooCommerce Pre-Orders (1.4.8), WooCommerce Product Subtitle (2.2), WooCommerce Social Login (2.0.4), WooCommerce Systempay Payment (1.2.3), WordPress Importer (0.6.3), WP-Lister Lite for eBay (2.0.14), WPBakery Visual Composer (5.0.1), WP Custom Admin Bar (1.3.5), WP Rocket (2.9.2), WP Sitemap Page (1.6), YITH Essential Kit for WooCommerce #1 (1.3.6), YITH WooCommerce Compare (2.1.0), YITH WooCommerce PDF Invoice and Shipping List (1.1.13), YITH WooCommerce Wishlist (2.0.16), Yoast SEO: WooCommerce (4.1), Yoast SEO Premium (4.1), Yotpo Social Reviews for Woocommerce (1.1.5)
- Adresse du site : https://www.1officiel.frofficiel.fr
- Nom de l'hébergeur : Apache


mon fichier Wp-login.php je l'ai on il y a les fichiers wp-admin, wp-content, wp-includes…

c'est pas la ?