par
Ajoloca » 14 oct. 2006, 00:34
Bonsoir,
Tout le monde parle de sécurité. A ce jour on peut dire qu'il n'y-a pas de méthode(s) infaillible(s).
Si on utilise la méthode des sessions, elle est efficace que si le MP est crypté entre le navigateur et le serveur, mais comment faire si on ne doit pas utiliser de logiciel(s) coté client (JS ou autre) ?
Elle doit obligatoirement sortir en clair du navigateur, un coup de « sniff » et hop!, c'est fini.
Dans cette optique seule une connexion sécurisée (https) est à ce jour envisageable, quoi que...
Et ça implique deux serveurs (un en http et un en https). Je m'explique: Le serveur https est très gourmand, il n'est à envisager que pour les pages contenant des données sensibles (MP, Nº de compte, ....) car sinon le client qui choisi des articles dans le catalogue du site (il navigue) le temps de réponse le fera vite grincer des dents (Je vous parle même pas d'une connexion RTC).
Si on pousse la paranoïa jusqu'au bout, on doit prévoir les logiciels mal vaillants qui lisent les touches au clavier et transmettent leur récolte. Dans ce cas, un clavier virtuel avec un positionnement aléatoire des touches et l'usage de la sourie ?, Mais j'oubliais, pas logiciel coté client !
Pour les partisans de la politique du double usage (client et serveur), on peut considérer qu'ils se complémentent.
Les utilisateurs sont eux, aussi sensibles, sinon plus que nous, de cette sécurité, mais souvant mal informés. Si un utilisateur, parano (comme le fait remarquer Cyrano), bloque son JS, on le redirige vers une page lui expliquant les risques qu'il encourt, et pourquoi il doit activer le JS pour le site concerné il changera d'avis.
Donc il faut faire de son mieux et avec les moyens qui sont les nôtres.
Concernant la détection de JS coté client, la ou une des meilleurs méthodes est celle indiquée par Cyrano mais plus complexe à mettre en place.
HTML prévoie une balise <noscript> qui s'exécute que si le script ne s'est pas exécuté, un Exp.
Code : Tout sélectionner
<script type="text/JavaScript"><!--
// Code en JS
--></script>
<noscript>
<!-- Redirection vers une autre page -->
<?php header("Location: page explications ou autre"); ?>
<!-- Rien n'epèche d'écrire du code (X)HTML aussi -->
</noscript>