p. 08 Utilisez TCP et UDP en Python
p. 22 Développez une application graphique utilisant le réseau
p. 34 Utilisez des API REST en Python
p. 46 Scapy, le couteau suisse Python pour le réseau
p. 58 Créez un système de migration des rapports de bug de GitHub à votre GitLab
p. 68 Créez un driver FUSE pour Google Drive
p. 76 Créez un bot IRC
p. 86 Créez un robot Slack
p. 98 Créez un client XMPP
p. 108 Envoyez des SMS avec un Raspberry Pi et Python
p. 116 Un exemple concret de serveur HTTP servant des fichiers
« Et puis c’est arrivé... une porte s’est ouverte sur un monde nouveau... j’envoie un signal, il traverse les lignes téléphoniques (...). »
« The Hacker Manifesto », The Mentor, 1986
Depuis que ces lignes ont été écrites, 31 ans se sont écoulés. Et pourtant elles n’ont jamais autant été d’actualité. Le net ne cesse de grandir, de se développer, d’accoucher de nouvelles technologies et de nouvelles façons de faire communiquer différentes entités entre elles. Le SOAP a laissé la place au REST, les réseaux sociaux se diversifient, chaque jour amène son lot de nouveaux services qui offrent chacun leur API.
Dans cet écosystème foisonnant, nous, développeuses et développeurs Python, sommes plus que chanceux. En effet, la mise en place de communications par échange d’informations passant par des connexions réseaux est au cœur du Python. Que ce soit grâce aux modules fournis par la bibliothèque standard ou les multiples bibliothèques disponibles, tout est fait pour que nous ayons tous les outils pour pouvoir travailler efficacement.
« Nous explorons... (...). Nous recherchons la connaissance... (...). ». Le magazine que vous tenez entre les mains a pour but de vous faire découvrir ou approfondir les différents moyens de mettre en places des communications réseaux avec notre langage préféré :
--> Que vous vouliez en apprendre plus sur les concepts de base fondamentaux de la communication réseau bas niveau, pour mettre en place des applications ayant à la fois une interface graphique et des communications réseaux, consommer des API web REST diverses ou pour travailler directement sur les paquets réseaux, la première partie de ce hors-série est faite pour vous.
--> Si vous avez plutôt envie de suivre la mouvance des chats-bots, que ce soit pour se connecter à IRC, Jabber, Slack ou des réseaux sociaux, là aussi, vous allez pouvoir trouver votre bonheur dans les pages qui vous attendent dès que vous aurez fini de lire cette petite préface.
--> Enfin, si vous voulez mettre en place des serveurs de fichiers ou interagir avec le réel et envoyer des SMS avec l’un de vos Raspberry Pi préférés, alors vous allez adorer la derrière partie de ce hors-série.
Je vais profiter de la poignée de caractères qu’il me reste pour vous souhaiter une bonne lecture et de longues heures d’expérimentation avec Python et les communications réseaux. Faites tout de même attention, ne développez pas le bot de trop, la Singularité n’est pas si loin que ça...
Jean-Michel Armand
GNU/Linux Magazine s'adresse aux professionnels et aux particuliers désireux de mieux maîtriser les techniques et problématiques liées à la programmation et à l’utilisation de solutions open source. Tous les deux mois avec ses articles techniques, la publication couvre les thématiques suivantes : programmation système, algo, bas niveau, sécurité du code, développement web...

Thématique privilégiée pour la réalisation de démonstrations techniques à des fins promotionnelles, le MouseJacking n’en demeure pas moins un vecteur crédible pour l’obtention d’un accès initial dans le cadre d’un exercice Red Team. Nous vous proposons un retour d’expérience d’une telle opération en espérant vous convaincre de l’intérêt à porter à ces techniques.
D’aucuns penseraient que le langage C est un langage simple. Après tout le fameux Kernighan & Ritchie de 1978 (a.k.a. White Book) ne fait que 200 pages, bien peu pour un langage qui a servi de base au noyau Linux, au compilateur GCC et à l’interpréteur de référence de Python, CPython. Et pourtant s’il y a bien une notion parmi toutes celles introduites dans the White Book qui met au défi ingénieurs en sécurité, chercheurs en compilation et développeurs en tout genre, c’est la notion de pointeur, et cette terrible question : le déréférencement de mon pointeur donne-t-il lieu à un comportement indéfini ?Des ingénieurs de chez Apple ont trouvé un chemin pragmatique et intéressant à cette question, et ils l’ont mis à disposition dans un fork de clang à travers une option, -fbounds-safety, et un fichier d’en-tête, <ptrcheck.h>. Examinons leur approche.
Ces derniers temps, on ne parle que d'IA (enfin, on parle de LLM, ou Large Language Model, mais c'est moins vendeur). Les marchés financiers en raffolent et, corollaire évident, les entreprises se démènent pour en ajouter là où elles peuvent. Évidemment, le revers de la médaille de cette course effrénée est l'ajout encore peu maîtrisé de fonctionnalités riches pouvant introduire des vecteurs de compromission au sein d'applications sensibles. Le but de cet article est donc de faire un retour à travers mes audits ainsi que sur l’état de l’art, établi suite aux publications de l’OWASP, afin de déterminer le risque pour une entreprise qui souhaite ajouter de l’IA sous la forme d’un chatbot.