Mathis Hammel Profile picture
May 29 33 tweets 11 min read Twitter logo Read on Twitter
THREAD #OSINT - Comment j'ai découvert un réseau d'entreprises fictives sur LinkedIn qui administre des centaines de faux profils.

La semaine dernière, j'ai reçu une invitation LinkedIn de ce profil qui m'a tout de suite paru suspect.

Je vous explique ⤵️ Profil LinkedIn de Richard ...
Pas de chance pour Richard, j'ai beaucoup travaillé sur les faux visages générés par intelligence artificielle et je sais les reconnaître en un coup d'oeil.

L'indicateur le plus évident, c'est la position des yeux : certaines IA vont toujours les placer au même endroit. Photo de profil de Richard ...
Par curiosité, je vais jeter un oeil à la page de Digitize, l'entreprise pour laquelle travaille Richard.

Et là, énorme surprise : parmi les 43 employés de l'entreprise, la quasi-totalité présente une photo de profil qui semble générée par une IA ! 6 comptes LinkedIn avec des...
Même si vous avez encore un doute, je vous donnerai une preuve irréfutable un peu plus bas dans ce thread.

Mais pour le moment, regardez un peu ce beau trombinoscope : 32 photos de profil d'emplo...
En creusant un peu, on se rend compte que ce n'est pas seulement les comptes qui sont fictifs, mais carrément l'entreprise elle-même.

Il suffit d'aller voir son site internet pour s'en rendre compte : aucun lien ne fonctionne, et les clients semblent même inventés. Liste de 3 entreprises avec...
Dans les (faux) articles de la page d'accueil, on voit d'ailleurs qu'ils ont publié un article... en 2025 😅 "Putting people to wor...
Revenons aux profils LinkedIn. J'ai envie de connaître la date de création de tous ces comptes, pour deux raisons :
- Confirmer qu'ils ont été créés au même moment pour alimenter un réseau de bots
- Découvrir la date de mise en activité de ce réseau
Malheureusement, LinkedIn ne donne pas la date de création d'un compte.

Mais il existe une magouille permettant de récupérer l'identifiant d'un compte dans la base de données de LinkedIn, en allant fouiller le code HTML de la page : Un identifiant entouré en r...
Comme cet identifiant est séquentiel, deux comptes créés le même jour auront des numéros très proches.

Pour éviter de faire ce scraping manuellement sur tous les comptes, on peut automatiser ça très facilement avec Python. Script permettant de récupé...
Les résultats sont sans appel : la plupart des profils ont été créés récemment et de manière très groupée. Les identifiants des compte...
Pour vous donner une référence, voici la comparaison avec mes collègues de CodinGame.

En demandant à des personnes qui ont créé leur compte récemment, j'ai aussi pu placer deux identifiants de référence pour dater précisément la création de ces faux profils. Une comparaison des identif...
Je vous avais aussi promis une preuve incontestable que les photos de profil sont générées par une intelligence artificielle.

Pour ça, je dois d'abord vous expliquer quelques bases techniques sur les IA génératives.
Ici, il est question d'un réseau de neurones appelé StyleGAN2, qui apprend à générer des images à partir d'un grand nombre d'images d'entraînement.

StyleGAN2 a été rendu célèbre grâce au site ThisPersonDoesNotExist qui génère un nouveau visage à chaque refresh de la page. 6 visages générés par IA
ThisPersonDoesNotExist a cessé de fonctionner en février 2023, mais il était massivement utilisé pour créer des fausses photo de profil, notamment pour des comptes d'arnaques ou des bots d'influence politique.
Mais qu'est-ce qui explique que les visages générés par StyleGAN2 ont toujours les yeux au même endroit ?

En fait, il s'agit d'une propriété de la banque d'images qui a servi à l'entraîner.
Pour entraîner StyleGAN2, ses créateurs (des ingénieurs NVIDIA) ont utilisé le dataset FFHQ, qui contient 70 000 photos libres de droit récupérées sur Flickr.

Les photos originales sont croppées pour ne garder que le visage. Un homme parle devant un dr...Même photo, mais recadrée p...
Et cette transformation sur des photos de vraies personnes place les yeux sur le même emplacement à chaque fois. Du coup, quand StyleGAN2 va essayer de reproduire le dataset FFHQ, il va aussi placer les yeux à cet endroit !

Voici quelques images du dataset d'entraînement : Des images de personnes rée...
Maintenant, parlons du site ThisPersonDoesNotExist. Je vous disais qu'un nouveau visage était généré à chaque rafraîchissement de la page, mais ce n'est pas exactement le cas.

Pour économiser de la puissance de calcul, le site a mis en place une technique intéressante.
En fait, le serveur produit une nouvelle image chaque seconde, qui est distribuée à tous les utilisateurs faisant une requête dans ce laps de temps.

Les images ne sont donc pas uniques, si deux personnes font une requête dans la même seconde elles recevront le même visage !
Je me suis rendu compte de ça en 2021, et j'ai décidé de créer un outil qui télécharge *toutes* les images produites par ThisPersonDoesNotExist pour les mettre dans une base de données de reconnaissance faciale, qui me permet donc de déterminer si une photo provient du site.
Parmi les employés de Digitize, on trouve un certain Alan Harris. Profil LinkedIn d'Alan Harris
Et en passant sa photo dans l'outil, on trouve une correspondance parfaite téléchargée sur ThisPersonDoesNotExist le 13 février 😁

On peut donc affirmer avec certitude que Digitize utilise des photos de profil générées par une IA.
Parmi les autres indices intéressants, on trouve aussi des employés avec des noms très similaires mais sans aucun lien sur la photo ou le titre de poste.

Encore une faute d'OPSEC qui montre que ce réseau de bots est administré par des amateurs. Profil de Richa OwenProfil de Rich OwenProfil de Jo Louise OwenProfil de Jo Owen
Le réseau ne s'arrête d'ailleurs pas là.

Plusieurs éléments nous ont permis de confirmer un lien avec au moins deux autres entreprises fictives sur LinkedIn, totalisant une centaine de faux profils et environ 250 000 personnes concernées.
Si vous êtes dans le réseau LinkedIn de l'un de ces faux comptes, je vous recommande de les retirer au plus vite.

Les liens des 3 entreprises fictives sont dispo dans le tweet ci-dessous, vérifiez que vous n'avez aucun contact parmi celles-ci.
Une question subsiste : quels sont les intérêts d'administrer un tel réseau fictif sur LinkedIn ?

Plusieurs hypothèses sont valides :
1. Un scraping massif de données personnelles.

C'est un grand classique des attaques sur les réseaux sociaux. On se souviendra de l'entreprise Cambridge Analytica qui avait collecté les données de 87 millions d'utilisateurs Facebook, notamment pour appuyer la campagne Trump. Un téléphone affichant le l...
2. Des pratiques commerciales douteuses.

Nombreuses sont les entreprises qui automatisent les prises de contact sur LinkedIn pour trouver des clients potentiels. Pas impossible que Digitize soit le résultat d'une équipe de commerciaux malhonnêtes (pléonasme 😇)
3. Autre chose ?

Il y a plein d'autres utilités à avoir un réseau de plusieurs centaines de milliers de contacts.

Par exemple, en mars 2023, Google a révélé qu'un service de renseignement nord-coréen utilisait un réseau de faux recruteurs sur LinkedIn pour cibler des victimes. Lien vers l'article : https...
Cette dernière hypothèse me semble peu probable (surtout vu l'amateurisme de la démarche), mais ça servira de piqûre de rappel : faites attention avant d'accepter une demande Linkedin venant de quelqu'un que vous ne connaissez pas !
Merci d'avoir lu ce thread !

Je remercie grandement Anso de l'association @openfacto, ainsi que les étudiants de @Guardia_School (Bl1nk_, @LouNuX_, Percya et Shai) qui ont travaillé avec moi sur cette enquête ❤️

Il est possible qu'une partie 2 soit en cours d'élaboration 😇
Et pour en apprendre davantage sur StyleGAN2 et mon outil de détection de photos générées sur ThisPersonDoesNotExist, je vous renvoie vers cette conférence de 35 minutes que j'ai présentée l'an dernier sur le sujet :

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Mathis Hammel

Mathis Hammel Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @MathisHammel

Feb 8
Je suis à Stockholm cette semaine pour la conférence @Jfokus, et j'ai décidé de participer au quiz de l'un des sponsors. Je crois que j'ai gagné 😇

Petit thread de cybersécurité appliquée dans lequel je vous explique comment j'ai fait ⤵️ @MathisHammel (moi) premier...
En voyant que le classement est basé sur la rapidité, j'ai eu envie de l'automatiser pour avoir un temps surhumain.

Mais ça, c'était avant de découvrir trois failles dans l'appli ! (restez jusqu'au bout du thread, j'ai une technique de hacking ultra puissante à vous montrer)
Avant toute chose, on doit commencer par une phase de reconnaissance : comprendre le fonctionnement du site, sa surface d'attaque, les technos utilisées côté serveur, etc.

Ici très simple, je regarde simplement les requêtes envoyées par mon ordi en faisant le quiz normalement. From which company does Kot...
Read 26 tweets
Feb 3
THREAD : Les intelligences artificielles peuvent-elles coder à notre place ?

J'ai donné 5 exercices de code à ChatGPT et GitHub Copilot, voici les résultats ⤵️ ChatGPT vs. Copilot
Pour chaque exercice, je donne à l'IA un bout de code et un commentaire pour lui expliquer ce qu'elle doit faire.

J'ai choisi des cas simples, avec des problématiques réalistes que l'on peut rencontrer dans des projets de dev.
EXERCICE 1

On commence en douceur avec un échauffement Python, la fonction doit télécharger une image puis calculer son hash. Une fonction utilitaire très classique qui s'écrit en quelques lignes. def fetchAndHashImage(url):     '''     returns the SHA512 h
Read 26 tweets
Jan 18
🌶️ Hot take (+ mini thread)

Les imposteurs dans la tech détestent les évaluations CodinGame, parce que c'est beaucoup plus facile de mentir sur un CV que sur un test de code. 1/6 Un rapport de test d'entretien CodinGame en langage Java et
Évidemment, il existe plein d'autres raisons de ne pas aimer ces tests, notamment le stress.

Mais si vous refusez toute évaluation de vos compétences en considérant qu'un CV est suffisant pour vous connaître, vous finirez dans des équipes remplies d'imposteurs.
Comprenez bien que ces évaluations sont créées pour vous mettre en difficulté et tester les limites de vos compétences : même si c'est frustrant, il est normal (voire attendu) de ne pas obtenir 100%.

La barre pour les entreprises se situe généralement à 40-60%. Un histogramme présentant la répartition des scores sur un
Read 6 tweets
Jan 7
Allez c'est parti pour un thread des meilleures et des pires inventions high-tech que j'ai pu voir au #CES2023 !

Accrochez-vous, y'a du lourd cette année ⤵️
Ce concurrent à AmbiLight qui fonctionne sur n'importe quelle TV grâce à une petite caméra qui filme l'écran

(attention on a déjà épuisé 20% des innovations stylées)
J'ai testé la machine à tatouages instantanés, je suis désormais un vrai gamer de Vegas
Read 23 tweets
Dec 19, 2022
Trop beau pour être vrai ?

Hier soir, j'ai partagé un compte qui a prédit le score exact des 63 matchs de la coupe du Monde.
En fait, je suis le créateur de @WorldCupAI 😇

Voici un petit thread pour vous expliquer comment j'ai fait ça ⤵️
Malgré les énormes progrès de l'IA dans la dernière décennie, on est encore assez loin d'une machine omnisciente qui arrive à prévoir des résultats aussi incertains que ça.

Comme beaucoup s'en sont doutés, les prédictions de @WorldCupAI sont manipulées.
En fait, c'est super facile de tweeter le résultat d'un match en avance : il suffit de poster tous les résultats possibles et de supprimer a posteriori ceux qui étaient faux !

La finale d'hier par exemple, c'est 300 images comme ça sur mon disque dur : Plein d'images avec différentes prédictions du match Argen
Read 8 tweets
Nov 7, 2022
Pour prouver que les administrateurs Mastodon ont accès à votre mot de passe, j'ai déployé ma propre instance en ajoutant une backdoor très simple sur le serveur.

bad-mastodon.h25.io

Inscrivez-vous dessus si vous voulez vérifier, je publierai tous vos comptes/mdp ce soir.
Et pitié arrêtez de me faire dire le contraire de ce que je dis : oui, cette faille peut exister sur n'importe quel site, même Twitter ou Google.

Ce que je souligne c'est la décentralisation de la modération et l'absence d'audit qui peut donner lieu à des abus comme celui-ci.
Il y a eu 150 inscrits sur mon serveur Mastodon aujourd'hui !

Comme annoncé, j'avais mis une backdoor dans le code pour récupérer et publier tous vos mots de passe, les voici : Image
Read 5 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us on Twitter!

:(