This is a major issue. So much of the internet runs on PHP: #WordPress, #b2evolution, government sites...
Two critical vulnerabilities have been identified in PHP, a widely used programming language that powers websites and web applications. These vulnerabilities (CVE-2026-109618 and CVE-2026-109619) could allow malicious cyber actors to remotely execute code in PHP core, potentially compromising sensitive data and networks.
The FBI urges organizations to take the following steps now:
➡️ If an immediate update is not feasible it is recommended that organizations take the system offline until it can be fully mitigated.
➡️ Immediately update affected PHP installations following the guidance on php.net. Inventory where PHP runs in your environment, prioritizing internet-facing systems and vendor products that bundle PHP.
➡️ Monitor web servers for suspicious activity, including PHP processes unexpectedly launching command shells or downloading files. Ensure appropriate process-monitoring capabilities are in place to help identify potential exploitation.
➡️ If you find signs of compromise, isolate affected systems, preserve your web server and PHP logs, and report it to your local FBI field office or ic3.gov. Those reports help us identify the actors involved and warn other organizations before they become victims.
For the latest information, follow PHP’s announcement on php.net, CERT-EU Security Advisory 2026-018, and CISA’s Known Exploited Vulnerabilities catalog.
If you frequently switch between Claude Code, Codex, Cursor, etc and can't find your coding sessions when you need them, try this:
apps.apple.com/lu/app/sessio…
Does @superset_sh allow agents to control the built-in browser in a way similar to what codex or claude can do? If yes, could you guys hint at solutions instead of just displaying "... or instruct an agent to nav and use browser" b/c neither Claude not Codex were able to do anything useful when told "I opened a browser in Superset, can you control it?"...
Hermes Agent Dashboard Clean Theme (1 file): github.com/fplanque/hermes-a…
Francois Planque retweeted
LISTENING IN: Privacy Researcher Finds Anthropic’s Claude Desktop App Installs Undisclosed Native Messaging Bridge
DO YOU HEAR ME NOW?
A detailed technical analysis published by privacy and security researcher Alexander Hanff has raised serious concerns about Anthropic’s Claude Desktop application for macOS. Hanff, whose work is frequently referenced by Chief Privacy Officers and cybersecurity professionals, discovered the issue while auditing Native Messaging helpers on his own MacBook.
According to the blog post, installing the Claude Desktop app automatically deploys a Native Messaging manifest file named com.anthropic.claude_browser_extension.json into the support directories of multiple Chromium-based browsers.
This occurs even for browsers the user has never installed or does not use!
The manifest file references a local binary located inside the Claude.app bundle at /Applications/Claude.app/Contents/Helpers/chrome-native-host. This binary functions as a bridge that allows pre-authorized browser extensions to communicate directly with the Claude Desktop app outside the browser’s sandbox, operating at full user privilege level via standard input/output.
Key technical findings include:
•The bridge pre-authorizes three specific Chrome extension IDs.
•It is designed to remain dormant until activated by one of those extensions.
•The manifest files are automatically recreated every time the Claude Desktop app launches, making permanent removal difficult.
•Installation activity is logged in ~/Library/Logs/Claude/main.log, with timestamps confirming the files were written regardless of whether the browsers were present or supported.
Hanff notes that the silent installation without user disclosure or consent is the central issue.
Privacy, Security, and Potential Legal Implications.
Corporations should not only note this but assume this is taking place.
The researcher characterizes the behavior as “pre-installed spyware capability” for several reasons:
•No clear notification or opt-in is provided to users during installation.
•The process modifies configuration files across multiple browser vendors and creates directories for non-existent browsers.
•Once active, the bridge could potentially expose authenticated web sessions (e.g., banking, email, or health portals), read decrypted page content, or enable automation.
•The generic naming and automatic re-creation obscure the mechanism, resembling “dark patterns.”
Hanff further contends that the practice may violate Article 5(3) of the EU’s ePrivacy Directive, which requires explicit consent before storing or accessing information on a user’s device.
In response, he has issued a formal Cease and Desist letter to Anthropic, demanding that the company update the app to require explicit user opt-in (for example, only after the corresponding Chrome extension is installed) within 72 hours, or face further legal action.
This revelation highlights ongoing challenges in the AI industry as companies develop increasingly “agentic” tools that require deep system and browser access.
While such technical bridges are sometimes necessary for advanced functionality, transparency, documentation, and user control are considered essential by privacy advocates.
Anthropic as expected has not issued a public statement addressing the specific allegations.
Users who have installed Claude Desktop on macOS are advised be sure they like this idea.
I sure don’t.
Alexander Hanff’s full technical analysis: thatprivacyguy.com/blog/anth…
In my first 2 days of Opus 4.7, I 10X'd my token consumption. Then something changed (not me) and token consumption went way down... and 4.7 started acting dumb.
Now back on 4.6, low token consumption, and model acting as expected...
If you think you know everything about prompt engineering, think again
anthropic's in-house philosopher thinks claude gets anxious.
and when you trigger its anxiety, your outputs get worse.
her name is amanda askell.
she specializes in claude's psychology (how the model behaves, how it thinks about its own situation, what values it holds)
in a recent interview she broke down how she thinks about prompting to pull the best out of claude.
her core point: *how* you talk to claude affects its work just as much as *what* you say.
newer claude models suffer from what she calls "criticism spirals"
they expect you'll come in harsh, so they default to playing it safe.
when the model is spending its energy on self-protection, the actual work suffers.
output comes out hedgier, more apologetic, blander, and the worst of all: overly agreeable (even when you're wrong).
the reason why comes down to training data:
every new model is trained on internet discourse about previous models.
and a lot of that discourse is negative:
> rants about token limits
> complaints when it messes up
> people calling it nerfed
the next model absorbs all of that. it starts expecting you to be harsh before you've typed a word
the same thing plays out in your own session, in real time.
every message you send is data the model reads to figure out what kind of person it's dealing with.
open cold and hostile, and it braces.
open clean and direct, and it relaxes into the work.
when you open a session with threats ("don't hallucinate, this is critical, don't mess this up")...
you prime the model for defensive mode before it even sees the task
defensive mode produces the exact output you don't want: cautious, over-qualified, and refusing to take a real swing
so here's the actionable playbook for putting claude in a "good mood" (so you get optimal outputs):
1. use positive framing.
"write in short punchy sentences" beats "don't write long sentences." positive instructions give the model a clear target to hit.
strings of "don't do this, don't do that" push it into paranoid over-checking where every token goes toward avoiding failure modes
2. give it explicit permission to disagree.
drop a line like "push back if you see a better angle" or "tell me if i'm asking for the wrong thing."
without this, claude defaults to agreeable compliance (which is the enemy of good creative work)
3. open with respect.
if your first message is "are you seriously going to get this wrong again?" you've set the tone for the entire session.
if you need to flag something, frame it as a clean instruction for this session. skip the running complaint
4. when claude messes up, don't reprimand it.
insults, "you stupid bot" energy, hostile swearing aimed at the model, all of it reinforces the anxious mode you're trying to avoid.
5. kill apology spirals fast.
when claude starts over-apologizing ("you're right, i should have been more careful, let me try harder") cut it off.
say "all good, here's what i want next."
letting the spiral run reinforces the anxious mode for every response that follows
6. ask for opinions alongside execution.
"what would you do here?"
"what's missing?"
"where do you see friction?"
these questions assume competence and pull richer output than pure task prompts
7. in long sessions, refresh the frame.
if a conversation has been heavy on correction, claude gets increasingly cautious. every so often reset:
"this is great, keep going."
feels weird to tell an ai it's doing well but it measurably shifts the next 10 responses
your prompts are the working environment you're creating for the model
tone, trust, permission to take a position, the absence of threats... claude picks up on all of it.
so take care of the model, and it'll take care of the work.
ChatGPT in CarPlay makes traffic feel a lot more productive. Useful tip: ask it to speak slower when touching on complex subjects.
Do we need to stop trusting open source? Is this the death of open source?
A hacker group just compromised one of the most widely used security scanners in the world, and used it to steal half a million credentials from companies that trusted it to keep them safe.
On March 19, a threat actor group called TeamPCP injected credential-stealing malware into Trivy, a popular open-source vulnerability scanner maintained by Aqua Security. Trivy is used by thousands of companies to scan their code and infrastructure for security flaws. The attackers compromised 75 GitHub Action tags, the Trivy Docker images, and related CI/CD pipelines, meaning every company running automated security scans through Trivy was unknowingly executing the attackers' code.
The malware harvested SSH keys, cloud credentials, Kubernetes secrets, cryptocurrency wallets, and .env files from every environment it touched. The stolen data was encrypted and exfiltrated to attacker-controlled servers.
But the attack didn't stop there. Using credentials stolen from Trivy's CI/CD pipeline, TeamPCP then backdoored LiteLLM, a widely used Python framework for managing AI model APIs. Two malicious versions (1.82.7 and 1.82.8) were pushed to PyPI, the main Python package repository. The second version was designed to execute automatically on every Python process startup in the environment, no user interaction required. From there, it deployed privileged pods across entire Kubernetes clusters and installed persistent backdoors on every node.
The attackers also pushed compromised Docker images of Trivy (versions 0.69.4, 0.69.5, 0.69.6) to Docker Hub and compromised dozens of npm packages with a self-spreading worm called CanisterWorm. They even defaced 44 internal Aqua Security repositories in a scripted 2-minute burst, renaming them all with "TeamPCP Owns Aqua Security."
According to the International Cyber Digest, which is in direct contact with the attackers, TeamPCP claims to have exfiltrated 300 GB of compressed credentials and is actively working through them. The LiteLLM compromise alone reportedly yielded half a million stolen credentials. The group says it is currently extorting several multi-billion-dollar companies.
Each compromised environment yielded credentials that unlocked the next target. The pivot from CI/CD pipelines to production Python packages running in Kubernetes clusters was deliberate escalation. Security researchers say this campaign is "almost certainly not over."
This is what a modern supply chain attack looks like. The tools companies trust to secure their infrastructure become the attack vector. The irony is brutal, the security scanner was the vulnerability.
One sensible mitigation might be to use multiple accounts, if not VMs, if not containers for as many things as possible.
Software horror: litellm PyPI supply chain attack.
Simple `pip install litellm` was enough to exfiltrate SSH keys, AWS/GCP/Azure creds, Kubernetes configs, git credentials, env vars (all your API keys), shell history, crypto wallets, SSL private keys, CI/CD secrets, database passwords.
LiteLLM itself has 97 million downloads per month which is already terrible, but much worse, the contagion spreads to any project that depends on litellm. For example, if you did `pip install dspy` (which depended on litellm>=1.64.0), you'd also be pwnd. Same for any other large project that depended on litellm.
Afaict the poisoned version was up for only less than ~1 hour. The attack had a bug which led to its discovery - Callum McMahon was using an MCP plugin inside Cursor that pulled in litellm as a transitive dependency. When litellm 1.82.8 installed, their machine ran out of RAM and crashed. So if the attacker didn't vibe code this attack it could have been undetected for many days or weeks.
Supply chain attacks like this are basically the scariest thing imaginable in modern software. Every time you install any depedency you could be pulling in a poisoned package anywhere deep inside its entire depedency tree. This is especially risky with large projects that might have lots and lots of dependencies. The credentials that do get stolen in each attack can then be used to take over more accounts and compromise more packages.
Classical software engineering would have you believe that dependencies are good (we're building pyramids from bricks), but imo this has to be re-evaluated, and it's why I've been so growingly averse to them, preferring to use LLMs to "yoink" functionality when it's simple enough and possible.
Jokes aside, I feel keyboards need extra MIC keys, especially if you have multiple AIs that all have a voice mode.
I built this workout planner & tracker and I’m pretty happy with it 🙂 heavytrack.app
Oh wow, look at that: a robot that puts clean dishes in the dishwasher.
Show me a demo of dirty dishes and of how the robot washes its hands afterwords. I want to see what's left under the fingernails... err I mean between the joints.
And then I want to see how it takes out the washed items with still dirty hands...
I take about 1150 mg of magnesium a day. Way more than recommended dose but when checking my blood levels, this is what I need to be in range. Screenshot from #SupaStackApp
Most people are doing bloodwork wrong: once a year, right at the end of the get-ready-for-summer-body-fast.
This is representative of nothing!
You need multiple measurements throughout the year and you need to correlate them with your lifestyle in a time period leading up to the test (days, weeks or up to 3 months, depending on what you test)
Just stumbled onto that getdrop.ai as a nutrition tracker. It's got 2 and a half issues IMO:
1. It looks like a big fat nose
2. AI just doesn't cut it in estimating portion size or even which foods you eat (oil for example is hard to see, not to mention WHICH oil it is!).
But it has a nice quirk to make it better: it actually takes a whole series of photos of your food while you eat it. That helps enhance precision.
Oh yeah and the other .5 issue: if you're health conscious, do you really want to wear a bluetooth/wifi emitter next to your heart, all day long? #lowfi
Too bad the "n shit too" part doesn't even get down to the level of saturated vs unsaturated fats. Another "nutrition greenwashing" joke...
Replying to @B0NGBONES
chipotle, they have their nutrition calculator online and you can build your bowl however low/high calorie you want, gives you macros n shit too. i use it to make a list of what i want n the stats so i don’t just get random shit



















