Comments on Minor technical note

phi (2004-01-18T20:21:01Z)

Ce qui est bien avec Ruxor, c'est qu'il n'a même pas terminé de dire que le danger est minime et ne vaut pas la peine qu'on s'y attarde… que la la modification est déjà effectuée. Merci pour lasaccts, je n'aurais pas deviné (c'est là, qu'on se sent tout petit).

http://www.crazybrowser.com/
Par ailleurs, Crazy Browser 1.0.5 est gratuit (enfin, si vous êtes sous Windows, bien sûr!). C'est un browser qui utilise le moteur de IE mais avec des possibilités moins rudimentaires. Il a un système d'onglets pour avoir plusieurs pages dans la même fenêtre, qui peuvent définir des groupes; il a aussi un filtre anti-popups. Bref comme Mozilla >1.3, avec un chargement plus rapide et moins encombrant puisque les dll de IE qu'il utilise sont de toute façon chargées au départ de Windows tandis que Mozilla charge un sous-système spécifique.

En plus une fonction rafraîchit toutes les pages (shift-F5) ou les rafraîchit toutes les n minutes (utile pour faire croire que vous suivez un blog de minute en minute). Plus une fonction pour sauvegarder toutes les pages.

Ruxor (2004-01-18T15:13:47Z)

Voilà voilà, après un peu de joujou avec Perl, j'ai fait des changements qui me satisfont à peu près :
* la session n'est plus stockée dans l'URL si on a des bonnes raisons de croire que le client accepte les cookies (parce qu'il en a envoyé un valable),
* les sessions ouvertes par URL ne sont plus indéfiniment renouvelables (en revanche, celles par cookie le sont toujours, et je compte garder ça comme ça), et enfin
* si la session est stockée dans l'URL, l'adresse IP est encodée dedans pour ne pas qu'on puisse réutiliser la même URL depuis ailleurs.

Bref, le système reste utilisable en refusant tous les cookies, mais de justesse (chaque login est limité à une heure) ; cependant, les URL ne devraient plus être aussi facilement réutilisables à des fins peu louables.

Au fait, il serait inutile de cacher le authnick vu que le authid permet de retrouver le authnick correspondant, il suffit d'aller lire <URL: http://dmadore.net1.nerim.net/cgi-bin/comment.pl/lsaccts >, c'est parfaitement public (même si je n'ai pas fait énormément de pub). Je ne peux pas éviter complètement de stocker l'information dans l'URL vu que le système est stateless du côté du serveur (il ne sait pas quelles sessions sont ouvertes, d'où le authcheck qui est un hash privé permettant de vérifier que les autres informations fournies sont valables) ; je pourrais éventuellement la chiffrer, mais ça me semblerait complètement overkill.

Ruxor (2004-01-18T13:41:27Z)

L'ennui, c'est qu'il y a des browsers (comme links) dont la configuration par défaut est de refuser tous les cookies (ou en fait de les ignorer). Si on veut maintenir une session, on est obligé de stocker les informations de session dans l'URL, en plus du cookie. Mon système va s'estimer heureux si elles lui sont transmises par l'une ou par l'autre voie (donc, si on a le cookie, on peut retirer les tokens de l'URL, ça marche aussi bien). Cependant, l'URL n'est valable qu'une heure (du point de vue de l'authentification) alors que le cookie l'est pendant une semaine : c'est pour ça que j'estime le risque limité ; mais il est vrai que l'un et l'autre sont indéfiniment renouvelables (si on suit l'URL tant qu'elle est valable, on obtient un cookie qui renouvelle la session pour une semaine, etc.). Je devrais peut-être revoir ça pour éviter le prolongement infini et pour éviter que des URL encodent la session si un cookie avait déjà était transmis.

En revanche, pour le fait que le nick soit transmis, je ne considère pas que ce soit un problème. (Pas plus que le fait, par exemple, que la requête faite à un moteur de recherche soit transmise dans le Referer.)

Tiens un touriste (2004-01-18T11:46:07Z)

Je sais bien que le referer est transmis par le browser. Mais on peut y remédier en ne codant pas en clair le nom de l'abonné sur l'URI. En pratique parmi mes referers webmail, l'immense majorité ne me permet pas de savoir le nom de la personne qui a lu un courrier où on parlait de mon site, et il en reste une petite proportion de mal foutus (par exemple bluemail.ch) qui indiquent l'e-mail de l'utilisateur dans l'URI de l'accès web (ainsi Nicole L. (que je ne connais ni d'Ève ni d'Adam) a accédé à mon site depuis la Suisse le 25 décembre dernier, et je connais désormais son adresse mail !).

Du moment que (je suppose) authid et authnick sont redondants, il serait peut-être souhaitable de supprimer l'authnick des URIs.

Je n'ai pas essayé de me faire passer pour quelqu'un d'autre, je ne pense pas que ça marcherait quand même, le code dans l'authcheck de l'URI n'est pas le même celui du cookie, je suppose qu'il y a quand même une clé sur la machine de Ruxor qui me manquerait pour me faire passer pour l'utilisateur 267.

Pour la dernière question, je suppose que la réponse dépend de Y. Pour certaines valeurs de Y, je suppose que ça peut être gênant.

phi (2004-01-18T10:36:05Z)

Il n'est pas (trop) fautif: l'adresse "referer" est transmise par le browser lui-même. Une solution est d'utiliser un Proxy qui l'efface du header correspondant (Proximitron fait cela très bien en plus de plein d'autres choses). Sinon, il faudrait que le lien pointe vers une page intermédiaire anonymisante.
Cela pourrait commencé a être vraiment gênant si cela permettait de se faire passer pour l'autre, ce qui semble être le cas, si on est suffisamment rapide.
Sinon, est-ce gênant que X voie qu'il a suscité l'intérêt de Y?

NB: Suivant l'exemple de Ruxor, j'ai introduit quelques fautes de français (compensatrices) pour paraître plus "normal".

Tiens un touriste (2004-01-18T07:22:59Z)

Si la conception des commentaires est à l'ordre du jour, une remarque ; j'ai constaté dans mes logs des lignes comme :

aaa.bbb.ccc.ddd 0 1075 [03/Jan/2004:03:29:32 +0100] "GET / HTTP/1.1" 200 4236 "http://dmadore.net1.nerim.net/cgi-bin/comment.pl/lscomments?authid=267&authnick=xxx&authmaxdate=2004-01-03T0
3:18:23Z&authcheck=LC53NDLgrnhruC1nRVPhWw" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; Crazy Browser 1.0.5)"

(xxx remplaçant le nom originel du commentateur numéro 267 et aaa.bbb.ccc.ddd son adresse ip).

En d'autres termes, j'ai pu identifier trois ou quatre des personnes qui sont allé voir qui j'étais au départ de votre blog. Cela ne me paraît pas très raisonnable du point de vue respect de la sphère privée, et il y aurait un point peut-être à amender dans la conception du système de commentaires.


You can post a comment using the following fields:
Name or nick (mandatory):
Web site URL (optional):
Email address (optional, will not appear):
Identifier phrase (optional, see below):
Attempt to remember the values above?
The comment itself (mandatory):

Optional message for moderator (hidden to others):

Spam protection: please enter below the following signs in reverse order: 4f7cd6


Recent comments