Comments on Mon serveur Web se fait massivement spammer

Dyonisos (2016-10-21T22:24:00Z)

Avec quelques jours d'écart sans consultation de ce blog, j'aurais été mis au parfum sur certains aspects évoqués avec les DDOS…. aujourd'hui. Première fois que je vois sur le site du monde un article en une sur le sujet accompagné de quelques explications. Parce que ça bugge sévère en ce moment sur Internet.
http://www.lemonde.fr/pixels/article/2016/10/21/une-cyber-attaque-massive-perturbe-de-nombreux-sites-internet-aux-etats-unis_5018361_4408996.html

http://www.lemonde.fr/pixels/article/2016/09/26/derriere-une-serie-d-attaques-informatiques-tres-puissantes-un-reseau-d-objets-connectes-pirates_5003470_4408996.html

Ruxor (2016-10-14T14:34:43Z)

@Mo: Pour l'instant, je ne l'ai pas explicitement/automatiquement interdit (par contre, le titre sera merdique). Mais, franchement, je n'ai pas très envie, et probablement je n'approuverais pas un tel commentaire, ou alors je le déplacerais sur la page qu'il prétend commenter.

Mo (2016-10-14T13:54:37Z)

Je n'ai pas essayé, mais : peut-on poster un commentaire à propos d'une page de commentaire de ce site ?

Ruxor (2016-10-14T13:53:05Z)

Addendum : Et un autre problème est que le grand public n'est pas assez informé de toutes ces problématiques. Tout ce que je viens de raconter devrait être connu et compris de l'homme de la rue, parce que c'est véritablement un enjeu de société, et il n'y a que dans ces conditions qu'on peut espérer avoir un débat raisonnablement informé sur l'opportunité d'avoir des objets connectés, des voitures qui se conduisent toutes seules, etc. Mais l'homme de la rue est d'une ignorance terrifiante sur ce sujet : les médias montrent une vision complètement grotesque de l'informatique et de la sécurité informatique (ça ressemble plus à de la magie dans une série de Heroic Fantasy qu'à quoi que ce soit d'autre) ; même toi, Dyonisos, qui est quelqu'un de visiblement intelligent et cultivé (comme tous les lecteurs de ce blog ;-), personne ne t'avait apparemment donné ces éléments indispensables ; j'ai de même dû faire un micro-cours sur le sujet à mon banquier la dernière fois que je l'ai vu, etc. Je sais que c'est difficile d'informer le grand public, mais je ne crois même pas avoir jamais vu ne serait-ce qu'un seul documentaire télévisé (par exemple) qui expose un peu toutes ces questions de façon pas trop sensationnaliste, et qui permette à Madame Michu d'en retirer des idées pas trop fausses. C'est vraiment grave.

Ruxor (2016-10-14T13:45:32Z)

@Dyonisos: Ça c'est la question à un trillion de dollars… La difficulté est un peu comparable à celle d'écrire des textes qui feraient des dizaines ou des centaines de volumes en se disant que s'il y a la moindre faute de frappe, d'orthographe ou de grammaire quelque part, ce sera une catastrophe. Et imagine qu'en plus, pour se rendre la chose plus pénible, on décide d'écrire en grec ancien, une langue qui n'est familière à aucun des auteurs du texte.

On sait faire des programmes qui sont démontrablement sans trou de sécurité (au sens où ils viennent avec une preuve formelle de bon comportement). Malheureusement, il y a plein de petits caractères : le certificat prouvé ne dit pas forcément ce qu'on pense qu'il veut dire, et en plus il peut y avoir des bugs/trous dans le compilateur, voire dans le matériel. Et même comme ça, on ne sait faire que des choses assez simples, ou en tout cas ça demande un effort énorme.

Après, il y a certainement moyen de faire mieux que l'état absolument pathétique de la sécurité informatique actuelle ; mais tout le monde a des idées différentes sur comment faire : utiliser des langages de plus haut niveau (mais personne n'est d'accord sur quoi), mettre en place des systèmes de mitigation des problèmes (sandboxing, détection automatique d'intrusion), améliorer la formation des programmeurs, améliorer les procédures de développement, améliorer les standards pour les simplifier, faire plus de logiciels libres/ouverts (ou au contraire, en faire moins : les gens ne sont même pas d'accord sur ça !). Et chaque école de pensée trouve que les efforts de tous les autres sont des efforts dépensés en vain (par exemple, Mozila développe le langage de programmation Rust, qui, sans rendre les trous de sécurité impossibles, en élimine de larges classes, permet de concentrer l'attention des programmeurs sur les autres, et rend la programmation nettement plus agréable — au moins selon ses partisans — par rapport à C/C++ ; mais il y a des gens qui disent que c'est une perte de temps et d'efforts parce que personne ne se servira jamais de ce langage, et que Mozilla devrait se concentrer sur la détection et correction des trous de sécurité existants dans Firefox). Parfois je me dis que la détection des trous de sécurité devrait être une piste de recherche plus suivie pour l'intelligence artificielle et le machine learning (d'autant que ces trous ont tendance à se ressembler et à tomber dans des motifs communs).

Mais globalement le problème plus profond et que nous croulons sous la complexité logicielle : on demande des choses sans cesse plus complexes, demandant des quantités de ligne de code hallucinantes (un navigateur Web comme Firefox, c'est des millions de ligne de code), souvent écrites par des gens débordés parce qu'on manque de développeurs compétents par rapport à la tâche. Et peut-être qu'on a des exigences déraisonnables sur ce que devrait faire un ordinateur, aussi. D'autant qu'on exige toujours plus d'efficacité du code qui est déjà tellement difficile à écrire. (Et puis, ce n'est pas unique à l'informatique : le droit aussi produit des quantités toujours plus énormes de textes législatifs et réglementaires, on peut se demander à quoi tout ça rime, et si cette explosion de complexité est nécessaire à notre société.)

La chose sur laquelle on peut tous être d'accord, en revanche, c'est que les auteurs des logiciels (propriétaires, donc quand ils sont les seuls à pouvoir corriger leurs trous de sécurité) ne sont pas assez tenus responsables pour ce qu'ils écrivent. Quand un ingénieur construit un pont qui s'écroule, on le tient pour responsable, mais si tu regardes la licence de n'importe quel logiciel, tu verras qu'il y a toujours des clauses qui exonèrent son auteur de toute responsabilité directe ou indirecte résultat de l'usage de son logiciel — au nom de quoi accepte-t-on ça ? (Je ne dis pas qu'il faille tomber dans l'excès inverse : comme je l'explique ci-dessus, produire du code sans bugs est essentiellement impossible ; mais au moins on pourrait exiger une diligence raisonnable quant à la correction des trous de sécurité portés à son attention, et surtout, sans limitation de temps et sans acceptation d'obsolescence.)

Dyonisos (2016-10-14T13:13:11Z)

Ok ; dernière question de béotien : est-il inconcevable de traiter le mal à sa racine et de mettre sur le marché des systèmes sans trous de sécurité ? Et même de pénaliser les fabricants qui laissent filer des produits avec des trous de sécurité ? Plutôt que de les charger de la tâche de donner les moyens de colmater les brèches de leurs objets via des mises à jour, il semblerait plus logique, si c'est faisable, d'exiger qu'ils commercialisent des produits sans ce type de failles.

Ruxor (2016-10-14T12:58:49Z)

L'antivirus il ne peut protéger que contre des risques déjà identifiés. C'est mieux que rien, parce que ça peut effectivement lutter contre un botnet une fois qu'il est connu (au moins un botnet pas trop sophistiqué qui ne va pas commencer à développer lui-même des techniques contre l'antivirus). Mais on ne fait pas d'antivirus pour les dispositifs embarqués (appareils photos, tablettes, caméras connectées, futurs frigos, etc.). Et sur le principe, l'antivirus, ça reste quand même un emplâtre sur une jambe de bois, parce que c'est l'idée d'identifier l'attaquant et de le neutraliser, au lieu de corriger le trou de sécurité que l'attaquant exploite pour prendre le contrôle de la machine (forcément il doit y en avoir un si la machine est infectée, et tant que ce vecteur d'attaque continue à exister et être connu, on ne peut pas être en sécurité, parce que même si l'antivirus neutralise un attaquant particulier qui exploite ce trou, c'est le trou lui-même qu'il faudrait corriger). Le problème c'est que le seul qui puisse corriger le trou sur un système propriétaire, c'est l'éditeur/vendeur du système d'exploitation ou du gadget, et la Loi ne l'oblige pas suffisamment à la diligence.

Dyonisos (2016-10-14T12:44:20Z)

Ok, ça semble insoluble de supprimer réellement ce risque et c'est bien mon présupposé qui était faux : Internet, si on sait suffisamment crypter et "labyrinthiser" son réseau de fils manipulatoires, c'est loin d'être parfaitement traçable en fait, même si en droit la possibilité théorique existe.
Moi je pensais qu'un bon antivirus dont on équipait son ordi supprimait ce genre de risques.

Ruxor (2016-10-14T12:28:33Z)

@Sbgodin: Les adresses IPv6 sont de trois types selon les 64 bits inférieurs : il y a (1) celles qui sont générées à la main, ce qui se manifeste par 64 bits inférieurs qui peuvent être quelconques mais qui sont souvent quelque chose de facile à taper (par exemple, www.madore.org a pour adresse 2001:bc8:30e8:200::1, les 64 bits inférieurs sont ::1), il y a (2) celles qui sont générées aléatoirement (et typiquement regénérées toutes les quelques heures), quasiment sans contrainte (si ce n'est que le bit 57, en appelant 0 le bit de poids faible, doit valoir 0), et enfin (3) celles qui sont générées à partir de l'adresse MAC de la machine, en insérant fffe au milieu (pour passer de 48 à 64 bits) et en mettant à 1 le bit 57. Par exemple, du fait que l'adresse IPv6 de ma machine de bureau soit 2001:660:330f:a0:222:19ff:fe13:161d (de type (3)) on peut déduire que son adresse MAC est 00:22:19:13:16:1d. Dans les cas d'autoconfiguration (i.e., la machine choisit elle-même son IPv6 d'après les annonces de routeur diffusées sur le brin), les RFC demandent que l'utilisateur ait le choix entre prendre une adresse de type (2)=aléatoire ou (3)=dérivée du MAC, avec (3) par défaut (c'est d'ailleurs quelque chose qui m'insupporte sous Android, il prend par défaut une adresse aléatoire/(2) — passe encore, je comprends que des gens préfèrent — mais il n'y a aucun moyen prévu pour prendre une adresse de type (3)).

@Dyonisos: Retrouver la source immédiate du DDoS est facile, mais qu'est-ce que tu veux faire avec ? Tu vas tomber sur des millions de Mesdames Michu qui n'ont pas fait les mises à jour de sécurité de leur PC (ou à l'avenir, de leur réfrigérateur), soit parce qu'elles ne comprennent pas l'intérêt de veiller à la sécurité des autres, soit parce qu'elles n'en ont même pas la possibilité parce que les mises à jours n'existent plus (ce que tu demandais sur l'obsolescence programmée). On pourrait imaginer une obligation de couper l'accès Internet de toutes les Mesdames Michu en question, mais tu imagines bien que ça pose problème. En revanche, si on veut remonter à la source originelle, i.e., retrouver la personne qui, dans l'ombre, contrôle le botnet de millions de machines de Mesdames Michu, ben ça c'est très très difficile pour plein de raisons : les botnets ont des mesures de sécurité très sophistiquées, ils utilisent souvent de la crypto bien faite, il y a souvent plein de couches de protection empilées les unes sur les autres ; pour retracer l'origine, il faut déjà connaître l'existence du botnet (or généralement il est totalement silencieux jusqu'au moment où il se réveille pour mener l'attaque, et à ce moment-là c'est trop tard), il faut peut-être examiner l'ordinateur de Madame Michu (ce qui pose déjà un problème légal), il faut suivre une trace qui va te mener d'un cybercafé aux Philippines à un site d'entreprise mal sécurisé au Chili, le tout pour atterrir au milieu de la mafia Russe, alors bon courage pour faire ouvrir tous les logs d'accès, quand bien même ils existent. Et grâce à la magie de BitCoin, maintenant, tout est encore plus facile pour la criminalité en tout genre puisqu'il n'y a même plus moyen de suivre les paiements. Et pour ce qui est des gouvernements, ils ont souvent un problème de dilemme du prisonnier : tu peux peut-être faire quelque chose contre les cyberattaques qui émanent de ton pays, mais celles qui te préoccupent, ce sont avant tout celles qui viennent de l'étranger (la Russie et la Chine étant particulièrement suspectes à cet égard). Maintenant, je ne dis pas qu'on ne peut *rien* faire, mais pour bouger le cul des hommes politiques, il faudrait que l'opinion publique soit consciente du problème, ce qu'elle n'est pas (plus exactement, elle est consciente qu'il y a des vilains hackerz, mais elle n'est pas consciente du fait que l'Internet of Things et les ordinateurs mal sécurisés donnent tant de pouvoir à ces hackerz, et personne ne se scandalise des fabricants de logiciels qui laissent des trous de sécurité non corrigés ou qui arrêtent de maintenir des vieux modèles de téléphones).

Personnellement, une mesure que je ferais passer pour faire au moins avancer le schmilblick, c'est : dès lors qu'on met sur le marché un gadget (logiciel, téléphone, appareil embarqué quelconque…) connecté ou connectable à Internet, on a obligation de corriger les trous de sécurité rapportés contre le gadget et de fournir les mises à jour À TOUT JAMAIS ; et la seule façon de se débarrasser de cette obligation est de publier sous une licence ouverte TOUT le code source permettant de mettre à jour le gadget. Par exemple, comme beaucoup de problèmes de botnets viennent de vieux Windows XP dont Microsoft veut arrêter de maintenir la sécurité, ils devraient avoir le choix : soit ils continuent à le maintenir, soit ils ont l'obligation d'en publier le code source complet. (Je ne dis pas que la mesure que je propose résoudrait tous les problèmes : il reste la difficulté de persuader Madame Michu de faire les mises à jour ; mais au moins, ça représenterait un certain progrès.)

Dyonisos (2016-10-14T10:18:36Z)

Question très "néophytique" : je ne comprends pourquoi ces attaques DDOS et plus généralement les offensives informatiques ne donnent pas prise à une riposte coordonnée et lourde sur le plan des sanctions. On dit souvent (cliché ?) que tout est traçable sur internet de telle sorte qu'on pourrait croire qu'il n'est pas difficile de remonter à la source de ses attaques. Or quel Etat aurait intérêt à protéger ça (je laisse de côté évidemment le pôle énorme des attaques voulues par les Etats, j'ai en tête les particuliers) ? Quelque chose m'échappe sur ce point.

jonas (2016-10-14T09:22:06Z)

I second Sbgodin's question. You can't tell the MAC address of network devices through routers, only through switches on your local network.

Sbgodin (2016-10-14T05:42:17Z)

Hello,

Comment as-tu fait pour récupérer l'adresse mac ? Il me semblait que cette donnée ne franchissait pas les routeurs, et ne pouvait ainsi pas figurer dans les logs.

Gabriel (2016-10-13T21:09:26Z)


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: b8a263


Recent comments