DLink viole la GPL ?
Dans le cadre de mon travail de fin d’études, j’étudie la sécurité des caméras de surveillance. Pour le coté pratique, j’ai choisi de travailler sur la DCS-2130 de DLink, une caméra wifi d’entrée de gamme remplie de fonctionnalités sympa.
Lors de mon étude, je me suis rendu compte que DLink offrait le code source de ses firmware sous GPL. Offrait ça sous-entend : a été obligé car puise allègrement dans les programmes sous GPL et y est donc plutôt contraint…
Ils ont donc mit en place un joli site avec le code disponible pour la version 1 de leur firmware. Bon on va faire l’impasse sur le fait que l’on est à la version 1.1 maintenant parce qu’il y a pire.
Que faire quand vous êtes un constructeur obligé de distribuer son code alors qu’on a pas envie ? Faire un site qui marche pas. Et oui, DLink a gentiment mit en place un site tout foireux qui permet de télécharger à une vitesse bridée variant de 1Kb/s à 60 Kb/s (sur une archive de 1.6Gb, faites le calcul) et qui arrive toujours à un timeout à un moment ou un autre (une fois, j’ai réussi à aller jusque 200Mb, j’y croyais presque). Évidement évitez les liens directs ou ftp, ça permettrait de reprendre le téléchargement.
Attendez ! Il y a une adresse email pour contacter l’admin. « Delivery Status Notification (Failure) » Ah ben mince, c’est con ça… Le formulaire de contact ? J’attends toujours la réponse à mon message…
Bien sûr cela pourrait tout à fait être une coïncidence expliquée par le fait que DLink ne sait pas administrer un site et que les migrations de licornes sont perturbées par les éruptions solaires. D’ailleurs par le passé, DLink s’est toujours montré comme un exemple en matière de respect de la GPL.
Allez une petite citation des avocats de DLink en 2006 pour la fin :
Regardless of the repeatedly-quoted judgement of the district court of Munich I, we do not consider the GPL as legally binding.
Malgré le jugement cité du tribunal de Munich, nous ne considérons pas la GPL comme légalement contraignante.
—-
Mise à jour 17/4: si on cherche à avoir plus d’info sur où est réellement hébergé le fichier. On voit que l’on fait une requête javascript javascript:dnn(‘AECBLCAAJC’) et soit vers http://tsd.dlink.com.tw/asp/get_file.asp?sno=AECBLCAAJC. Sauf que le code en question change à chaque session.
En analysant la requête on voit qu’on reçoit un code HTML 302 Object moved qui nous redirige vers ce site. On se rapproche du lien direct !
Ce brave serveur est donc un tomcat 5.0.19. C’est facile à savoir, c’est mit sur leur page d’accueil. Au moins, il ont pas mit admin/admin comme mot de passe. Il parait que cette version est vulnérable aux directory traversals si des curieux veulent chercher…
En attendant, j’ai utilisé ce dernier lien pour faire un wget sur mon serveur. Du 60k mais ça semble tenir, je viens de passer la moitié, on y croit ! Évidement il suffisait que je dise ça pour avoir Read error at byte 818639781 (Connection timed out)
Mise à jour 19/4: grâce à bochecha, j’ai pu récupérer l’image de la DCS2130. Elle est en cours d’upload et disponible sur ftp://ftp.mart-e.be/DLink/, faites vous plaisir.
Si vous avez d’autres fichiers que vous avez pu télécharger, contactez moi, je vous donnerai un accès au ftp pour la partager.