← Back to all free security checks
NEWSJACK — OCT 20-22, 2026 · CVE-2026-75128 · CVSS 9.8

Penetration Testing: Is YOUR Agent App an Unauthenticated Shell?

Published · by Ingenious AI · interactive explainer and checker

Penetration testing usually starts with expensive tooling. This one starts with a single POST: on October 20, 2026, CVE-2026-75128 showed that Langchain-Chatchat's POST /tools/call endpoint runs any tool for anyone, with no login at all. Pick your agent framework below, run the exact probe commands against your own deployment, paste back what happened, and get a straight verdict: exposed, auth-required, or not present.

Scope: run these probes only against deployments you own or are authorized to test. The interpreter runs entirely in your browser — nothing you paste here is uploaded anywhere.

Short answer: yes, it can be. CVE-2026-75128 is an unauthenticated tool-call endpoint in Langchain-Chatchat: a POST to /tools/call executes a named tool with attacker-supplied arguments and returns the output, no session, no token, no login. VulnCheck scored it CVSS 9.8 — 98% of the maximum severity score. If your agent app answers the probes below without credentials, it is an unauthenticated shell with your tools inside it.

Penetration testing news: what happened on October 20, 2026?

On October 20, 2026, CVE-2026-75128 was published for Langchain-Chatchat, the open-source knowledge-base agent app built on LangChain. Per VulnCheck's advisory (GHSA-5rx2-xp53-9x5r), the application's POST /tools/call endpoint executes whichever tool the caller names, with whatever arguments the caller supplies, and it performs no authentication check first. The CVSS score is 9.8 out of 10, per VulnCheck — near the top of the scale because the attack needs no privileges, no user interaction, and works over the network.

Two days later, on October 22, 2026, Sekoia reported attackers actively harvesting credentials from exposed Flowise servers — the same underlying mistake in a different framework: an agent builder left reachable on the internet, holding API keys and workflow credentials, answering requests it should never have answered. Chatchat and Flowise are different codebases, but the failure is one pattern: agent apps ship with powerful tool endpoints, developers expose them for convenience, and the tools inside — file access, code execution, database queries, web requests — become available to whoever finds the port.

That is why this page is a probe, not a quiz. Exposure is a fact about your deployment, not a feeling, and the only honest way to know is to ask your own server the attacker's question — a tool call with no credentials — and read its answer.

What is an unauthenticated tool-call endpoint?

An unauthenticated tool-call endpoint is an HTTP route that executes an AI agent's tools — shell commands, file reads, database queries, API calls — without verifying who is asking. The agent framework treats the endpoint as an internal convenience for its own front end, but once the app is reachable on a network, the endpoint is public. Anyone who can reach the port can enumerate the tool list and invoke tools directly, bypassing the chat interface, the prompt, and every guardrail written into the system prompt, because none of those sit between the network and the tool runner.

Pick your framework — get your probes, then read the verdict

Step 1: choose the framework your agent app runs on. The page lists the exact probe paths for that framework with copy-ready curl commands pointed at your own deployment. Step 2: run them — with no credentials attached. Step 3: report what came back and the interpreter returns a verdict with the fix.

Step 3 — interpret what came back

Honest scope note: this interpreter judges only the probe results you enter, for the paths listed. Framework versions differ, reverse proxies change behaviour, and an endpoint can be closed while a sibling route stays open — run every probe for your framework, not just the first. The full tool is the open-source agent-toolcall-exposure-scanner repo by Ingenious AI, which probes the full route map and checks response bodies automatically.

How to read the three verdicts

VerdictWhat your server just told youThe fix
EXPOSEDA tool, prediction or chat endpoint answered 2xx to a request carrying no credentials. The endpoint is public and the tools behind it are callable by anyone who finds the port.Enable the framework's authentication today, bind the app to localhost or a private network until then, and audit access logs for tool calls you do not recognize.
AUTH ENFORCEDThe endpoint refused the unauthenticated request with 401 or 403. This is the correct behaviour — the one missing in CVE-2026-75128.Keep it, and re-probe after every upgrade or config change; auth defaults reset silently more often than teams expect.
NOT PRESENTThe probed path returned 404 or 405 on your deployment. That specific route is not exposed — under that name, on that port.Run the remaining probes, check alternate ports and path prefixes, and confirm the app is not also exposed under a second deployment.

Exposed? Do this now

If any probe came back EXPOSED, treat the deployment as public from this minute and work this list in order:

  1. Close the door first. Bind the app to localhost or your private network, or put it behind an authenticated reverse proxy. Do this before investigating — every minute open is a minute anyone can call your tools.
  2. Turn on the framework's authentication. Chatchat, Flowise and DB-GPT all ship auth options that are off or minimal by default. Enable them, set real credentials, and re-run the probes above to confirm 401s.
  3. Audit the logs. Search access logs for /tools/call, prediction and chat endpoints from addresses you do not recognize. Sekoia's October 22, 2026 reporting shows exposed agent servers are found and harvested, not stumbled on.
  4. Rotate what the app could reach. API keys stored in the app, credentials in connected workflows, and tokens for every tool the agent can call — an unauthenticated caller may already have used them.
  5. Inventory the tools. List every tool your agent exposes and remove the ones it does not need. A file-read or shell tool behind a chat endpoint is a liability even with auth on.
  6. Make the probe a habit. Re-run these probes after every deployment, upgrade or config change. Exposure regressions are silent; the probe takes under a minute.
FROM INGENIOUS AI
BreachHunter hunts the breaches behind stories like this — exposed data, leaked credentials and supply-chain fallout — before they become your incident.
All 11 platforms: DisclosureGuard  ·  ModelMinder  ·  TermsWatch  ·  Vibe-Code Audit  ·  Rogue-Agent Defense  ·  BreachHunter  ·  ChatBreaker  ·  Agent Flight Recorder  ·  Agent Auth Gateway  ·  DomainGuard  ·  ContentCraft AI
Our platforms are being upgraded — get early access now:
Get early access on WhatsApp →
Share this check: XLinkedIn

Frequently asked questions

What is CVE-2026-75128?

CVE-2026-75128 is an unauthenticated tool-execution flaw in Langchain-Chatchat, published on October 20, 2026 and scored CVSS 9.8 by VulnCheck (GHSA-5rx2-xp53-9x5r). A POST to /tools/call runs a named tool with caller-supplied arguments and returns the output, with no login, token or session check in front of it.

How do I test my own agent app for unauthenticated tool calls?

Send the tool endpoint a request with no credentials attached — no Authorization header, no cookie, no API key — ideally from a different machine. A 2xx with real output means exposed; a 401 or 403 means auth is enforced; a 404 means that path is absent. The probe commands above are built for exactly this test.

Which frameworks does this exposure pattern affect?

The pattern is not one vendor's bug. CVE-2026-75128 is Langchain-Chatchat, Sekoia reported exposed Flowise servers being harvested on October 22, 2026, and any framework — DB-GPT, custom LangChain apps, LangServe deployments — that serves tool or prediction endpoints without authentication has the same shape. Test the deployment, not the brand.

Is putting the app behind a VPN enough?

It helps a great deal, because the endpoint stops being internet-reachable, but it is not the whole fix. Anyone or anything inside the network — a compromised laptop, a malicious insider, another exposed service — can still call the tools. Enable the framework's own authentication as well, so the endpoint checks credentials regardless of network position.

What does the full scanner check that this page cannot?

This page interprets the probe results you enter for the main paths of four frameworks. The full agent-toolcall-exposure-scanner probes the complete route map of a deployment, inspects response bodies for real tool output automatically, and checks alternate ports and prefixes — use it for a thorough audit before you conclude a deployment is clean.

Built by Ingenious AI — reporting on third-party security research. CVE-2026-75128 details are summarized from VulnCheck's advisory GHSA-5rx2-xp53-9x5r (October 20, 2026); Flowise exposure from Sekoia's reporting of October 22, 2026.
This page is general information, not legal advice. Probe only systems you own or are authorized to test. Full tool: agent-toolcall-exposure-scanner on GitLab — part of the Ingenious AI toolkit.