Le mystère du .HPIMAGE.VFS

Chez moi j’ai une nouvelle imprimante HP avec fonction scanner. En dehors de son écran tactile pour être a la mode (smart-printer), elle possède un port USB permettant d’enregistrer le résultat du scan directement sur la clef, sans devoir passer par les habituels pourriciels. Vraiment pratique pour numériser des choses et autres. Par contre, je n’arrive toujours pas à la faire fonctionner sous Linux mais là n’est pas le sujet.

Seulement cette merveilleuse imprimante me produit également, lors du scan, un fichier caché .HPIMAGE.VFS de 161Mo. En cherchant sur internet, j’apprends que ce fichier permet a l’imprimante de mieux gérer les miniatures. Sauf qu’on ne me la fait pas à moi. Je trouve déjà limite qu’elle stocke son bordel sur ma clef mais surtout je n’ai jamais autant de miniatures que pour occuper 161Mo !

Première étape, la.commande file m’indique qu’il.s’agit d’une partition en FAT et il est donc possible de le monter pour en explorer le contenu.

$ file .HPIMAGE.VFS
.HPIMAGE.VFS: x86 boot sector, code offset 0x0, OEM-ID « MSWIN4.1 », Media descriptor 0xf8, heads 255, sectors 314776 (volumes > 32 MB) , FAT (32 bit), sectors/FAT 2440, serial number 0x0, unlabeled
$ sudo mount .HPIMAGES.VFS /mnt
$ ls /mnt
HPSCANS IMAGES
$ ls /mnt/HPSCANS/HP.THM/
39e4_SCAN0001.JPG 4a32_SCAN.JPG
$ ls /mnt/IMAGES/HP.THM/
4304_ME4~1.JPG 4a6d_ME3~1.JPG

Cette imprimante indiscrète a analysé le contenu de ma clef et a copié, en plus des deux scans dans HPSCANS/, deux images qui étaient présentes sur la clef dans le dossier images/. Au passage, on ne peut pas vraiment parler de miniatures puisque, par rapport à l’original, la taille des images a presque doublé pour une (de 44k à 81k) et un peu diminué pour l’autre (de 191k à 176k). La résolution est inchangée pour les deux.

Concernant la taille trop volumineuse, un coup de hexdump me montre que des fichiers présents sur ma clefs le sont également dans ce fichier. Et en vidant le contenu de la clef, certains fichiers sont encore présents dans le .HPIMAGE.VFS. Nom de…

Après plusieurs tests et conseils de PostBlue me disant de faire un formatage bas niveau, je comprend ce qui s’est passé : le fichier contenant les miniatures est mal finalisé et englobe également une copie des fichiers encore présents sur la partition. Vous n’êtes pas sans savoir que les fichiers ne sont pas réellement supprimés du disque en pressant la touche delete mais que seules les références sont retirées. Le contenu même du fichier est toujours présent tant qu’on a rien écrit par dessus. Visiblement, cette imprimante récupère un morceau de la partition avec elle.

Quelles sont les conséquences de ce bug ? Tout d’abord de la place est inutilement utilisée sur ma clef (160Mo sur 8Go ça va encore mais c’est pas une raison). Et puis, d’un point de vue vie privée ce n’est pas parfait non plus. Il est très facile de récupérer ce fichier (un simple explorateur de fichier suffit, pas besoin d’outils spéciaux) et de l’analyser par après, avec un peu de chance, quelques documents sensibles se trouve la dedans. Comment ? Voici un exemple avec PhotoRec. J’ai fais un test en remplissant ma clef de fichiers divers avant de tous supprimer et de scanner une image.

$ photorec .HPIMAGE.VFSt
Select a media (use Arrow keys, then press Enter):
>Disk .HPIMAGE.VFS – 161 MB / 153 MiB (RO)

16 files saved
Recovery completed.

Dans l’exemples ci-dessus, 15 fichiers supplémentaires (sans compter l’image scannée) ont pu être donc récupérés. J’ai fais toute une série de tests et les résultats étaient assez aléatoires. J’ai déjà observé du texte, parfois juste des images, parfois rien alors que la clef était remplie. On ne récupére pas à tous les coups des fichiers effacés mais ça arrive.

Printing the Bain News Service Photos (LOC)
« Mince, est-ce que j’ai supprimé proprement mes films porno sur ma clef USB ? »

Les conclusions :

  • en supprimant vos fichiers, ils sont toujours récupérables, souvenez vous en avant de prêter vos clefs USB
  • un bon formatage se fait à coup de /dev/zero (ou plusieurs réécritures si vous êtes inutilement parano)
  • les fuites ne viennent pas forcement d’où on le pense (une imprimante)
  • HP bouge toi a mettre ça a jour !

Bien entendu, s’ils publiaient une mise a jour il n’y aurait que 6 pellés dans le monde, moi compris, a appliquer la mise a jour. C’était un peu ma conclusion avec les cameras de surveillance d’ailleurs. By the way, si quelqu’un me trouve le code source du firmware de la HP Officejet 8600 (logiciel sous GPL, etc.), faites moi signe, j’y jetterais très volontiers un œil, je suis sur qu’on trouvera d’autres perles 😉

Caméras IP, toi aussi D-Link

Intro

Ces derniers temps, les caméras de surveillances IP n’ont pas bonne presse. On a d’abord eu en janvier Trendnet qui, possédant une faille de sécurité, laissait n’importe qui voir la vidéo. Il y a deux semaines, c’était les chipsets Hi35xx des caméras H.264 sur lesquels on découvrait une faille de sécurité majeure qui permettait de récupérer tous les mots de passes enregistrés (mails & co). Aujourd’hui parlons un peu de D-Link.

Dans le cadre de mon travail de fin d’études en informatique, j’ai étudié le cas d’une caméra D-Link, la DCS-2130, le genre de caméra bon marché que l’on peut utiliser pour surveiller sa maison pendant son absence ou s’assurer que bébé dort bien.

Si vous voyez ceci dans une vitrine d’un magasin, passez votre chemin…

Cette caméra utilisant des logiciels sous licence GPL, D-Link a été contraint de publier également le code source de son firmware sous GPL. Je vous avais déjà expliqué sur ce blog mes déboires pour le récupérer ; toujours est-il qu’il est disponible ici.

Lors de mon analyse, j’ai découvert plusieurs faiblesses en terme de sécurité. Je vais détailler les deux principales ici, l’analyse complète peut être lue au chapitre 6 de mon rapport[pdf, 2,2 MB, en].

Compte invité

Depuis l’interface d’administration de la caméra (accessible à l’adresse IP de la caméra), il est possible d’exporter la configuration de la caméra. Ce fichier contient en clair tous les paramètres et mots de passes enregistrés (très moyen, imaginez qu’il y aie une faille similaire à celle des caméras H.264…). C’est en consultant ce fichier que je me suis rendu compte de la présence d’un compte avec le login et mot de passe guest.

acounts0_name=admin
acounts0_passwd=mypass
acounts1_name=guest
acounts1_passwd=guest
acounts1_authority=2

Que permet le droit d’accès 2 ? De consulter le flux vidéo !
A la configuration de la caméra, lors du premier lancement (où l’on utilise un superbe utilitaire en ActiveX), il n’est jamais mentionné la présence de ce compte. On a même un faux sentiment de sécurité vu l’obligation de spécifier un mot de passe au compte administrateur. Or tous les possesseurs d’une DCS-2130 (et surement d’autres modèles, il faudrait tester) possède un tel compte.

Pire encore : il n’est apparemment pas possible de supprimer ce compte. L’interface d’administration possède un formulaire pour la suppression de comptes ; sauf en cas du compte invité. En effet, dans le code source, j’ai trouvé ce bout de code responsable de ce comportement dans la fonction uri_user_del :

#ifdef CONFIG_BRAND_DLINK
else if(i == 1){
DBG("You can not delete the guest accunt!n");
break;
}
#endif

On a donc un code (faute d’orthographe d’origine) qui interdit la suppression d’un compte caché permettant l’accès à la vidéo. Je crierais bien à la backdoor si c’était pas aussi gros.

Est-ce exploitable ? Oui ! Des centaines de caméras D-Link sont accessibles via une adresse IP publique. (lorsque son possesseur à configuré un port forwarding). On peut le découvrir facilement via un bête scan sur un range d’IP (avec un script comme celui-ci) ou en utilisant un outil très bien foutu, ShodanHQ, moteur de recherche de routeurs, serveurs et autres appareils tel que des caméras IP. Une simple recherche à DCS-2130 liste des adresses IP auquel il y a de grande chance d’avoir un compte guest disponible. Assez dérangeant.

Capture d'une caméra
Hmm voila qui est fâcheux…

Ne jetez pas encore votre caméra (quoique), il est heureusement possible de régler cela via une petite manipulation que j’ai découverte :

  1. Exportez la configuration de la caméra et ouvrez le fichier dans un éditeur de texte
  2. Cherchez la ligne contenant acounts1_name=guest (ligne 514 chez moi) et remplacez la par acounts1_name=.
  3. Faites la même chose à la ligne suivante (acounts1_passwd=).
  4. Sauvez le fichier et importez le sur l’interface d’administration

La nouvelle configuration de votre caméra ne possèdera donc plus de compte invité et sera (partiellement) à l’abri des yeux indiscrets.

Fichier de log

Lors de l’analyse du firmware, j’ai découvert que Boa, serveur web minimaliste, hard-codais toutes les URI avec les droits d’accès et la fonction à exécuter dans un fichier request.c (le même fichier qui contenait la fonction de suppression de compte). Par exemple :

{"/ipcam/stream.cgi", uri_av_stream, AUTHORITY_VIEWER, URI_FLAG_VIRTUAL_PAGE, NULL},
{"/cgi-bin/loadconf.cgi", NULL, AUTHORITY_OPERATOR, 0, NULL},

A la première ligne, l’URI /ipcam/stream.cgi exécute la fonction uri_av_stream pour tous les utilisateurs ayant les droits AUTHORITY_VIEWER (comme le compte invité). A la deuxième, l’URI /cgi-bin/loadconf.cgi exécute directement le fichier binaire du même nom pour tous les utilisateurs avec les droits AUTHORITY_OPERATOR (comme le compte admin).

Maintenant, question subsidiaire : que se passe il lorsque qu’il existe un fichier, disons /cgi-bin/exportlog.cgi qui se trouve dans les fichiers sur le serveur mais pas dans la liste hard-codée avec les permissions ? N’importe qui peut l’exécuter, admin, invité ou même un simple visiteur. Comme son nom l’indique, ce fichier exporte le log de la caméra qui contient ce genre d’info :

2012-05-24 21:01:29 NETWORK LOST
2012-05-24 21:01:29 SD CARD SIZE 7620040 KB
2012-05-24 21:01:34 NETWORK RECONNECT
2012-05-24 21:03:15 admin LOGIN OK FROM 193.44.55.11
2012-05-25 15:40:38 IP CAMERA Received MOTION Trigger
2012-05-25 15:40:41 MOTION STOPPED

Il n’y a, heureusement, pas de mots de passe mais des informations potentiellement sensibles comme des logins, des adresses IP et surtout, des événements comme l’outil de détection de mouvements qui s’active.

Conclusion

Quelles sont les conséquences concrètement de ces deux failles ? Imaginons un voleur un peu geek voulant planifier son vol, s’il se rend compte qu’une caméra IP est accessible (soit depuis l’intérieur du réseau soit depuis une adresse IP publique), il pourra voir accès à beaucoup d’information qui lui faciliteront la tâche. Il pourrait connaître les heures de fréquentation des habitants, repérer les lieux et connaître les endroit à éviter. Un comble pour un outil supposé vous protéger.

Si l’on s’introduit sur le réseau wifi

Étant donné la nature du second problème, en l’attente d’une mise à jour (si elle vient), il n’est pas possible d’empêcher ce comportement sans corriger le code manuellement, compiler le firmware (marche à suivre ici) et charger votre build. C’est possible mais c’est à vos risques et périls, je n’ai personnellement pas tenté l’expérience. Cependant, voici un fichier request.c pour le serveur Boa qui, théoriquement, devrait régler à la fois le problème de la suppression du compté invité impossible (suppression du bout de code responsable) et rendre le fichier de log inaccessible pour les non-administrateurs (ajout d’une règle). Si D-Link, qui n’a toujours pas répondu à mon email du mois de juillet, voulait l’utiliser, c’est cadeau.

Si l’on connaît l’adresse IP publique du réseau

Dans cette étude, je n’ai regardé qu’a un seul modèle de caméra choisi arbitrairement. Aucune étude de sécurité n’avait été faite dessus auparavant (du moins que j’ai trouvé) et elle avait de bonne critique. Cela ne veut pas dire que toutes les caméras sont mauvaises ou que D-Link est un mauvais élève (on a vu des problèmes similaires chez d’autres marques). Je pense que cela représente bien le risque de confier des choses sensibles (des images de l’intérieur de sa maison) à des appareils sur lesquels on ne sait rien et qui n’ont pas été pensé dans une optique de sécurité. On peut espérer que la multiplication des problèmes découverts sur ce genre d’appareils va sensibiliser les constructeurs et possesseurs à faire plus attention à ces problèmes.

Le vote, électronique ou non

Dimanche passé, c’était les élections communales et provinciales en Belgique. En tant que citoyen responsable, j’ai donc été faire mon devoir et rougir quelques cases dans un isoloir. Isoloirs de plus en plus désertés par les feignants (Un dimanche matin ? Vous êtes cinglée ma bonne dame !) ou contestataires (parce que rester dans son pieu en signe de refus du système, c’est comme télécharger The Expendables pour militer un accès à la culture) mais là n’est pas le débat.

Depuis quelques années, on vote électroniquement dans plusieurs villes. Vote qui est contesté par de nombreuses voix comme PourEVA (Pour une Éthique du Vote Automatisé) qui s’est bien exprimé sur le sujet vendredi passé à Source sur radiocampus par exemple. Je n’ai jamais caché être pro-vote électronique et globalement pas d’accord avec eux mais il faut avouer qu’ici, il y a eu de la connerie dans l’air, aussi bien d’un coté que de l’autre.

Commentaire sortant du coeur sur un bulletin
J’ai bizarrement plus d’estime pour celui qui s’est bougé pour écrire ça que pour celui qui est resté dans son lit…

Commençons par de l’analyse journalistique. Quelles sont les priorités en termes d’importance des nouvelles ? Au JT de dimanche soir, dans l’ordre on a eu :

  1. La NVA qui gagne à Anvers
  2. Les autres résultats
  3. Les problèmes du vote électronique
  4. Les problèmes du vote papier
  5. Le reste du monde

Qu’est-ce qui s’est passé avec le vote électronique ? On a eu des files très longues à certains endroits. On a eu des problèmes au démarrage avec des temps de réactions de plusieurs heures pour qu’un technicien règle ça. On a même eu un type qui à tout débranché de rage. On a également une polémique d’écrans tactiles (on parle de smartvote ;-)) trop sensibles (en sélectionnant une liste, on « double cliquait » et sélectionnait le candidat du milieu de cette liste). En gros ça a été le bordel dans plusieurs bureaux.

Est-ce grave ? Oui c’est grave d’avoir une organisation aussi mauvaise, grave qu’on ne sait pas démarrer une machine correctement et qu’on ai besoin de plusieurs heures pour réussir à résoudre un problème facilement évitable. Ce problème de sensibilité est le signe que le logiciel a été développé à la va-vite et a eu un manque flagrant de test (et ça aussi c’est grave) ! Est-ce grave sur le résultat du vote ? Non puisque celui-ci n’a pas été potentiellement modifié en rapport de force entre partis, personne ne s’est dit « J’ai du attendre 2 heures, ben je vais voter à gauche finalement » .

ajout de candidat sur un bulletin
C’est vrai que le vote électronique ne laisse pas grande place à la créativité, et c’est bien dommage…

Maintenant, qu’est-ce qui s’est passé à Jemeppe-sur-Sambre avec le vote papier ? Événement d’importance médiatique moins important dans l’ordre de présentation (on en a parlé d’ailleurs 55 secondes contre 4 minutes 10 pour le vote électronique). Trois urnes (on se rendra compte plus tard que c’était quatre urnes) sont arrivées non-scellées pour le dépouillement. Il faut savoir que ça représente 10% des voix ce qui est non négligeable dans un score serré, ça ne prouve pas une manipulation mais la rend possible. Est-ce grave ? Plus que pour le vote électronique il me semble.

Des problèmes pareils (urnes non-scellées, gens bourrés, négligence dans tous les sens…), on en rencontre à chaque élection, suffit de demander aux gens ayant assisté à plusieurs dépouillements. Que ce soit en vote papier ou en vote électronique, il y a et il y aura encore de très nombreux problèmes. Même un système aussi simple que le vote papier, un système que même un idiot peut comprendre, est foireux s’il est confié à un idiot. Mais c’est la vrai démocratie, celle qui implique le peuple dans son processus et ce genre de bêtises. Cela me conforte dans mon opinion : le vote électronique n’est pas moins bon que le vote papier, ils sont tous les deux mal gérés.

La vie privée, Android, les caméras wifi et moi

Je fais un rapide article pour annoncer une nouvelle qui me fait très plaisir : je viens de finir mon travail de fin d’études. À quelques formalités près, je suis désormais (presque) diplômé d’un master en informatique, elle est pas belle la vie (potentiel employeur, tu peux me contacter par mail). Bon, on est pas là pour parler de moi mais du papier que j’ai pondu et dont je suis suffisamment fier que pour vouloir en parler.

Privacy concerns with everyday technologies: case study of Android phones and wireless cameras

Pour résumer, cela concerne toute la problématique de la vie privée, largement sous-estimée lorsque l’on utilise des technologies devenues très courantes. On considère ces technologies pour une fonction et non comme un système informatique (sur lesquelles on ne va pas faire de mise à jour par exemple), ici en particulier, Android et les caméras wifi personnelles.

Pour mon étude de cas Android, je me suis concentré sur les capacités de localisation avec les abus de permissions. C’est-à-dire voir comment une application peut, sans utiliser aucun bug ou faille de sécurité, avoir des comportements assez dérangeants. Pour l’exemple, j’ai créé une application DroidWatcher qui enregistre la position de l’utilisateur toutes les 15 minutes et les envoie sur un serveur, le tout avec un système de commande par SMS.

Pour les caméras, la méthode était un peu différente mais le résultat similaire. Ces caméras que l’on utilise pour protéger notre vie privée, est-ce qu’elles sont bien sécurisées et empêchent les abus ? Pour ça, j’ai utilisé une caméra D-Link dont j’avais récupéré le code source (tant bien que mal) et puis fait une petite analyse complète de la sécurité. Spoiler alerte : elle est très mauvaise par défaut (c’est-à-dire pour 99% des caméras). Et si un voleur utilisait votre caméra pour faciliter son vol ? Un comble…

Bien entendu, le tout est publié sous licence libre (CC BY-SA pour le texte, GPL pour le code) et est disponible sur gitorious.

Des articles plus approfondis (au moins sur la caméra) devraient voir bientôt le jour mais vous pouvez déjà lire tout ça via le pdf. J’espère que ça va intéresser certains et n’hésitez pas à me faire part de vos retours.

App.net décolle, que manque il à StatusNet ?

Dernièrement, App.net a fait parler de lui pour avoir réussi sa levée de fond pour commencer son développement. Qu’est-ce qu’App.net? Sur leur site, voici ce qui est annoncé:

App.net is a real-time social feed without the ads.
Let’s create a service that puts users first.

App.net is a different kind of social platform.

We’re building a real-time social service where users and developers come first, not advertisers.

Pour résumer, l’idée derrière les développeurs de App.net est donc de créer un clone de Twitter payant. Pourquoi payer ? Pour garantir que les utilisateur et les développeurs soient les personnes à garder heureux et non plus le produit à rentabiliser comme Facebook et Twitter le considère trop souvent. L’idée a été lancée suite à la fermeture de l’API de Twitter et la présence de publicités grandissante.

Bon on a donc un système:

  • Centralisé
  • Payant
  • Propriétaire
  • Respectant les utilisateurs et développeurs

Waw quand j’ai entendu ça, j’y croyais pas. Les gens marcheraient jamais. Et pourtant, ils ont récolté 800.000$ à ce jour. En comparaison, c’est 4 fois plus que ce que Diaspora avait rassemblé pendant sa levée de fond (déjà impressionnante).

Pourquoi est-ce que je n’y croyais pas ? Parce qu’on a déjà OStatus/StatusNet ! Pour ceux qui débarquent, OStatus est un standard ouvert qui utilise une série de protocoles pour faire de l’échange de messages et StatusNet en est l’implémentation la plus connue (Friendica en est une autre). La particularité de StatusNet est d’être un logiciel libre, n’importe qui peut l’installer sur son serveur. Identi.ca est l’instance publique de StatusNet la plus connue mais il en existe des milliers d’autres, j’en ai une par exemple. Soit vous créé votre compte sur une instance existante, soit vous installez la votre sur votre serveur, cool non?

OStatus permet un échange de messages de façon distribuée. Avec ma petite instance minable, je peux parler avec n’importe qui d’autre ayant une instance compatible OStatus. Et c’est là toute la force du protocole de mon point de vue. Avec un système libre et distribué, on peut potentiellement avoir le meilleur système du monde (impossible à contrôler par exemple).

Et pourtant, aujourd’hui les gens sont prêt à rassembler 800.000$ pour créer un système payant, centralisé et propriétaire. Qu’est-ce que le système a de plus ? Qu’est-ce qui manque à StatusNet qui n’a pas réussi à se développer plus que ça?

Le buzz. App.net a réussi à faire parler de lui à un moment où il fallait, quand Twitter recevait le plus de critiques. Jusqu’à présent Twitter convenait parfaitement à tout le monde, seul quelques geeks avec leurs concepts dépassés de vie privée n’étaient pas content. Maintenant on empêche Instagram de fonctionner aussi bien qu’avant, on parle d’avoir de la pub, la censure commence à être trop présente, les mécontents augmentent. L’équipe de App.net a saisi le moment parfait pour sortir son projet avec des arguments très marketing. StatusNet n’a jamais réussi à se vendre ainsi.

Une entité claire. Savoir qu’il y a une compagnie avec des moyens derrière est rassurant pour l’utilisateur moyen. Il préfère passer par une compagnie commerciale qu’utiliser un serveur maintenu par des dons et quelques bénévoles qui risque de crasher ou être en surcharge à tout moment. L’argent ça fait pro, c’est tout. Quels sont les moyens derrière StatusNet? Aucune idée, juste un site officiel pas très fourni, un wiki spammé, un dépot Gitorious assez discret. Je n’ai aucune idée de comment avance StatusNet, ce qui se passe etc. Et OStatus? C’est encore pire. Site web mort, wiki vide (ah non, il y a cette page qui est intéressante). Je veux dire, est-ce qu’il y a un compte officiel OStatus ou StatusNet qui donne des annonces sur l’état du projet ?

Une bonne interface. Je ne suis pas un pro de l’IHM mais il faut quand même avouer que, aussi bien visuellement qu’à l’utilisation, Twitter est plus agréable. « C’est moche », « c’est lent », « c’est pas intuitif »,… On peut faire facilement pas mal de reproches (fondés ou non) à StatusNet. C’est con mais une interface intuitive avec des effets AJAX dans tous les coins, ça fait plaisir à l’œil. Vous avez vu l’alpha de App.net, si vous êtes en manque d’inspiration…

La centralisation. C’est triste à dire mais la centralisation a des avantages. Tout d’abord une plus grande réactivité. Pas de connexion et propagations de messages entre instances, tout est au même endroit. Également, la centralisation permet de créer un index très facilement des personnes présentes. Il n’existe pas de manière automatisée de chercher un groupe de personne sur StatusNet. Un index distribué serait-il possible ?

Vu comme un service. Lorsqu’il a été demandé aux fondateurs de App.net pourquoi ils ne sont pas open source, il a été répondu que leur but n’était pas de produire un logiciel mais un service. Ils se comparent à Dropbox qui fonctionne comme un service. L’utilisateur lambda n’est pas intéressé par ce qu’il y a derrière, il veut juste que ça fonctionne (ici l’on pourrait introduire un parallèle à Apple mais ce n’est pas le troll du jour). StatusNet est encore présenté trop souvent pour ses caractéristiques techniques (bien mais pas bandant) et non pas comme un outil de communication pour rapprocher les gens (là vous m’intéressez).

Je ne parlerai pas de l’API parce que je ne l’ai pas étudiée en détail mais il me semble que, du coté de StatusNet, il n’y a pas de quoi se plaindre (que les spécialistes me disent si je me trompe).

Je viens peut être de critiquer StatusNet et pourtant j’y crois encore, j’ai vraiment envie que ça fonctionne. Je crois encore que OStatus/StatusNet a un avenir devant lui. Je crois que tout n’est pas perdu et qu’il y a moyen d’attirer des masses. L’arguement principal avancé de app.net est qu’il respecte les utilisateurs et développeurs. Qu’est-ce qui respecte mieux les utilisateurs et développeurs qu’un outil créé par eux pour eux ? Un outil libre a un avantage énorme sur ce point, c’est nos données, on en fait ce qu’on veut.

App.net a montré que des gens sont prêt à repartir à zéro malgré l’effet réseau très fort sur Twitter. Qu’est ce qu’on peut faire pour y réussir également ? La question reste ouverte, je ne dis pas maintenir la vérité mais voici quelques points essentiels de mon point de vue:

  • Une interface retravaillée: on a le protocole, il manque le design (l’opposé de Diaspora en gros)
  • Une instance de référence fiable: identi.ca est ce qu’il y a de plus proche mais il manque encore de fiabilité et ne joue pas très bien avec les autres instances.
  • Un écosystème plus riche: l’API est très proche de Twitter, ça devrait faciliter les choses non? Créons des boutons « partager sur StatusNet », des clients mobiles, des intégrations dans des sites web…
  • En parler: StatusNet reste le coin des geeks, même mes potes en info ils connaissent pas en général.

Bon après il a des questions ouvertes. Est-ce qu’il faudrait un autre client alternatif à StatusNet ? Faut il chercher à copier Twitter à tout prix ou se différencier ?

Et à ceux qui me diront « t’as qu’a coder pour StatusNet plutôt que de critiquer », je rappelle qu’on peut critiquer (positivement) sans pouvoir forcement faire mieux soit même. Je suis très loin d’être un ninja du PHP, je suis mauvais et je le sais, je ne vais pas commencer à faire du développement là dedans. Par contre il y a sans doute d’autres contributions intéressantes et c’est là que j’aimerais créer une discussion.

Les ressources par exemple ? Vous avez quoi ? Allez je commence:
Si vous cherchez à jouer avec StatusNet en python, je vous conseille cette librairie python request-oauth (ou mon port python 3) pour utiliser l’API OAuth.

En terme de contributions, il y a cette page qui donne des pistes. Le wiki peut sans doute recevoir encore un peu d’aide (traduction en Français ?), trois pages Wikipédia qui pourraient bénéficier d’un petit rafraîchissement/éclaircissement OStatus, StatusNet, Identi.ca.

Si vous avez des chouettes ressources, librairies, outils, d’idées d’amélioration de StatusNet, je suis curieux d’entendre tout ça.

Mise à jour 17/08: vous avez lu les nouvelles conditions d’utilisations de l’API 1.1 de Twitter ? Il est plus que temps de se dégager de ça.