
developer | evangelist @elastic, 🏆 @Java_Champions 📧 DM opened. DJ 4 times a year, just for fun! 🎧 https://xitter.cf/t.co/Wv6Ne8oML2
France
Joined June 2009
- Tweets31.2K
- Following1.9K
- Followers5.7K
- Likes21.3K
David Pilato 🇺🇦🇪🇺🇫🇷 retweeted
hugops to all the PHP users — php2shell, an unauthenticated PHP core RCE
looking at what the exploits do and how to detect them: elastic.co/security-labs/thr…
C'est encore @vinceflibustier qui a visité le DC d'orange ?
This quoted post is unavailable.
David Pilato 🇺🇦🇪🇺🇫🇷 retweeted
Two critical PHP RCEs are patched: CVE-2026-109618 and CVE-2026-109619, both CVSS 9.2.
• Fixed in 8.5.12, 8.4.27, 8.3.36, and 8.2.35.
You can still focus on detection coverage today.
Security Labs writeup (coverage + guidance): elastic.co/security-labs/thr…
Most PHP RCEs converge on the same outcome, whatever the bug: a web server process (php-fpm, php-cgi, apache2, httpd) doing something a request-serving daemon almost never does legitimately.
• a shell to confirm access: id, whoami, uname -a
• a second stage pulled in: curl http://... | bash
• a reverse shell: bash -i >& /dev/tcp//
• a webshell written into the web root
The bug class is public now: out-of-memory corruption, and stale state reused by the same worker. The behavior is what you detect.
We recently ran a different PHP RCE end-to-end (wp2shell): apache2 spawning dash to run id; whoami; hostname fired the exact rules that we suspect to catch php2shell. Payload Execution by Web Server kills the shell on the endpoint.
The Suspicious/Unusual Command, Child, and File Creation via Web Server rules stack on top.
(PHP did confirm partial php.ini mitigations. session.upload_progress.enabled=0 blocks the confirmed session paths only. Patch is still the fix.)
Patch to 8.5.12, 8.4.27, 8.3.36, or 8.2.35. Verify that the stack is enabled now.
Guidance + every rule link below.
Hahaha! Great promotion of our security rules that we make in the open. 🤣
I used Opus 5.5 on max and GPT-6 Astra for 5 days straight and I reversed engineered Elastic Security and extracted all the rules. I made them available here:
github.com/elastic/detection…
You’re welcome.
David Pilato 🇺🇦🇪🇺🇫🇷 retweeted
Introducing Voxtral 3: state-of-the-art Transcribe and Speech models powering Mistral’s new voice agents API. 🧵
Building search into a Java music library with plain Lucene, one step at a time.
The tracks are indexed. Now we query them.
Should "Bob" in a title count for more than "Bob" in an album?
Step 1: start with no criteria. Open an IndexSearcher and fetch the first 10 hits. Each hit carries a Lucene doc number, so read the stored id and join back to your beans.
We're building search into a Java music library with plain Lucene, one step at a time.
Next up is analysis: what happens to your text before it reaches the index. An analyzer cuts it into tokens, lowercases them and folds the accents away.
Step 1: add lucene-analysis-common for ASCIIFoldingFilter. Pin the same version as lucene-core
David Pilato 🇺🇦🇪🇺🇫🇷 retweeted
Si vous avez téléchargé aujourd'hui la dernière version de CLI d'OVHcloud, merci de la mettre à jour à nouveau très rapidement. Sinon effacer. Il s'agit de repo:
github.com/ovh/ovhcloud-cli
La version CLI de 14h47 a été compromise par un hacker. Nous l'avons détecté et bloqué à 16h21. Merci au client qui nous a remonté le souci. La version compromise est v0.11.0 v0.12.0 v0.13.0 v0.14.0 v0.15.0.
La version v0.10.0 et la future 0.16.0 est clean.
On vient de finit les premières vérifications et aucun autre repo n'est affecté. Nous avons aussi retracé l'incident. Le hacker a utilisé le compte github d'un des développeurs et a ajouté un binaire dont le job est récupérer les secrets sur le disque. La qualité du binaire est médiocre mais il peut aller jusqu'au bout. Si vous êtes concernés, merci de changer tous les secrets sur votre disque.
On continue les recherches sur le binaire et on va publier les détails additionnels sous peu.
The Agent Builder in Kibana is fantastic! 🤯 I asked it to draft a dashboard for F1 telemetry data. It analyzed ~2.8M records and auto-generated a 5-section dashboard, including a track map built from x/y coordinates. Kibana + AI = instant insights. 🏎️📊
David Pilato 🇺🇦🇪🇺🇫🇷 retweeted
Un dev a utilisé Claude pour rendre sa télé Android moins insupportable. Son projet libre TV Detox remplace l’accueil publicitaire et permet de désactiver des applications encombrantes, avec une fonction de retour en arrière.
Le projet est à vérifier selon l’appareil, évidemment. Mais le programme politique est limpide : j’ai acheté une télévision pour regarder des films, le panneau publicitaire dans mon salon commence à me gonfler.
github.com/Ansub/tv-detox
David Pilato 🇺🇦🇪🇺🇫🇷 retweeted
Bonjour Quentin.
De tous mes élèves de 6ème, tu fus le meilleur de ma vie.
Désormais tu es adulte, donc prescription: je pense pouvoir sans problème montrer une de tes nombreuses idées que tu as eues quand tu t'ennuyais en cours après avoir tout terminé en 5 minutes.
Si tu me lis, si tu découvres ce tweet, je serais très honoré de savoir ce que tu es devenu. Et quelle que soit ta réponse, je voudrais te dire merci pour ton altruisme et toute l'aide que tu savais déjà apporter à tes collègues de classe.
Que la vie sache remercier et récompenser des gens comme toi à leur juste valeur, c'est-à-dire très grande.🔽
David Pilato 🇺🇦🇪🇺🇫🇷 retweeted
Le summum de la « débauche » politique en Norvège !
Préparez-vous au choc… La présidente du Parlement norvégien, Eva Kristin Hansen, a démissionné et présenté ses excuses au peuple, à cause d’un « crime » impardonnable !
Imaginez un peu… Madame a utilisé un appartement de 50 m² (oui, un simple salon et une chambre !) appartenant à l’État.
La loi chez eux autorise l’occupation de ce logement uniquement si votre domicile se situe à plus de 40 kilomètres du Parlement… mais le « scandale » retentissant, c’est que sa maison se trouvait à seulement 29 kilomètres !
Autrement dit, elle aurait fait perdre à l’État « environ 11 kilomètres » de dignité politique !
Le plus drôle et triste à la fois :
• Non seulement elle a démissionné, mais elle a aussi annoncé qu’elle rembourserait de sa propre poche la « perte » causée à l’État.
• À titre d’information : la Norvège possède un excédent financier dépassant 1 300 milliards de dollars… et malgré cela, ils lui ont demandé des comptes pour un appartement de 50 m² et 11 kilomètres de différence !
Chez nous, si le domicile d’un responsable se trouvait à 29 mètres de son bureau, il demanderait peut-être un hélicoptère pour éviter les embouteillages du trottoir, et on le considérerait quand même comme un « grand homme d’État dévoué »
David Pilato 🇺🇦🇪🇺🇫🇷 retweeted
📣 Attention #DevRel friends!
@elastic are hiring Senior Developer Advocates in NYC, US and Sao Paulo, Brazil. Job specs 👇 .
jobs.elastic.co/jobs/marketi…
jobs.elastic.co/jobs/marketi…
If you are based in these locations and have a background in #DevRel or software engineering, apply!
Tired of your AI coding agent losing its context every session? Join @_ediri & me on Oct 20 for a Pulumi online workshop. We'll deploy a searchable Elastic Serverless memory backend so your AI never forgets. 🧠
pulumi.com/events/give-your-…
Your beans are mapped. Now, who owns the index?
Step 1: wrap Directory + IndexWriter in a small class dedicated to your bean.
ByteBuffersDirectory for in-memory, FSDirectory to persist
Des nouvelles de mon frère (et #Elkie) qui sont encore assez loin de leur destination ! Courage Eric !
👉🏼 lab.excess-catamarans.com/fr…
In an agentic trace with 20 LLM calls, you can see which span is using the most tokens and read the prompt that caused it.
Both live in Elastic APM, so there's no second tool to run.
David Pilato 🇺🇦🇪🇺🇫🇷 retweeted
Thanks to everyone who came to my talk. It was awesome to have standing room only. 😊
Resources and slides 👇
github.com/carlyrichmond/con…
Until next time! 👋































