FIX CARD
PRODUCT LangServe
SEVERITY CRITICAL
LangServe chain API exposed without authentication
Why it matters
LangServe publishes your LangChain/LangGraph runnable over HTTP with a playground UI. Without auth, anyone can open /playground or call /invoke and run your chain against your models, tools, and data.
Fix it: 3 steps
- Put LangServe behind an authenticating reverse proxy with TLS, or enable the framework's auth dependencies before binding to a public interface.
- Disable the playground in production (
disabled_endpoints=["playground"]) if you do not need it; keep /docs off the public internet. - Bind to 127.0.0.1 for local-only use and block the port:
sudo ufw deny <port>.
Verify it’s fixed
curl -sS http://YOUR_SERVER_IP:8000/openapi.json # strangers should not see /invoke or /playground paths
References
Not sure if your stack is exposed?
Run the free check: usually under a minute, safe read-only probes.
Scan your stack