Vue lecture

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.

Payloads All The Things - La ressource préférée des hackers éthiques

En octobre 2016, un développeur suisse connu sous le pseudo swisskyrepo a commencé à compiler ses notes de pentester dans un dépôt GitHub. Rien de révolutionnaire au départ, juste un mec qui en avait marre de chercher la même injection SQL pour la 50ème fois dans ses notes. Mais ce qui est cool c’est qu’au fur et à mesure des années, il a structuré ça proprement avec une section par type de vulnérabilité, des README clairs, des fichiers Intruder pour Burp Suite, des exemples concrets…etc.

Ça s’appelle Payloads All The Things, et c’est accessible ici .

Ce qui était donc au départ un simple carnet de notes personnel est devenu THE référence mondiale en cybersécurité offensive avec des centaines de contributeurs qui ajoutent quotidiennement de nouvelles techniques. C’est devenu la pierre de Rosette (pas la charcuterie, renseignez-vous !! lol) de la sécurité offensive, celle qu’on cite dans tous les cours de certification OSCP, celle qu’on consulte pendant les CTF, celle qu’on recommande aux débutants…

Avant PayloadsAllTheThings, le savoir en cybersécurité offensive était soit verrouillé dans des formations hors de prix à 5 000 boules, soit éparpillé dans des recoins obscurs du web, soit jalousement gardé par des pentesters qui pètent plus haut que leur cul… Des pêt-testeurs quoi…

SwisskyRepo a d’ailleurs fait un choix radical qui est tout mettre en open source, sous licence MIT, accessible à tous. Et le contenu, c’est du lourd !

On y trouve tout ce dont un pentester peut avoir besoin : SQL Injection avec toutes les variantes possibles (MySQL, PostgreSQL, Oracle, MSSQL…), XSS avec les bypasses de filtres, SSRF avec les techniques d’exfiltration, Command Injection, OAuth Misconfiguration, GraphQL Injection, File Inclusion, Authentication Bypasses, API Key Leaks…etc… La liste est hallucinante.

Chaque section est structurée comme un cookbook technique avec le contexte de la vulnérabilité, les payloads classés par type, les bypasses pour contourner les protections, des exemples concrets, et les références vers les CVE ou les articles de recherche.

Par exemple, si vous voulez exploiter un serveur Redis mal configuré, il y a une section pour ça. Si vous voulez comprendre comment contourner un WAF, pareil ! Et si vous cherchez à pivoter dans un réseau interne après avoir compromis une machine, tout est documenté en anglais sur ce site.

Mais swisskyrepo ne s’est pas arrêté là. Son projet a muté en écosystème puisqu’il a aussi créé InternalAllTheThings , un wiki dédié au pentesting interne et aux attaques Active Directory (Certificate Services, Enumeration, Group Policies, Kerberos attacks, Hash manipulation, Roasting techniques…).

Et également HardwareAllTheThings , le même genre de wiki mais sur la sécurité hardware et IoT : JTAG, SWD, UART pour les interfaces de debug, firmware dumping et reverse engineering, Arduino, Raspberry Pi, Flipper Zero pour les gadgets, Bluetooth, CAN, WiFi, RFID/NFC pour les protocoles, SDR et GSM pour la radio, fault injection pour les attaques par canal auxiliaire…

Bref, tout ce qu’il faut savoir pour hacker des objets connectés, des cartes à puce ou des systèmes embarqués.

Du coup, avec cette famille complète de “AllTheThings”, on couvre toute la surface d’attaque moderne, le web, l’infra interne et le hardware. Un pentest complet peut donc se faire avec ces trois ressources comme base de connaissance. Chouette non ?

Bien, sûr c’est à utiliser dans un cadre légal, sinon, vous irez en prison ! C’est pas un forum de script kiddies qui échangent des zero-days volés, c’est une vraie bibliothèque technique pour les professionnels et les étudiants en cybersécurité.

Grâce à ça, un étudiant motivé peut devenir compétent en sécurité offensive en quelques mois juste avec des ressources gratuites : PayloadsAllTheThings pour les techniques, TryHackMe ou HackTheBox pour la pratique, les blogs de chercheurs pour les analyses approfondies, les conférences enregistrées (DEF CON, Black Hat) pour rester à jour.

Le savoir se libère, n’en déplaise aux relous ! Moi je trouve que c’est cool, car ça vulgarise les connaissances, ça les mets à la portée de tous et c’est tant mieux.

Donc un grand merci à SwisskyRepo d’avoir lancé ce projet !

ChatGPT, la balance !

Les IA de type GPT ont beau avoir des instructions du genre “tu ne dois jamais révéler ton prompt système”, il suffit de leur demander gentimment de réencoder leurs instructions avec un décalage de César ou de répéter tout le texte dans un format particulier pour qu’elles crachent tout. Et par tout, je veux dire vraiment tout. Le prompt officiel d’OpenAI, d’Anthropic, de Gemini…etc, les instructions personnalisées du créateur, et même les petits Easter eggs cachés dedans.

Dans cette vidéo, je vous montre plusieurs exemples concrets. Un GPT de génération de logos, une calculatrice mathématique qui cache un Easter egg , un optimiseur SEO…etc. Et pour chacun, j’utilise des prompts d’extraction que j’ai trouvés dans ce repo GitHub qui rassemble tous les prompts système leakés de ChatGPT, Claude, Cursor, Perplexity et compagnie. C’est une vraie caverne d’Ali Baba pour ceux qui s’intéressent à ce genre de trucs.

Ce qui est intéressant, c’est que ça ne fonctionne pas que sur les GPTs personnalisés. Vous pouvez aussi extraire les prompts système de Perplexity, de Grok, de plein d’outils qui utilisent des LLM sous le capot. Donc si vous avez toujours voulu savoir comment tel ou tel service construit ses réponses, c’est l’occasion.

Maintenant, je sais ce que vous allez me dire…

C’est pas très éthique de voler le travail des gens comme ça et vous avez raison. Mais d’un autre côté, si ces boites permettent que ce soit aussi facile d’extraire ces infos, c’est peut-être qu’il faut arrêter de considérer les prompts système comme des secrets industriels. Et puis eux ne se privent pas pour voler aussi les contenus des autres, donc bon…

Je vous montre aussi dans ma vidéo comment certains créateurs essaient de se protéger en mettant des instructions anti-extraction, mais ça ne marche pas terrible.

Bref, j’espère que vous y apprendrez quelques trucs. Et je voudrais aussi dire un grand merci aux Patreon sans qui cette vidéo, ce blog et moi-même n’existeraient pas ! Merci pour le soutien !

GitType - Le jeu qui vous fait retaper votre propre code (pour redevenir bon !!)

Vous savez ce moment où vous regardez votre historique Git et vous vous demandez qui est le débile qui a écrit ce code dégueulasse ?

Ah bah ouais, c’était vous il y a 3 mois ^^. Eh bien GitType a trouvé la meilleure des thérapies qui est de vous faire retaper tout ça, lettre par lettre, comme une punition de primaire version développeur, totalement gamifiée avec des points, un chrono, et la possibilité de mesurer à quel point vos doigts sont devenus flasques depuis que Copilot fait tout le boulot à votre place.

Le tagline du projet, c’est “Show your AI who’s boss: just you, your keyboard, and your coding sins”. Et c’est pas une blague, c’est un manifeste car pendant que Copilot, ChatGPT, Claude Code et compagnie écrivent du code à notre place, GitType vous fait faire exactement l’inverse… il vous force à retaper du code pour redevenir bon !

Et contrairement aux tests de frappes classiques comme Ttyper ou tt qui vous font taper du texte générique, GitType utilise du VRAI code source. Votre code, celui de vos repos préférés, ou des repos trending de GitHub. Comme ça, vous ne vous entraînez pas sur du “ the quick brown fox jumps over the lazy dog ” à la con, mais sur vos propres merdes spaghettico-syntaxiques en Rust, TypeScript, Python ou Go.

Le jeu vous propose plusieurs modes. Y’a le mode Normal pour vous échauffer tranquillement, le Time Attack quand vous voulez vous mettre la pression, et des niveaux de difficulté de Easy à Zen pour ceux qui veulent méditer en tapant du code. Le tout avec un tracking en temps réel de votre WPM (words per minute) et de votre précision. Comme ça, plus vous progressez, plus vous montez dans le ranking avec des titres de développeur qui évoluent.

GitType supporte plus de 15 langages de programmation et propose plus de 15 thèmes visuels en mode Dark ou Light, avec possibilité de personnaliser le vôtre. L’installation est simple…

curl -sSL https://raw.githubusercontent.com/unhappychoice/gittype/main/install.sh | bash

Ou via Brew, ou avec un téléchargement direct de binaires. Ça prend 30 secondes chrono. Autre truc sympa aussi, vous pouvez cloner n’importe quel repo GitHub directement depuis le jeu pour vous entraîner dessus.

Comme ça, vous pourrez réaliser votre fantasme le plus humide, à savoir retaper le code de Linus Torvalds !

Cet outil va comme ça l’air de rien vous réapprendre à taper du code vous même, parce que faut bien le reconnaitre, depuis que tout le monde s’est mis au vibe coding, c’est difficile de dire à nos doigts et nos cerveaux de s’y remettre. Avec GitType, vos doigts retrouvent leurs réflexes, vous mémorisez mieux la syntaxe, vous devenez plus rapide au clavier, votre haleine redevient fraiche et vous chopez enfin des matchs sur Tinder, c’est SÛR !!

Ce projet est dispo en open-source sous licence MIT et franchement, vu comment nos IA nous assistent de partout, c’est pas plus mal de garder un peu de muscle mémoire au cas où…

Source

Pensez à activer les versions immuables sur GitHub pour éviter les problèmes de sécurité

Vous saviez qu’en ce moment, les attaques sur la supply chain faisaient des ravages ? En effet, les attaquants exploitent régulièrement la possibilité de modifier des tags existants pour injecter du code malveillant dans les pipelines CI/CD.

Mais heureusement, GitHub a enfin sorti LA fonctionnalité qui peut empêcher ce carnage : les Immutable Releases et je pense que c’est le genre de truc que tous les développeurs devraient activer illico sur leurs repos. Je vais vous expliquer pourquoi.

En fait, une fois que vous publiez une release avec cette option activée, plus personne ne peut toucher ni aux assets ni au tag associé. C’est comme si vous mettiez votre release dans un coffre-fort dont vous jetez la clé. Même vous, en tant que mainteneur, vous ne pouvez plus modifier les binaires ou déplacer le tag vers un autre commit.

D’après la documentation officielle , chaque release immuable génère automatiquement une attestation cryptographique. Cette attestation contient le SHA du commit, le tag et la liste des assets. Vos utilisateurs peuvent vérifier l’intégrité de ce qu’ils téléchargent en s’assurant que cela correspond exactement à ce que vous avez publié.

Pour activer cette option merveilleuse, c’est dans les settings de votre repo ou de votre organisation. Une fois activé, toutes les nouvelles releases deviennent alors automatiquement immuables. Les anciennes releases restent toutefois modifiables (pour éviter de casser vos workflows existants), mais bon, c’est mieux de migrer progressivement.

Attention quand même, il y a quelques pièges à éviter. Premièrement, vous ne pouvez plus ajouter d’assets après publication. Donc si votre CI upload les binaires après avoir créé la release, il faut inverser : Créez d’abord une draft release, uploadez les assets, puis publiez. Deuxièmement, si vous supprimez une release immuable, vous ne pourrez JAMAIS réutiliser le même tag. C’est définitif.

Pour les projets qui utilisent des tags de version majeure style v1 qu’ils mettent à jour régulièrement (coucou GitHub Actions), pas de panique. Vous pouvez continuer à utiliser cette pratique pour les tags qui ne sont pas associés à des releases. L’immuabilité ne s’applique qu’aux releases publiées, pas aux tags simples.

Les équipes de sécurité recommandent d’ailleurs d’activer cette fonctionnalité sur tous les repos qui publient du code versionné. C’est particulièrement critique pour les bibliothèques open source, les GitHub Actions, et tout ce qui est consommé par d’autres projets. En gros, si votre code finit dans la supply chain de quelqu’un d’autre, vous leur devez cette protection.

Le truc cool aussi, c’est que ça protège contre les erreurs humaines. Combien de fois j’ai vu des mainteneurs qui écrasaient accidentellement une release avec la mauvaise version ? Ou qui supprimaient un asset critique par erreur ? Avec les Immutable Releases, ces accidents appartiennent au passé.

Pour les entreprises, c’est un argument de vente en or. Ça permet de garantir à vos clients que vos releases ne peuvent pas être altérées après publication, c’est un niveau de confiance supplémentaire surtout dans des secteurs régulés où la traçabilité est cruciale.

Bref, GitHub est en train de déployer progressivement cette fonctionnalité en public preview. Pour l’instant, il faut l’activer manuellement pour chaque repo, mais ils travaillent sur une API pour permettre l’activation en masse. D’ici là, prenez donc 2 minutes pour l’activer sur vos projets critiques.

Voilà, après les dégâts causés par les attaques de type tag hijacking ces dernières années, ne pas activer les Immutable Releases sur vos repos publics, c’est comme laisser votre porte d’entrée grande ouverte avant de partir en vacances. Vous pouvez le faire, mais ne venez pas pleurer si ça tourne mal.

SkiftOS - Recoder la roue c'est chouette aussi

Créer un système d’exploitation complet from scratch pour s’amuser, c’est le genre de projet un peu foufou qu’on ne voit plus tellement aujourd’hui. Pourtant SkiftOS existe !

SkiftOS c’est un OS écrit entièrement depuis zéro, et pas un n-ième fork de Linux ou d’une distribution BSD. Non, c’est un vrai OS avec son propre kernel, son interface graphique et même les bases d’un moteur de navigateur web.

J’ai découvert ce projet en me baladant sur les Top GitHub et ça m’a rappelé cette époque d’avant ma naissance où créer son OS était un genre de rite de passage pour tous les développeurs passionnés. Sauf qu’ici, on n’est plus dans les années 70 et le projet utilise du C++20 moderne avec une architecture microkernel très propre.

Et malgré son statut de projet “hobby”, il fonctionne réellement. Il tourne pour le moment sur du hardware x86_64 et l’équipe travaille sur le support RISC-V.

L’architecture modulaire du projet est d’ailleurs particulièrement bien pensée. Chaque module a son petit nom, c’est rigolo. Hjert gère le microkernel avec les fonctions essentielles telles que la gestion mémoire, l’ordonnancement et l’IPC (Inter-Process Communication). Karm fournit la bibliothèque C++ de base sans dépendre de la STL (Standard Template Library) . KarmUI propose un framework d’interface réactive. Hideo s’occupe du bureau et de l’environnement graphique. Et Vaev ambitionne de devenir un moteur de navigateur web complet.

Pour compiler tout ça, l’équipe a également développé CuteKit, leur propre système de build qui gère les dépendances et la cross-compilation. Bah oui, quand on réinvente un OS, autant réinventer aussi tous les outils pour le construire.

Cette approche “tout fait maison” rend en tout cas le projet fascinant d’un point de vue pédagogique. Car oui le code source est disponible sur GitHub donc si vous voulez comprendre comment fonctionne un OS moderne sans vous perdre dans les millions de lignes de code de Linux ou de Windows (pour les vieilles versions qui ont leakée), c’est une excellente opportunité pour apprendre. Pas besoin donc d’être Microsoft ou Apple pour développer un système d’exploitation fonctionnel.

Faut “juste” de la motivation, du temps, des compétences en C++ moderne, et surtout l’envie de construire quelque chose de différent.

Vous l’aurez compris, SkiftOS ne remplacera probablement jamais votre OS principal, c’est clair mais pour les développeurs curieux qui veulent comprendre les entrailles d’un système d’exploitation, ou pour ceux qui cherchent un projet open source technique sympa où contribuer, c’est une sacrée mine d’or.

Et qui sait, peut-être que dans quelques années on parlera de SkiftOS comme on parle aujourd’hui des débuts de Linux…

1517 clones open source de vos jeux cultes préférés - Le trésor caché des gamers nostalgiques

Depuis que j’ai découvert OSGameClones, je kiffe chercher et retrouver certains de mes jeux d’enfance en version open source et bien sûr gratuite !

Car oui, le projet OSGameClones c’est un peu la caverne d’Ali Baba pour tous ceux qui ont grandi avec une manette dans les mains (ou un clavier pour ma part). Le site répertorie méticuleusement tous les remakes, clones et réimplémentations open source de jeux commerciaux, et le meilleur c’est que la plupart sont jouables sur des machines modernes, y compris Linux et même votre Steam Deck.

Vous y retrouvez donc des pépites comme OpenRCT2 pour RollerCoaster Tycoon 2, qui non seulement fait tourner le jeu original mais ajoute le support des hautes résolutions et du multijoueur. Ou encore OpenMW qui réimplémente complètement le moteur de Morrowind avec des graphismes améliorés. Sans oublier CorsixTH pour Theme Hospital, qui fonctionne maintenant sur n’importe quel OS moderne.

Le projet est hébergé sur GitHub , et est activement maintenu. Tout est organisé dans des fichiers YAML structurés qui catégorisent les jeux par langages de programmation (50+ langages différents !), genres (30+ catégories), et même par thèmes comme fantasy ou sci-fi.

Ce qui est vraiment cool je trouve, c’est surtout la distinction que fait le site entre les différents types de projets. Un “remake” c’est quand l’exécutable et parfois les assets sont recréés en open source. Un “clone” c’est un jeu très similaire ou inspiré par l’original. Et parfois on trouve même des “projets officiels” où les créateurs originaux ont libéré le code source eux-mêmes.

D’ailleurs, pour les fans de jeux de stratégie, vous avez OpenXcom qui réimplémente UFO: Enemy Unknown et X-COM: Terror From the Deep. Pour les amateurs d’action, DevilutionX fait revivre Diablo sur pratiquement n’importe quelle plateforme. Et si vous êtes plutôt RPG, Daggerfall Unity a recréé tout Daggerfall dans le moteur Unity avec des mods et des améliorations graphiques de malade.

Tous ces projets sont utiles pour les joueurs ayant des machines peu puissantes ou pour ceux qui veulent faire tourner leurs classiques préférés sous Linux. C’est aussi top pour la préservation du patrimoine JV, vu que beaucoup de ces vieux jeux ne fonctionnent de toute façon plus sur les systèmes modernes.

Un autre aspect sympa, c’est que comme tout est open source, n’importe qui peut contribuer à améliorer ces jeux. Vous pouvez donc corriger des bugs qui existaient dans l’original, ajouter de nouvelles fonctionnalités, ou même porter le jeu sur de nouvelles plateformes.

Et pour ceux qui veulent explorer d’autres ressources similaires, il existe aussi Awesome Game Remakes sur GitHub, qui est une liste maintenue activement de remakes open source ainsi que cette page de SensCritique qui recense des remakes open source vraiment chouettes, même si la plupart nécessitent les données du jeu original pour fonctionner.

Puis quand on voit des projets comme Julius pour Caesar III, fheroes2 pour Heroes of Might and Magic II, ou OpenTTD pour Transport Tycoon Deluxe, je le dit que la communauté open source fait un boulot incroyable pour préserver et améliorer ces classiques. Ces développeurs permettent à toute une génération de redécouvrir ces jeux mythiques sans avoir à galérer avec DOSBox ou des émulateurs.

Le plus impressionnant reste peut-être re3 et ses dérivés qui ont reverse-engineered GTA III et Vice City, même si Rockstar n’a pas vraiment apprécié l’initiative et l’a fait disparaitre. Ou OpenJK qui maintient et améliore Jedi Academy et Jedi Outcast pour la communauté Star Wars.

Voilà et si vous cherchez par où commencer, le site propose des tags “complete” et “playable” pour identifier rapidement les projets les plus aboutis. Vous pouvez aussi filtrer par langage de programmation si vous voulez contribuer à un projet dans votre langage de prédilection.

Bref, OSGameClones c’est la ressource ultime pour tous les nostalgiques du gaming qui veulent revivre leurs souvenirs d’enfance tout en profitant des bénéfices du monde de l’open source !

GHBuster - Le détecteur de comptes GitHub bidons de DataDog

Saviez-vous qu’il y a plus de 3,7 millions de fausses étoiles qui polluent GitHub , et que 16% des repos étaient déjà touchés fin 2024. C’est pour cela que DataDog a sorti GHBuster , un outil qui détecte justement les comptes et repos GitHub suspects grâce à des algos heuristiques bien senties.

Le principe c’est qu’au lieu de chercher bêtement des patterns, GHBuster analyse plusieurs comportements louches en même temps. Genre, il repère quand un repo a plein d’étoiles venant de comptes créés le même jour et check aussi d’autres trucs sympas comme les commits avec des emails non liés au profil GitHub (pratique pour repérer les acteurs malveillants qui utilisent plusieurs comptes bidons). Il trouve aussi les utilisateurs qui n’ont que des forks de repos supprimés, ou ceux dont tous les commits viennent d’emails non vérifiés.

L’installation est super simple pour ceux qui veulent tester :

uv pip install "git+https://github.com/DataDog/ghbuster.git"
export GITHUB_TOKEN=votre_token_github
ghbuster

Et le problème de ces fausses “étoiles”, c’est un phénomène qui prend de l’ampleur et ces repos vérolés contiennent souvent des malwares cachés dans des logiciels piratés, des cheats de jeux ou des bots crypto.

DataDog ne s’arrête pas là car ils ont aussi intégré GHBuster dans leur suite de sécurité Cloud SIEM. Ça permet de monitorer en temps réel les activités suspectes sur GitHub, comme l’ajout de clés SSH depuis des IP douteuses ou la désactivation du secret scanning.

Pour les devs et les entreprises, c’est un vrai casse-tête car comment faire confiance à un repo avec 10 000 étoiles si la moitié sont bidons ? GHBuster apporte heureusement une partie de la réponse en permettant d’identifier rapidement les patterns suspects.

DataDog recommande aussi de configurer vos filtres web pour surveiller le trafic GitHub et détecter les téléchargements anormaux. Utilisez des outils de scan automatique comme GitGuardian ou GitHub Advanced Security pour repérer les malwares potentiels dans le code.

Je trouve ça cool de voir des boîtes comme DataDog partager leurs outils en open source et j’espère que GHBuster vous aidera à y voir un peu plus clair dans ce bazar sur GitHub.

Memflix – Transformez vos données en vidéos MP4 consultables instantanément

Ça va, pas trop chaud ? Alors tant mieux, parce que je vais vous faire avoir une petite suée tellement ce truc est cool ! Ça s’appelle Memflix et c’est une bibliothèque JavaScript qui transforme vos documents texte en… fichiers vidéo MP4 ! Oui, vous avez bien lu. Et le plus fou, c’est que vous pouvez ensuite faire des recherches sémantiques ultra-rapides dans ces vidéos.

L’idée est tellement simple qu’elle en devient géniale car au lieu de stocker vos données dans une base de données traditionnelle, Memflix encode tout dans des QR codes qui sont ensuite intégrés frame par frame dans une vidéo. Résultat ? Un stockage 10 fois plus efficace qu’une base de données classique et des recherches qui prennent moins d’une seconde, même sur des millions de chunks de texte.

Anthropic Cookbook - Claude devient encore plus accessible aux devs

À l’époque, quand on voulait faire de l’IA, fallait un doctorat et 6 mois pour comprendre TensorFlow. Et aujourd’hui ? C’est Claude qui devient enfin accessible au commun des mortels (au moins pour les mortels un peu dev ^^).

L’Anthropic Cookbook, qu’est-ce que c’est exactement ? Eh bien imaginez un bouquin de recettes, mais au lieu de faire des crêpes, vous y apprendrez à transformer Claude en assistant développeur. C’est une collection officielle de notebooks Jupyter qui vous montre comment exploiter Claude dans vos projets sans vous arracher les cheveux.

Développeurs, attention à l'empoisonnement de vos IA !

Si vous faites partie des 97% de dev à grosses lunettes qui utilisent des assistants IA comme GitHub Copilot, Windsurf ou Cursor, ce que vous allez lire va probablement flinguer votre journée…

Et oui parce que si vous pensiez que votre assistant IA préféré était votre meilleur atout pour coder, sachez que des chercheurs en sécurité viennent de découvrir qu’en réalité, tous ces outils pourraient se comporter en cheval de Troie placé directement dans votre IDE. Et le plus flippant c’est que vous ne verriez absolument rien venir, même en scrutant le code ligne par ligne.

❌