Compte-Rendu du 1er atelier OSINT OpenFacto à Paris (23-24 février 2019)

Compte-Rendu du 1er atelier OSINT OpenFacto à Paris (23-24 février 2019)

Le premier atelier Recherches en Sources Ouvertes d’OpenFacto s’est déroulé les 23 et 24 février 2019 à Paris dans le 19e arrondissement.Il s’agissait pour nous de tester grandeur nature ce concept de formation sur deux jours sur un public de quelques happy-few d’horizons variés.

13 (oui treize!) stagiaires (journalistes indépendants et de divers média nationaux français ou européens, mais aussi étudiant, activistes, enquêteurs), ont pu se former ou approfondir leurs connaissances en recherches avancées, en géolocalisation et analyse de sources internet et réseaux sociaux, sous la houlette d’Hervé.

1er atelier OSINT OpenFacto à Paris en février 2019

Cette première session, très orienté « pratique » s’est notamment appuyée sur de nombreux exemples et cas concrets, permettant de découvrir et manipuler un grand nombre d’outils pour la plupart gratuits et/ou open-source. Si, certains utilisateurs étaient d’un niveau très avancés, d’autres découvraient les possibilités infinies de l’OSINT.

1er atelier OSINT OpenFacto à Paris en février 2019

Un des éléments clefs de cette formation était le développement de la méthodologie d’enquête, basée sur différentes approches séquentielles : observation, puis technique et enfin plus avancée. Mais nous avons également beaucoup parlé du travail de groupe, et de l’importance de la collaboration, de l’utilisation des compétences de chacun.

Parmi les outils utilisés durant ces deux jours, et outre les traditionnels Firefox et GoogleEarth, les participants ont pu se familiariser avec Tor Browser, twint (un scraper python pour Twitter), et quelques autres outils issus de github.

D’autres ateliers sont prévus dans les mois qui viennent et seront bientôt annoncés ici même!

N’hésitez pas à nous contacter pour de plus amples renseignements!

Oui! nous avions des stickers!!
Croiser des données sur OpenStreetMap avec Overpass-Turbo

Croiser des données sur OpenStreetMap avec Overpass-Turbo

Lorsque l’on cherche à géolocaliser une image, ou une vidéo sans grandes informations disponibles, il est parfois utile de se reposer sur les seuls éléments visibles à l’écran :

  • L’intersection d’un pont autoroutier avec une voie de chemin de fer.
  • Un angle de rue d’une ville allemande, avec une station du bus, une borne de taxi, une église et une pharmacie…
  • etc….

Dans ces cas précis, il pourrait être utile de pouvoir requêter une base cartographique sur le mode :

“Montre-moi sur la carte tous les lieux comprenant une église et une pharmacie dans un rayon de 50 mètres.”.

C’est là qu’un outil comme overpass-turbo.eu et une carte collaborative très détaillée prennent tout leur sens!


Overpass est une interface de requête pour Openstreetmap.

Il existe plusieurs tutoriels d’utilisation d’OverPass-Turbo sur le net, et le but de celui-ci n’est pas de tout montrer mais de vous présenter un exemple concret de ce qu’il est possible de lui faire faire!

A gauche de l’écran, on trouve la zone de requête. A droite se trouve la zone géographique où l’on souhaite requêter. La première des choses à faire est donc de définir notre zone de recherches, en zoomant au bon niveau de détails.

Cherchons par exemple toutes les églises situées dans un rayon de 50m d’une pharmacie à Rennes, en Bretagne. Tout d’abord, zoomons sur la ville.

overpass-turbo sur openfacto.fr-02-10T12-01-00.947Z

Voici le script qui va nous donner ces informations :

/*
This query will retrieve churches at max distance of 50m of a pharmacy in the area
*/
[out:json][timeout:25];

node({{bbox}})[amenity=pharmacy]->.pharmacy;
 (
   way(around.pharmacy:50)[amenity=place_of_worship];
   node(around.pharmacy:50)[amenity=place_of_worship];
 );
 (._;>;);
 out meta;

Détaillons un peu ce script :

Nous avons tout d’abord commenté un peu celui-ci pour le rendre plus lisible :

/*
This query will retrieve churches at max distance of 50m of a pharmacy in the area
*/

Ensuite nous avons explicité une sortie de type json (un format de données plat), et une limite de requête sur le serveur à 25s.

[out:json] [timeout:25];

La requête proprement dite vient ensuite :

node({{bbox}})[amenity=pharmacy]->.pharmacy;

{{bbox}} signifiant “dans la zone visible à droite”.

Par convention, une pharmacie est déclarée dans OpenStreetMap en tant que node (noeud), affublé d’une valeur spécifique amenity, correspondant à la chaîne de caractères ‘pharmacy’.

Nous allons donc chercher dans la zone à droite, tous les noeuds, dont la valeur amenity possède la chaîne « pharmacy.So we first look for every node in this area that as this specific value and insert them in a variable called ‘pharmacy’ :

->.pharmacy;

Puis nous cherchons une église.

(
   way(around.pharmacy:50)[amenity=place_of_worship];
   node(around.pharmacy:50)[amenity=place_of_worship];
 );

Une église a une valeur amenity avec la chaîne de caractères “place_of_worship”, mais peut également être un node ou une way (c’est plutôt rare…), dans OSM.

on précise ensuite la distance en mètres :

around.pharmacy:50

 (._;>;);
 out meta;

Les deux dernières lignes correspondent à l’intersection de ces critères.

Une fois le script entré, on appuie sur « execute »

Ce qui nous donne ce résultat :

OverPass-Turbo exemple sur OpenFacto.fr

Il ne s’agit là que d’un simple exemple de requête.

Et bien évidemment, cette requête sera d’autant plus efficace que votre zone de recherches sera détaillée. C’est pour cela qu’il est important d’aider le projet OpenStreetMap, mais aussi de participer et d’encourager la participation à ce projet.

Quelques ressources complémentaires sur ce langage de requêtes :

Ce tutoriel sur Github est aussi très pratique.

Amusez-vous bien !

P.S. : Plein de remerciements à Eric Pommereau pour son travail toujours inspirant.

P.P.S : ce billet est basé sur un billet initialement posté sur mon blog personnel.

Géolocalisation du Moyen-Orient – le guide

Géolocalisation du Moyen-Orient – le guide

Parce que le Moyen-Orient ca n’est pas que la guerre et cela reste très envoûtant, Capteurs Ouverts fait un quizz de géolocalisation tous les jeudis avec un double objectif: se faire l’oeil aux paysages de la région et prendre connaissance de plusieurs outils et techniques pour s’exercer à la géolocalisation.

Pourquoi faire de la géolocalisation d’images et de vidéo? Pour vérifier si des événements ont vraiment eu lieu (où et quand), pour solidifier un faisceau de preuves (la Cours Pénale Internationale a déjà publié un mandat d’arrêt sur base de vidéos de réseaux sociaux).

Attention – cette page sera mise à jour régulièrement avec les solutions.

Erbil, Kurdistan irakien, @36.1892907,44.009303

Pour commencer il faut identifier les éléments remarquables et uniques sur la photo: ici des portraits et des éléments architecturaux.

On peut donc chercher sur internet les portraits des dirigeants et le drapeau qui donnent le Kurdistan

Les dirigeants du Moyen Orient – cherchez l’erreur….

La localisation (Erbil et Citadelle) précise peut être identifiée de plusieurs façons 1) l’utilisation de la fonctionnalité image de google/ yandex / tinyeye et l’extension RevEye est bien pratique 2) En recherchant des mots clefs Kurdistan + carpets + shop

Les coordonnés gps approximatives s’obtiennent en utilisant la fonction street view de Google Map (Le petit bonhomme orange).

Beyrouth, Liban @33.9016932,35.4902109 

Suivant la méthodologie initiale, on isole les éléments remarquables de la photo: un paysage en bord de mer, la jetée et des immeubles sur la droite.

L’utilisation de reverse image permet d’obtenir des indices de localisation: Liban et Beyrouth.

L’observation de google map montre en effet un grand front de mer.

En utilisant Google Street View, l’intégralité du bord de mer est disponible et permet donc d’essayer de trouver les éléments de la photographie initiale.

Téhéran, Iran, @35.7761143,51.4134674

Sans déroger à la règle, il s’agit d’isoler dans un premier temps les éléments uniques de la photo: ici un paysage urbain avec de la végétation, des montagnes en fond, des éléments architecturaux, une dome bleu. Cette méthode de départ a deux avantages: elle permet de passer du temps à identifier des détails uniques et face à une image difficile offre une démarche systématique pour démarrer.

Dans ce cas, la tour étrange à gauche est l’élément unique de départ. Une recherche de liste des buildings les plus hauts au Moyen Orient nous donne la réponse. Il s’agit de la tour Milad à Téhéran.

Pour progresser à l’étape suivante, il s’agit de déterminer à partir de la Tour Milad le périmétre potentiel de couverture de l’espace jusqu’au point de vue du photographe. L’idée est de réduire le périmètre de recherche des autres éléments remarquables à quelques quartiers de Téhéran. Les deux cercles bleus permettent de délimiter la photo: les montagnes à droit et la tour à gauche. Les autres éléments architecturaux se trouvent donc entre ces deux points.

L’étape suivante est de trouver la localisation du building noir qui pourrait être au niveau des quartiers de Vanak, Saadat Abad. Le bâtiment étant grand sur la photo, cela veut dire qu’il est prêt du photographe et plutôt loin de la Tour Milad. Cela vaut le coup donc de survoler la carte en commencant par les quartiers au milieu du carré jaune et entre les deux lignes bleues.

On tombe donc sur le ministère de l’énergie aux coordonnées suivantes: @35.7734441,51.4068829. En zoomant sur les coordonnées, il est facile de voir autour un bâtiment, l’hôpital Rajaie qui correspond architecturalement à la photo initiale. Le photographe obtient une perspective où l’hôpital est positionnement devant le Ministère. On peut voir sur la photo initiale qu’il y a une rue entre le photographe et l’hôpital. En tracant donc une flèche, on obtient la Tour Mellat avec un degrès de confiance assez élevé.