Files
varlog/_cache/similar/826d34e2-a73f-4bdd-8df6-5a28bb1e8602.json
T
2026-05-15 10:37:48 +02:00

1 line
21 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
[{"uuid":"b1b65527-7d10-44e2-814e-63d9c05a6d54","slug":"etc-profile-d","title":"/etc/profile.d/","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-19 06:56:02","created_at":"2023-02-19 06:56:02","updated_at":"2023-02-19 06:56:02","tags":[],"plain":"est un répertoire qui contient des fichiers shell (.sh) qui sont exécutés au démarrage de la session pour tous les utilisateurs du système. Ces fichiers peuvent contenir des variables d'environnement, des alias de commandes, des fonctions personnalisées, et d'autres paramètres de configuration pour la session de l'utilisateur. Ce genre de répertoire est souvent utilisé par les systèmes d'exploitation basés sur Linux pour permettre une meilleure gestion des fichiers de configuration, il permet de séparer les configurations en plusieurs fichiers et de les organiser dans des sous-répertoires. Cela facilite l'ajout, la suppression ou la modification de configurations spécifiques sans avoir à toucher aux fichiers de base. Il est possible de trouver ce genre de répertoire sur des distributions Linux comme Debian, Ubuntu, Fedora, RedHat, entre autres. Il est important de noter que cela dépend des paramétrages de l'administrateur système de chaque distribution. Voir également"},{"uuid":"262637cd-5486-44f1-8453-09de2a6db259","slug":"etc-profile","title":"/etc/profile","category":"Informatique","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-19 06:55:46","created_at":"2023-02-19 06:55:46","updated_at":"2023-02-19 06:55:46","tags":[],"plain":"est un fichier de configuration qui est exécuté pour tous les utilisateurs lors de l'ouverture d'une session sur un système basé sur Linux. Il est généralement utilisé pour définir des variables d'environnement, des alias et des chemins d'accès pour tous les utilisateurs sur le système. Il peut également être utilisé pour exécuter des commandes automatiquement lors de l'ouverture d'une session, comme la configuration de paramètres de terminal, l'affichage d'un message de bienvenue, ou l'exécution d'autres tâches de démarrage. Il est important de noter que les modifications apportées à ce fichier auront un impact sur tous les utilisateurs du système. Il est donc important de s'assurer que les modifications apportées sont appropriées pour tous les utilisateurs et de les tester en conséquence avant de les mettre en production. Il est également important de conserver une sauvegarde de ce fichier avant de le modifier, pour pouvoir le restaurer en cas de problème. Voir également"},{"uuid":"80069e1f-202a-407e-91f5-71344ba4fd6b","slug":"20230113-afficher-le-nombre-de-mise-a-jour-avec-dnf-a-l-ouverture-de-session","title":"Afficher le nombre de mise à jour en attente avec DNF à l'ouverture de session","category":"Journal geek","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-15 22:02:45","created_at":"2023-02-15 22:02:45","updated_at":"2023-02-15 22:02:45","tags":[],"plain":"Il y a plusieurs façons d'exécuter une commande automatiquement lors de l'ouverture d'une session sur un système basé sur Linux :\nAjoutez la commande dans le fichier .bashprofile : Vous pouvez ajouter la commande que vous voulez exécuter automatiquement dans le fichier de votre répertoire personnel. Ce fichier est exécuté lorsque vous ouvrez une session de terminal.\nUtilisez un gestionnaire de sessions : Les gestionnaires de sessions tels que systemd ou peuvent être utilisés pour exécuter des commandes automatiquement lors de l'ouverture d'une session. Par exemple, vous pouvez utiliser systemd pour créer un service qui exécute une commande automatiquement au démarrage.\nUtilisez le fichier /etc/profile : Ce fichier est exécuté pour tous les utilisateurs lors de l'ouverture d'une session, vous pouvez donc y ajouter la commande que vous souhaitez exécuter automatiquement. Avec dnf (Dandified Yum) vous pouvez utiliser la commande pour afficher le nombre de mises à jour en attente. Pour afficher cette information dans le fichier , vous pouvez utiliser une commande de type : echo \"Il y a $(dnf check-update -q -y | grep -c \"^.\") mise(s) à jour en attente\" Cette ligne utilise la commande pour vérifier les mises à jour en attente. Le paramètre (quiet) permet de n'afficher que le nombre de paquets à mettre à jour, sans afficher les détails sur les paquets. Ensuite, elle utilise la commande pour compter le nombre de lignes de sortie, ce qui correspond au nombre de mises à jour en attente. Le résultat est ensuite affiché avec la commande . Note importante 1 : cette commande fonctionnera uniquement si vous utilisez comme gestionnaire de paquets, et non qui est utilisé sur les anciennes version de Fedora, Red Hat ou Cent OS**. Note importante 2 : pour utiliser ces méthodes, vous devrez avoir les privilèges d'administrateur pour accéder et éditer les fichiers système. Il est également important de vérifier que la commande que vous souhaitez exécuter automatiquement est sûre et ne causera pas de problème pour votre système."},{"uuid":"fcdd80a9-e5fb-4e3d-9b97-526c4019bfae","slug":"20230113-afficher-le-nombre-de-mise-a-jour-avec-yum-a-l-ouverture-de-session","title":"Afficher le nombre de mise à jour en attente avec YUM à l'ouverture de session","category":"Journal geek","author":"cedric@abonnel.fr","cover":"","published":true,"published_at":"2023-02-15 22:02:45","created_at":"2023-02-15 22:02:45","updated_at":"2023-02-15 22:02:45","tags":[],"plain":"Il y a plusieurs façons d'exécuter une commande automatiquement lors de l'ouverture d'une session sur un système basé sur Linux :\nAjoutez la commande dans le fichier .bashprofile : Vous pouvez ajouter la commande que vous voulez exécuter automatiquement dans le fichier de votre répertoire personnel. Ce fichier est exécuté lorsque vous ouvrez une session de terminal.\nUtilisez un gestionnaire de sessions : Les gestionnaires de sessions tels que systemd ou peuvent être utilisés pour exécuter des commandes automatiquement lors de l'ouverture d'une session. Par exemple, vous pouvez utiliser systemd pour créer un service qui exécute une commande automatiquement au démarrage.\nUtilisez le fichier /etc/profile : Ce fichier est exécuté pour tous les utilisateurs lors de l'ouverture d'une session, vous pouvez donc y ajouter la commande que vous souhaitez exécuter automatiquement. Sous Fedora, CentOS ou Red Hat, vous pouvez utiliser la commande pour afficher le nombre de mises à jour en attente. Pour afficher cette information dans le fichier , vous pouvez utiliser une commande de type : echo \"Il y a $(yum check-update -y -q | grep -c \"^.\") mise(s) à jour en attente\" Cette commande utilise la commande pour vérifier les mises à jour en attente. Le paramètre (quiet) permet de n'afficher que le nombre de paquets à mettre à jour, sans afficher les détails sur les paquets. Ensuite, elle utilise la commande pour compter le nombre de lignes de sortie, ce qui correspond au nombre de mises à jour en attente. Le résultat est ensuite affiché avec la commande . Cette commande fonctionnera uniquement si vous utilisez comme gestionnaire de paquets, et non qui est utilisé par défaut sur les dernières version de Fedora, Cent OS et Red Hat**."},{"uuid":"4cf880e6-e4e0-42dd-aae2-675837850b83","slug":"compromission-de-jdownloader-6-7-mai-2026-analyse-indicateurs-et-procedure-de-detection","title":"JDownloader : quand le CMS devient la faille","category":"informatique","author":"cedric@abonnel.fr","cover":"cover.webp","published":true,"published_at":"2026-05-12 17:09","created_at":"2026-05-12 17:10:36","updated_at":"2026-05-12 17:21:01","tags":[],"plain":"À propos de l'incident de sécurité affectant le site officiel jdownloader.org les 6 et 7 mai 2026.\r\n\r\nJDownloader expliqué simplement\r\n\r\nJDownloader est un gestionnaire de téléchargements écrit en Java, distribué gratuitement par l'éditeur allemand AppWork GmbH depuis plus de quinze ans. Il sert essentiellement à automatiser la récupération de fichiers depuis des hébergeurs (Mega, Uptobox, Rapidgator…), des plateformes vidéo et des services de liens premium. Côté utilisateur, c'est l'outil qu'on lance pour récupérer une série de fichiers en une opération, plutôt que cliquer sur cent liens un par un. L'application est multiplateforme — Windows, Linux, macOS — et tourne sur quelques millions de postes dans le monde.\r\n\r\nLe projet est distribué de plusieurs façons : un JAR principal (le binaire Java pur), des installateurs natifs par OS depuis le site officiel, et des paquets passant par des canaux distribués comme Flatpak, Snap ou Winget. C'est cette diversité de canaux qui va jouer un rôle central dans ce qui suit.\r\n\r\nL'incident : ce qui s'est passé\r\n\r\nEntre le 6 mai 2026 à 00 h 01 UTC et le 7 mai 2026 à 17 h 06 UTC, le site officiel a distribué des installateurs piégés à la place des binaires légitimes. La fenêtre n'a duré qu'environ 48 heures, et seuls deux liens ont été affectés. Mais pendant cette fenêtre, tout utilisateur qui passait par le bon parcours téléchargeait un cheval de Troie au lieu d'un gestionnaire de téléchargements.\r\n\r\nLe scénario reconstitué par l'équipe d'AppWork et les chercheurs en sécurité (BleepingComputer, Thomas Klemenc, équipe Rescana) se déroule en quatre temps.\r\n\r\n1. Compromission du CMS du site. Les attaquants ont exploité une vulnérabilité non corrigée dans le système de gestion de contenu de , qui permettait de modifier les listes de contrôle d'accès et le contenu publié sans authentification. Point crucial : ils n'ont pas eu accès au serveur sous-jacent, ni au système de fichiers, ni à l'infrastructure de build. Juste au contenu web — et ça a suffi.\r\n\r\n2. Réécriture de deux liens. Plutôt que de tenter de modifier les binaires originaux (qui étaient hors de leur portée), les attaquants ont fait beaucoup plus simple : ils ont changé l'URL cible de deux liens publics sur la page de téléchargement. Le lien « Download Alternative Installer » pour Windows et le script shell pour Linux pointaient désormais vers des fichiers malveillants hébergés sur une infrastructure tierce. Le HTML autour, lui, restait identique. Visuellement, rien ne distinguait la page propre de la page piégée.\r\n\r\n3. Charges utiles différenciées par plateforme. Sur Windows, l'installateur piégé agit comme un loader qui déploie un RAT (Remote Access Trojan) écrit en Python, fortement obfusqué, communiquant avec deux serveurs de commande et contrôle ( et ). Le RAT est modulaire : il reçoit du code Python depuis le C2 et l'exécute, ce qui donne aux attaquants une porte ouverte indéfiniment extensible. Sur Linux, le script shell modifié télécharge une archive depuis , déguisée en fichier SVG, dont il extrait deux binaires ELF — et . Le second est installé en SUID-root dans , le premier est copié dans , et la persistance est assurée par un script déposé dans . Le malware se lance ensuite déguisé en , un nom de processus qui existe légitimement sur la plupart des distributions.\r\n\r\n4. Détection par la communauté. L'alerte n'est pas venue d'un système de surveillance, mais d'un utilisateur Reddit (PrinceOfNightSky) qui a remarqué que Microsoft Defender bloquait son installateur fraîchement téléchargé. La signature numérique indiquait « Zipline LLC » au lieu de « AppWork GmbH ». L'équipe AppWork a confirmé, mis le site hors ligne pour investigation dans les heures qui ont suivi, puis publié un rapport d'incident détaillé. Le site est revenu en ligne dans la nuit du 8 au 9 mai avec des liens vérifiés.\r\n\r\nPourquoi c'est systémique\r\n\r\nÀ première vue, c'est un incident isolé : une faille CMS, une équipe qui patche, le service revient. Vu de loin, ça ressemble à un mauvais quart d'heure. Mais en prenant un peu de recul, le schéma est troublant.\r\n\r\nCPUID, début avril 2026. Le site officiel de l'éditeur de CPU-Z est compromis, des installateurs piégés sont distribués pendant plusieurs jours.\r\n\r\nDAEMON Tools, début mai 2026. Même schéma : compromission du site officiel, substitution d'installateurs, plusieurs versions infectées (12.5.0.2421 à 12.5.0.2434) distribuées avant détection.\r\n\r\nJDownloader, 67 mai 2026. Toujours le même schéma.\r\n\r\nTrois compromissions d'éditeurs logiciels en cinq semaines, exactement sur le même schéma : pas d'intrusion dans l'infrastructure de build, pas de modification du code source, pas de vol de certificat de signature de l'éditeur. À chaque fois, le maillon faible est le CMS qui sert la page de téléchargement. Ce qu'on attaque, ce n'est pas le logiciel ; c'est le panneau publicitaire qui pointe vers le logiciel.\r\n\r\nCette mécanique est intéressante parce qu'elle déjoue à peu près toutes les défenses « modernes » de la chaîne d'approvisionnement.\r\n\r\nLa signature de code ne protège pas. Le binaire légitime de JDownloader est toujours signé proprement par AppWork GmbH. Mais le binaire malveillant servi à sa place est signé, lui aussi — par un autre éditeur (Zipline LLC, The Water Team), avec des certificats vraisemblablement volés ou achetés au marché noir. La signature certifie que le fichier vient bien de celui qui l'a signé ; elle ne certifie pas que c'est le bon fichier.\r\n\r\nLe HTTPS ne protège pas. La page de téléchargement est servie en HTTPS valide, depuis le bon domaine, avec le bon certificat. Le navigateur n'a aucune raison de tiquer.\r\n\r\nLes mises à jour in-app sont, elles, protégées. AppWork le souligne : chaque mise à jour livrée par le mécanisme intégré de JDownloader est signée RSA et vérifiée cryptographiquement, indépendamment du site web. Ce canal n'a pas été touché. C'est tout le paradoxe : les utilisateurs qui mettaient à jour JDownloader depuis l'application elle-même n'ont rien risqué ; ceux qui sont allés sur le site officiel pour le télécharger « proprement » sont les seuls exposés.\r\n\r\nLes paquets distribués sont protégés. Flatpak, Snap, Winget, le JAR principal — tout ce qui passe par une chaîne d'approvisionnement où l'intégrité est vérifiée par checksum hors site est resté propre. AppWork le résume sans détour : « Winget/Flatpak/Snap infra is outside of our reach — files downloaded by those are hosted on other infra and secured by sha256 checksums that are unchanged. »\r\n\r\nAutrement dit, plus le canal est court et naïf, plus il est vulnérable. Le téléchargement direct depuis un site web est le canal le plus naïf qui soit : on fait confiance au CMS, point. Tout l'effort de sécurisation de l'écosystème logiciel — signatures, builds reproductibles, SBOMs, attestations de provenance — porte sur la chaîne de production et la chaîne de distribution centralisée. Le maillon « page HTML qui dit clique ici », lui, est resté tel qu'il était en 2005.\r\n\r\nComment vérifier si on est touché\r\n\r\nLa fenêtre est étroite, donc le filtrage est simple. Trois questions, dans l'ordre :\r\n\r\n1. L'installateur a-t-il été récupéré entre le 6 mai 2026 (00 h 01 UTC) et le 7 mai 2026 (17 h 06 UTC) ?\r\n2. S'agit-il du lien « Download Alternative Installer » Windows ou du script shell Linux depuis ?\r\n3. Le fichier a-t-il été exécuté ?\r\n\r\nTrois oui → traiter la machine comme compromise. N'importe quel non dans la liste → aucun risque lié à cet incident. Une installation pré-existante mise à jour automatiquement, un paquet Flatpak/Snap/Winget, le JAR, la version macOS : rien à craindre.\r\n\r\nSous Windows\r\n\r\nLe contrôle de référence, c'est la signature numérique. Clic droit sur l'installateur → Propriétés → onglet Signatures numériques. La valeur attendue est . Toute autre signature (notamment Zipline LLC ou The Water Team), ou l'absence de signature, désigne un fichier malveillant.\r\n\r\nEn PowerShell :\r\n\r\n\r\n\r\nSi n'est pas ou si le certificat ne contient pas , ne pas exécuter.\r\n\r\nSous Linux\r\n\r\nTrois artefacts sont à chercher en post-exécution :\r\n\r\n\r\n\r\nL'apparition de l'un de ces trois éléments suffit à confirmer l'infection. Pour aller plus loin, un coup d'œil au trafic sortant vers les trois domaines C2 (, , ) dans les logs DNS ou via permet de confirmer l'activité du malware.\r\n\r\nSi le script installateur traîne encore quelque part, sa signature est sans ambiguïté : taille de 7 934 496 octets, SHA-256 commençant par .\r\n\r\nEn cas de compromission confirmée\r\n\r\nLa position officielle d'AppWork est sans nuance : réinstallation complète du système. Un RAT modulaire avec persistance SUID-root et exécution arbitraire de code Python depuis un C2 n'est pas quelque chose qu'on retire avec un antivirus. Il faut considérer que tout secret qui a transité sur la machine est compromis — mots de passe saisis au clavier, clés SSH, jetons API, cookies de session, configurations cloud — et les faire tous tourner après réinstallation, depuis une autre machine saine.\r\n\r\nCe que ça change pour qui s'auto-héberge\r\n\r\nL'incident JDownloader est un exemple éclairant pour qui exploite ses propres services exposés sur Internet — un Forgejo, un reverse proxy, un site personnel. La leçon n'est pas vraiment côté utilisateur (la procédure de détection plus haut suffit), elle est côté opérateur.\r\n\r\nLe CMS de JDownloader n'a probablement pas été ciblé pour ses qualités intrinsèques. C'est un dommage collatéral d'un schéma plus large : tout site qui distribue un binaire avec un nombre significatif d'utilisateurs devient une cible rentable, et le CMS public est souvent la pièce la moins surveillée du dispositif. On sécurise le serveur Git, le pipeline de build, la signature des paquets — et on laisse tourner un CMS qui n'a pas été patché depuis huit mois parce qu'il « ne sert qu'à afficher la page d'accueil ».\r\n\r\nQuelques principes opérationnels qui en découlent.\r\n\r\nSéparer le canal de publication du canal de vérification. AppWork a eu raison sur un point essentiel : leurs mises à jour in-app passent par une infrastructure indépendante du site web, avec signature RSA vérifiée côté client. Quand on auto-héberge, ça se traduit par : ne jamais utiliser le même serveur pour distribuer un binaire et publier son empreinte. Le checksum doit vivre ailleurs — dans un dépôt Git séparé, sur un domaine différent, idéalement sur une infrastructure qu'on n'administre pas soi-même.\r\n\r\nSurveiller la dérive du contenu publié. Une simple vérification quotidienne du hash des pages publiques (un cron qui calcule le SHA-256 des URL critiques et alerte en cas de changement non planifié) aurait détecté la compromission de JDownloader en moins d'une heure. C'est le genre de surveillance qu'aucune solution commerciale ne propose nativement, et qui s'écrit en quinze lignes de bash.\r\n\r\nPatcher le CMS avec la même rigueur que l'OS. L'automatisation des mises à jour applicatives reste sous-investie, surtout pour les outils « périphériques » (CMS, wiki, formulaire de contact). Une mise à jour automatique de niveau correctif n'est pas plus risquée qu'une mise à jour du noyau, et elle évite ce type de scénario.\r\n\r\nAuditer les ACL régulièrement. La faille exploitée ici permettait de modifier les ACL sans authentification. C'est l'équivalent CMS d'un répertoire dans un coin du système. Un audit périodique des permissions sur les pages publiques fait partie du minimum syndical pour un service exposé.\r\n\r\nEn résumé\r\n\r\nJDownloader n'a pas été cassé. Son code source est intact, son infrastructure de build est intacte, ses paquets officiels distribués via Flatpak ou Snap sont intacts, ses mises à jour internes sont intactes. Ce qui a été cassé, c'est le panneau qui dit où aller chercher le binaire.\r\n\r\nC'est une mécanique élégante du point de vue de l'attaquant, et inquiétante du point de vue de l'opérateur. Elle illustre quelque chose que l'incident NPM avait déjà mis en lumière dans un autre registre : la chaîne d'approvisionnement logicielle n'est pas une chaîne, c'est un réseau, et les points faibles ne sont jamais là où on les attend. On peut investir massivement dans la sécurité du code, du build et de la signature ; si la page web qui sert le lien reste un Wordpress non patché derrière un nom de domaine prestigieux, tout cet investissement passe à côté.\r\n\r\nLe rôle de l'opérateur en 2026, ce n'est plus de protéger le code. C'est de protéger chaque maillon qui sert à dire au monde où trouver le code — et de partir du principe que ce maillon-là sera le prochain à céder.\r\n\r\nLiens & sources\r\n\r\nJDownloader site hacked to replace installers with Python RAT malware | BleepingComputer\r\n\r\nRapport d'incident officiel | jdownloader.org\r\n\r\nJDownloader Website Supply Chain Attack | Rescana\r\n\r\nLe site officiel de JDownloader compromis | IT-Connect"}]