PROJET AUTOBLOG


Le blog de Genma

Site original : Le blog de Genma

⇐ retour index

Le protocole UPnP n'est pas compatible avec la sécurité

jeudi 1 janvier 1970 à 01:00

Qu'est ce que le protocole UPnP ?

UPnP, comme son nom l'indique, est dérivé de PnP (Plug aNd Play), qui est une technologie qui permet de faciliter l'installation, la configuration et l'ajout de périphériques informatiques à un micro-ordinateur. Universal Plug And Play (UPnP) étend cette simplicité en incluant l'ensemble du réseau informatique, permettant la découverte et le contrôle des périphériques, y compris les dispositifs et services en réseau, tels que les imprimantes connectées au réseau ou les équipements électroniques.
Avec UPnP, un périphérique peut joindre le réseau dynamiquement, obtenir une adresse IP, transmettre ses capacités, en savoir plus sur la présence et les capacités d'autres périphériques et tout cela automatiquement sans recourir à aucune configuration du réseau. Les périphériques peuvent par la suite communiquer avec les autres périphériques directement. De plus UPnP est indépendant de tout système d'exploitation, langage de programmation ou support physique
Source

Formulé autrement et de façon plus simple, La fonction UPnP AV vous permet d'accéder simplement et depuis votre téléviseur (relié au boîtier TV) à un ou plusieurs ordinateurs se trouvant sur votre réseau local (qu'ils soient connectés à la Freebox en Ethernet ou en WiFi). Vous pourrez alors en parcourir le contenu (vidéos, images,...) et le diffuser sur votre téléviseur, à l'aide de votre télécommande Freebox.http://www.free.fr/assistance/2298.html

Les risques pour la sécurité

Comme tout ce qui touche à l'informatique, il peut y avoir des failles En temps normal, une application de partage de fichiers fonctionnant sur un ordinateur peut demander via UPnP à un routeur d'ouvrir un port spécifique et le lier au réseau local de son ordinateur afin d'ouvrir le partage de fichiers avec des utilisateurs distants.(...) UPnP est principalement destiné aux réseaux locaux, mais au cours des tests qu'ils ont effectués entre juin et novembre 2012, les chercheurs en sécurité de Rapid7 ont comptabilisé plus de 80 millions d'adresses IP publiques uniques ayant répondu à des requêtes UPnP envoyées via Internet. En outre, ils ont constaté que 20 % - 17 millions - de ces adresses IP renvoyaient à des appareils exposés à Internet par le service SOAP (Simple Object Access Protocol) UPnP. « Ce dernier peut permettre aux pirates de cibler des systèmes installés derrière un pare-feu et expose leurs informations sensibles », ont expliqué les chercheurs de Rapid7.

Dans un de ces billets, Aeris dit du protocole UPnP et je sais aussi qu'il est totalement déconseillé par toute personne qui tient plus ou moins à la sécurité de son réseau. En effet, ce protocole a pour objectif de permettre l'ouverture automatique de port sur la box ADSL à la demande d'un logiciel situé sur un autre ordinateur. C'est donc un énorme trou de sécurité, toute machine infectée pouvant alors se publier seule sur Internet et typiquement exposer le port SSH (...). Ce protocole(UPnP)doit donc être désactivé chez tous les utilisateurs.

Si on effectue une recherche sur le web, on peut trouver des articles comme comment ouvrir des ports sans le mot de passe du routeur qui explique comment installer un logiciel qui, si UPnP est activé sur le routeur du réseau, permet d'ouvrir un port vers l'extérieur...

Alors quoi faire ?

Il est vrai que le protocole UPnP est bien pratique pour récupérer des fichiers vidéos ou audio en partage sur son réseau local, sans que l'on est à s'occuper d'une quelconque configuration. Mais comme souvent, dès lors que l'on simplifie les choses, qu'on les rend facile et accessible, on cache ce qu'il y a derrière... et on introduit des risques potentiels.

Les box, par défaut, font du NAT et l'ouverture et la redirection de ports doivent être configurés par les utilisateurs dans l'espace de gestion). Le fait de pouvoir ouvrir n'importe quel port sur un routeur fait qu'un ordinateur ayant un virus sera accessible depuis l'extérieur sans qu'on le sache. On perd alors tout l'intérêt de ce routeur comme outil de protection (sic). Puisse se billet sensibiliser à cette problématique de l'UPnP.

Quelques réflexions sur l'autohébergement

jeudi 1 janvier 1970 à 01:00

Jean Baptiste Favre a écrit un billet L'auto-hébergement à l'heure de la surveillance de masse où il parle de l'autohébergement. J'aime beaucoup sa conclusion Mais la plupart des gens n'ont pas intérêt à s'auto-héberger. Ils feraient bien mieux de se regrouper en association ou de monter de petites entreprises s'ils en ont l'envie et les compétences. En tout état de cause, se regrouper permet de se cacher de manière plus efficace. Le tout est de trouver la limite à partir de laquelle la taille de l'organisation joue contre ses membres. Encore une fois, l'exemple des FAI associatifs en la matière devrait être étudié et suivi.

Elle me force à poster ce billet un peu en avance. Je pensais le continuer, le retravailler, mais comme je souhaite faire part de mon commentaire personnel, voici donc quelques éléments issus de ma propre réflexion.

Framasoft avec son projet de Dégooglisation

Framasoft avec son projet de Dégooglisation cherche à montrer l'exemple qu'une alternative à l'usage des services fournis par Google et autre est possible. Dans le cas de Google, le fait que les services offerts soient gratuits implique une exploitation des données personnelles en vue d'en faire différentes exploitations (pour des publicités, revente de données ou autre). Le but de Framasoft n'est pas de remplacer Google mais de montrer qu'une alternative est possible.

Les logiciels sont là, plus ou moins accessibles, plus ou moins clefs en main et l'autohébergement reste encore quelque chose de très geek. On ne s'improvise pas administrateur système et les contraintes de l'autohébergement ne sont pas à négliger : qu'en est il du support ? Que se passe-t-il, quelles sont les conséquences si un service (les mails par exemple), n'est pas disponible pendant quelques heures, une journée ou plus ?

Mes réflexions personnelles sur le sujet

L'autohébergement, ce n'est pas uniquement mettre un PC chez soi (surtout quand on a une connexion ADSL, l'asymétrie de la ligne peut vite devenir problématique). Cela peut être de louer un serveur dédié...

Nombreuses sont les start-up et autres sociétés qui lancent des sites Internet permettant d'offrir un service. Elles se lancent sur des créneaux déjà exploités ou nouveaux. Leur modèle économique et de prendre une part sur la transaction effectuée suite à la mise en relation entre l'offre et la demande. Cela peut être de la location de biens ou autre....

Je me pose la question suivante : pourquoi ne pas faire la même chose, mais à l'échelle d'un quartier, d'une collectivité. Je n'ai pas besoin de savoir que quelqu'un à l'autre bout de la France loue sa perceuse. Ce que j'ai besoin de savoir, c'est que mon voisin trois rue plus loin, lui, en a une à me prêter. Proposer ce même type de service, mais à une échelle plus locale. Il y a des choses qui doivent rester à grande échelle : si je pars en vacances, c'est généralement loin de chez moi. Mais pour des choses du quotidien, prêt de livres, de DVD, de matériel, échanges de services, cela peut s'envisager.

En quoi cela rejoint-il les problématiques de l'autohébergement ? Physiquement, je sais où sont les données : je peux potentiellement voir la machine physique.
Je connais les personnes qui gèrent ces machines et qui ont accès aux données et je leurs fais confiance.

Récréer du lien. Je fais confiance à mon voisin qui vient me dépanner pour un problème de plomberie ou de bricolage car lui connait ces domaines et a de la maitrise de l'expertise. Il me fait confiance dans la gestion de ses données et de son cloud personnel, pour la sécurisation et les sauvegardes.

Si on prend l'exemple des membres de la Fédération FDN, c'est exactement ce qu'ils font. Ils fournissent une connexion à Internet à une échelle locale plus ou moins grande. Il n'y pas d'enjeu de type recherche de profits, d'actionnaires. Il y a de l'argent en jeu pour payer les coûts, mais il y a également beaucoup de bénévolat et de temps.

Il est une nécessité que chaque structure, chaque association se réapproprie ses outils informatiques et ses données. On entend parler d'autohébergement, ou chacun met ses données chez soi, dans une sorte de cloud personnel mais cela reste réserver à des passionnés, des connaisseurs technophiles (en dehors des considérations liés à l'espionnage de masse, la sécurité, la fiabilité...)

Il y a un juste milieu entre tout mettre chez soi et tout mettre chez Google. On peut donc imaginer que des associations proposent des services d'autohébergement combinés à d'autres services. En déléguant, je fais confiance. Les limites sont l'imagination et le temps de bénévolat disponible pour gérer l'infrastructure informatique.

Lifehacking - A lire - Comment je pratique le microblogging

jeudi 1 janvier 1970 à 01:00

Deux grands noms de la blogosphère francophone linuxienne nous livrent leurs secrets et astuces sur leurs pratiques du microblogging (comprendre l'usage de Twitter), deux articles intéressants que je classe dans la catégorie Lifehacking.
- Philippe Scoffoni : Comment je pratique le microblogging, Philippe

Il faudra que je trouve le temps de moi-même écrire un article sur le même principe et faire un retour d'expérience sur le sujet, car toute expérience est bonne à prendre. Je vous invite à la lecture de ces billets, à l'occasion.

Lifehack - Notification des horaires par SMS

jeudi 1 janvier 1970 à 01:00

Cela fait longtemps que je n'ai pas parlé de technique de Lifehacking. Dans cet article, je vais vous présenter une utilité que j'ai trouvé aux notifications par SMS disponible chez Freemobile. En partant le matin, je fais un trajet bus + train + marche à pied. En revenant le soir, je le trajet inverse marche à pied + train + bus. Ces trajets sont quasiment à heures fixes tous les jours. J'ai donc créer un script mis en tâche planifiée/crontab dans une machine qui tourne 24h sur 24h et qui est reliée à Internet. Ce script va récupérer les horaires de bus et RER et me les envoie par SMS sur mon trajet. Ainsi je sais si je dois me hâter ou ralentir, quel train ou bus j'aurais pour mon déplacement. Je peux réagir à des retards/suppressions qui viendraient perturber un rythme journalier bien rôdé.

Pourquoi par SMS et ne pas aller consulter les sites 3g ? Parce que je n'ai pas forcément la 3G sur le chemin, qu'il faut lancer un navigateur, ouvrir le raccourci/favori, que le site s'affiche... Le SMS lui arrive tout seul, à une heure fixe.

Les services fournis par les transporteurs

Pour une ligne RATP de bus donnée, on a une version WAP (plus légère du site et qui va à l'essentiel) de la forme :

http://wap.ratp.fr/siv/schedule?service=next&reseau=bus&lineid=BXXX&stationid=XXX_XXX

Cette URL, avec l'ID du bus et le numéro de station donne les horaires de prochain passage.

http://www.transilien.mobi/train/result?idOrigin=XXX&idDest=YYY

Pour la SNCF et les RER transilien, c'est cette URL avec la gare de départ et la gare d'arrivée, dont le code est sur 3 lettres.

Une fois que l'on a les bons liens d'intérêts (pour les différents trajets), on peut passer à la suite.

Le script en crontab

J'ai donc crée un un script Python (basé sur beautifulsoup), qui récupère la page, parse le HTML, en extrait un texte important (heure de passage, direction...) et formate un SMS qu'il envoie via l'API de notifications par SMS de Freemobile.

# -*-coding:Utf-8 -*
import urllib
import sys
import bs4 as BeautifulSoup
import re
from urllib.request import urlopen
from urllib.parse import quote

#------------------------------------------------------------
# En fonction de l'argument, on a les différentes URL
#------------------------------------------------------------
# A changer : remplacer XXX et YYY par le code des stations de départ/arrivée de transilien
#pageFile = urlopen("http://www.transilien.mobi/train/result?idOrigin=XXX&idDest=YYY")
# Cas d'une page d'horaires de BUS Ratp
#pageFile = urlopen("http://wap.ratp.fr/siv/schedule?service=next&reseau=bus&lineid=BXXX&stationid=XXX_XXX_XXX")

#--------------------------------------------
# Partie pour le parsing de la page SNCF
#--------------------------------------------
def parsingSNCF(pageHtml):
soup = BeautifulSoup.BeautifulSoup(pageHtml)
gDepart = soup.find_all('div',class_='GareDepart')
gArrivee = soup.find_all('div',class_='GareArrivee')
sAll = soup.find_all('li', class_=re.compile('resultat_gare*'))
nomGareDepart=((gDepart[0].find_all('a',class_='bluefont'))[0].get_text()).replace(" ","").strip()
nomGareArrivee=((gArrivee[0].find_all('a',class_='bluefont'))[0].get_text()).replace(" ","").strip()
trajet=nomGareDepart+' - '+nomGareArrivee+'\n'
texte=''
texte=texte+trajet
#print (sAll)
i=0
for var in sAll:
heure = var.find_all('span',class_='heure_train')
valHeure = heure[0].get_text()
destination = var.find_all('span',class_='garearrivee')
valdestination = destination[0].get_text()
nomTrain = var.find_all('span',class_='train_mission')
valNomTrain = nomTrain[0].get_text().replace("(","").replace(")","")
texte=texte+valHeure+' '+valNomTrain+'\n'
i += 1
if i>=4:
break
return texte
#Fin parsing page SNCF
#--------------------------------------------
# Partie pour le parsing de la page RATP
#--------------------------------------------
def parsingRATP(maPageHtml):
soup = BeautifulSoup.BeautifulSoup(maPageHtml)
texte=''
sDirection = soup.find_all('span',class_='direction')
for sDir in sDirection:
print(sDir.get_text())
sBWhite = soup.find_all('tbody')
for var in sBWhite:
sTh= var.find_all('td')
for th in sTh:
print(th.get_text())
return texte

#--------------------------------------
# Lecture de la page HTML
#--------------------------------------
#Si on parse une page SNCF
pageHtml = pageFile.read()
texte = parsingSNCF(pageHtml)
pageFile.close()
#Si on veut paser une page RATP
# pageHtml = pageFile.read()
# texte = parsingRATP(pageHtml)
# pageFile.close()

#--------------------------------------
# ENVOI SMS FREE
#--------------------------------------
user='identifiantFourniParFreeMobile' # A changer
pas='motDePasseEnvoiSMSViaFreeMobile' # A changer

#quote convertit en ascii la chaine utf8
texte = str(texte)
url = 'https://smsapi.free-mobile.fr/sendmsg?&user='+user+'&pass='+pas+'&msg='+ quote(texte)
reponse = urlopen(url)
#A faire : tester la réponse pour le cas où il y a une erreur

Ce mini-projet m'a permis de commencer à apprendre le Python. Cela me permet si besoin de recevoir SMS qui me préviennent au bon moment pour me dire quel seront les prochains bus et RER que je dois prendre pour rentrer chez moi, si je dois prévoir d'être en retard ou si je serai à l'heure...

A voir également Ma page de raccourcis d'horaires de bus/train où là c'est en mode "connexion en ligne sur les sites" avec utilisation des mêmes URL.

Ma lettre de motivation, travailleriez vous avec moi ?

jeudi 1 janvier 1970 à 01:00

Contexte

Ci-dessous, je mets la quasi totalité (à quelles corrections/adaptations prêt) d'une lettre de motivation que j'ai passé beaucoup de temps à rédiger pour répondre à une annonce (les lecteurs des messages sur Diaspora sauront à quoi je fais référence).

Comme elle me présente assez bien, je la rends publique via ce blog. Car sait-on jamais si une opportunité m'était présentée...

Ma lettre

Je m'appelle Genma, de mon pseudonyme, sous lequel je mène différentes activités publiques.

C'est tout d'abord sous cette appellation que je tiens un blog depuis un peu plus de dix ans. Au cours des années, les sujets ont évolués et variés selon mes centres d'intérêts, mais tous mes articles ont pour point commun ma passion pour l'écriture, ma volonté de partage de mes connaissances et des choses qui me tiennent à cœur. Actuellement, les thématiques que j'aborde régulièrement ont pour thème la protection de la vie privée, la gestion de son identité numérique, les outils d'anonymisation et de chiffrement (Tor, GPG et autres). Cette activité de rédaction de billets pour mon blog se fait sur mon temps libre durant lequel j'effectue beaucoup de veille sur ces sujets (en anglais), puis je synthétise ensuite les connaissances acquises, en apportant une touche de vulgarisation.

J'ai toujours aimé écrire. Lycéen, j'écrivais des nouvelles et des romans. Etudiant, j'ai fait quelques articles dans le journal de l'Université. J'ai pensé un temps m'orienter vers la presse de vulgarisation scientifique.

Puis vint ma découverte d'Internet. Ce n'était encore que des pages statiques, les connexions étaient lentes, mais j'ai de suite compris l'importance de ce média émergeant pour la diffusion du savoir, des connaissances, l'enrichissement de soi par la découverte de l'Autre, et surtout l'importance de la liberté d'expression. Tout cela, Internet le permettait et le permet encore, tant que la censure et la surveillance des communications ne font pas leurs effets.

C'est donc naturellement que je suis devenu co-animateur avec d'autres hacktivistes des Cafés vie privée, sorte de cryptoparty moderne où nous ne nous contentons pas d'aborder les logiciels de chiffrement, mais avant tout de partager des connaissances diverses et variées, qui vont de ce que je qualifierai d'hygiène numérique (savoir ce qu'est un bon mot de passe, comprendre l'importance de faire les mises à jour) à de l'auto-défense numérique (utilisation avancée du réseau Tor, de Tails...). Sous cette casquette, je vais à la rencontre de différents publics, technophiles ou néophytes. Prochainement, dans le cadre du premier festival numérique de la ville de Paris, Numok, qui se déroulera courant octobre, je donnerai 6 conférences sur des thématiques ayant pour point central la vie privée et Internet dans différentes médiathèques de la ville. Une simple recherche sur mon pseudonyme, une consultation de mon blog ou de mon compte Twitter vous donneront plus de détails sur mes activités et centres d'intérêts liés à cette activité. Certaines vidéos de mes interventions sont disponibles sur Internet et je pourrais vous en fournir les liens à votre demande.

Enfin, mon temps libre est également consacré à du bénévolat au sein de différentes associations ayant pour thématique le logiciel libre (Parinux avec les install party le premier samedi de chaque mois), Framasoft, Ubuntu-fr (co-organisation des Ubuntu Party, animation de différentes conférences sur différents thèmes lors de cet événement), Mozilla (évangélisation sur Firefox OS). A chaque fois, j'endosse la casquette d'un bénévole de cette association et j'en fais la promotion via des conférences par exemple. Là encore, cela s'ancre dans une volonté de partager, de communiquer, par écrit ou par oral, autour de valeurs qui me sont chères.

Après vous avoir présenté mes activités que j'effectue sous pseudonyme, laissez-moi-vous présenter mon expérience professionnelle, qui se fait sous mon identité civile. Depuis dix ans maintenant, je suis consultant au sein d'une grande entreprise informatique (SSII). J'y ai effectué différentes missions de différents types, majoritairement autour du développement sur des projets de toute taille avec différentes technologies (Java/J2EE, C\#/.Net). Toutes ces expériences m'ont fait gagner en maturité, m'ont appris à travailler en équipe parfois internationale (travaillant alors en environnement anglophone). J'ai appris à utiliser différentes méthodologies telles que la méthode Agil et d'autres méthodologies d'organisation que je qualifierai de lifehacking (GTD). Ce parcours dans le monde de l'Informatique m'a permis de connaitre un peu de tout (de un peu à des niveaux avancés, en fonction des domaines), sans avoir vraiment de spécialisation ; ni d'à priori sur les technologies.

Cela fait plusieurs années que je m'intéresse aux problématiques de la liberté d'expression, à la censure. J'ai ouvertement pris position contre le projet de loi sur le Renseignement. Je donne des conférences de présentation sur le réseau Tor. Je milite pour la défense du pseudonymat... Chaque jour, je fais de la veille technologique en consultant mon agrégateur de fils RSS au sein duquel je suis abonné à différents sites (généralistes ou spécialisés) ; j'apprends (autodidaxie) et je m'informe. Je suis via les mailing-listes les avancées de projets comme Tor et Tails... Et toutes ces connaissances, je les synthétise et rediffuse via des textes que je rédige pour mon blog, ou via des conférences…

Ma valeur ajoutée se situe dans mes connaissances et mon expérience en informatique tant professionnelle (dix ans dans une grande société) qu'à titre personnel (je côtoie et me sens proche du monde des hacktivistes). Pour moi l'informatique et les nouvelles technologies ont toujours été des outils qui doivent être utilisés pour répondre aux besoins d'un métier.

Je souhaite contribuer à vos activités en vous aidant à mettre en place les meilleures solutions répondant aux besoins de vos employés, leur permettant d'avoir des conditions plus favorables leur permettant d'exercer leur métier. Je me vois comme l'interface entre eux, leur vulgarisant les concepts informatiques liés à la vie privée, à la censure et les informaticiens, développeurs et autres équipes techniques spécialisées, auxquels je suis à même de donner des directives précises, ciblées, en faisant appel à leurs hauts niveaux de technicité, pour mettre en place les infrastructures et les outils permettant de lutter contre la censure et la surveillance.

Je suis ouvert à toute opportunité qui me permettrait de faire un changement de parcours et de carrière professionnelle, qui me permettrait d'exercer un métier en adéquation avec mes valeurs et principes.

Je vous remercie d'avoir lu ma longue lettre jusqu'ici.

Une proposition, une offre suite à la lecture de mes motivations ?

Si à la lecture de mes motivations, je retenais votre attention,
contactez-moi. Si nécessaire et si la proposition aboutit, je fournirai les informations nécessaires comme :
- un CV détaillé pour la partie concernant les différentes missions que j'ai pu effectuer dans le cadre professionnel ;
- une liste détaillée de mes conférences et autres interventions, une bonne partie des supports se trouvant déjà sur mon compte github.

Si vous le souhaitez, nous pourrions également convenir d'un entretien téléphonique au cours duquel je répondrais volontiers aux différentes questions que vous auriez à me poser. Donc n'hésitez pas.