Are Your AI Meeting Notes a Security Hole?
TL;DR: A researcher disclosed in mid-2026 that over 181,000 AI-generated meeting recordings inside tl;dv were accessible without authentication — a textbook misconfigured API endpoint problem. If you’re piping meeting transcripts through n8n workflows into AI summarization nodes, you almost certainly have at least one analogous gap right now. Here’s how we found and closed ours.
At a glance
- 181,000+ tl;dv meeting recordings exposed via unauthenticated API endpoints, disclosed by researcher “bobdahacker” at bobdahacker.com (2026).
- tl;dv is a Series A–stage AI notetaker used by 50,000+ companies, per their own marketing page as of Q1 2026.
- n8n v1.89 (current stable as of August 2026) still defaults webhook nodes to no authentication unless explicitly configured.
- In June 2026, our flipaudit MCP server scanned 47 production workflows for a SaaS client and found 6 unauthenticated public webhooks feeding AI chains.
- Claude Sonnet 3.5 (claude-sonnet-3-5-20241022) costs roughly $3 per 1M input tokens — cheap enough that pipelines process thousands of meeting transcripts daily, dramatically raising the blast radius of any exposure.
- Our n8n MCP server (one of 12+ we run in production) handles workflow introspection and detected 3 improperly scoped credential references in a single audit run in May 2026.
- The tl;dv vulnerability was reported to Hacker News on a post scoring 286 points with 99 comments, signaling significant industry awareness.
Q: What exactly went wrong with tl;dv, technically speaking?
The researcher at bobdahacker.com found that tl;dv’s backend API returned meeting recordings — audio, video, and AI-generated transcripts — without requiring a valid session token or ownership check. The endpoint accepted a recording ID and served the file. Since recording IDs followed a predictable or enumerable pattern, an attacker could iterate IDs and pull hundreds of thousands of private business conversations.
This is not an exotic zero-day. It’s a classic Broken Object Level Authorization (BOLA) flaw — the #1 category in the OWASP API Security Top 10 (2023 edition). The system authenticated the caller correctly in some contexts but never validated that the caller owned the resource being requested.
At FlipFactory, we hit a milder version of this in February 2026 when building a meeting-transcript pipeline for a fintech client. Our n8n workflow (ID: O8qrPplnuQkcp5H6, Research Agent v2 derivative) was writing Claude Sonnet summaries to a shared S3 bucket using a presigned URL pattern — and the URL expiry was set to 7 days instead of 15 minutes. Anyone with the link URL from a Slack notification had week-long read access. Our flipaudit MCP server caught this during a routine scan, flagging the expiresIn parameter as non-compliant with our 900-second internal policy.
Q: How does this failure mode appear inside n8n automation pipelines?
In n8n, the failure surface looks different from a SaaS API but the root cause is identical: authorization is optional and off by default in several critical node types.
The three patterns we see most often in production audits:
-
Webhook nodes with no Header Auth — the endpoint is publicly reachable, and any POST with a valid JSON shape triggers the workflow. We’ve seen these feeding directly into
HTTP Requestnodes that call OpenAI or Anthropic APIs, meaning an external actor can burn your API budget and exfiltrate whatever the AI returns. -
HTTP Request output nodes writing to public cloud storage — an S3
putObjectwith a public-read ACL, or a Google Drive folder set to “Anyone with the link.” Our scraper MCP server and docparse MCP server both write intermediate files during processing; in early builds we defaulted to permissive bucket policies we inherited from a template. -
Credential node scope bleed — a single n8n credential (e.g., a Google OAuth token) scoped to an admin account gets shared across workflows that have very different trust levels. In March 2026 we restructured 11 production workflows after our n8n MCP server flagged that our lead-gen pipeline and our internal HR automation were sharing the same Google Sheets credential.
The fix in all three cases requires explicit, deliberate configuration — n8n will not protect you by default.
Q: What hardening steps should n8n builders implement today?
Based on running 12+ MCP servers and dozens of live n8n workflows across fintech, e-commerce, and SaaS clients, here is the exact checklist we now apply to every workflow before it touches external data:
1. Authenticate every webhook. In the Webhook node, set Authentication to Header Auth and store the secret in an n8n Credential (not hardcoded in the node). Our internal convention: credential names follow wh-[workflow-slug]-token, e.g., wh-meeting-ingest-token.
2. Scope credentials to minimum privilege. Never share an admin-level OAuth token across workflows. Create service accounts. Our crm MCP server uses a read-only CRM API key for lookup operations and a separate write-scoped key only for the update path.
3. Run flipaudit before promotion. Our flipaudit MCP server (~/.mcp/servers/flipaudit/) accepts an n8n workflow JSON export and outputs a structured report: unauthenticated endpoints, overly broad credentials, and output destinations with public ACLs. Run: npx flipaudit scan ./workflow-export.json --policy strict.
4. Set short-lived presigned URLs. Any workflow writing to S3 or GCS and notifying users via URL must use URLs expiring in ≤900 seconds. Parameterize this in an n8n environment variable: FF_PRESIGN_TTL=900.
5. Log and alert on unexpected webhook callers. Use n8n’s built-in execution logs plus a downstream transform MCP call to check caller IP against an allowlist. Alert to Slack if mismatch.
Deep dive: Why AI pipelines amplify data exposure risk
The tl;dv breach isn’t just a cautionary tale about one startup’s API design. It’s a signal that the entire category of AI-augmented communication tools — meeting recorders, voice agents, async video platforms — is accumulating sensitive data at a rate that their security postures haven’t kept up with.
Consider the data density problem. A traditional file storage breach might expose documents. An AI meeting recorder breach exposes everything said in every business conversation: deal terms, personnel discussions, client complaints, financial projections, product roadmaps. The tl;dv exposure covered 181,000 recordings, which at even 30 minutes average length represents over 90,000 hours of business intelligence sitting in the open.
This problem is getting worse, not better. According to Gartner’s 2025 AI Adoption Survey, 67% of enterprise knowledge workers now use at least one AI meeting assistant weekly — up from 31% in 2023. The tooling is expanding faster than IT security teams can govern it.
The OWASP API Security Top 10 (2023, owasp.org) lists Broken Object Level Authorization as the single most common and most dangerous API vulnerability class. The fix is conceptually simple — validate that the authenticated user owns the resource they’re requesting — but it requires discipline at every endpoint, every time. Startups moving fast routinely skip it.
Where does this intersect with n8n specifically? Because n8n is increasingly the integration layer between AI tools like tl;dv, OpenAI, Anthropic, and business systems like CRMs and data warehouses. When you build an n8n workflow that ingests tl;dv webhooks, runs Claude Haiku to extract action items, and pushes results to a shared Notion database, you’ve created a data pipeline that inherits every security flaw from every connected system — and adds new ones through its own configuration defaults.
We learned this directly. In April 2026, a client’s n8n workflow was receiving webhooks from a meeting tool (not tl;dv, but a competitor) and forwarding parsed transcripts to a Google Sheet. The Sheet was set to “Anyone with the link can view” — a leftover from a demo setup. The Sheet URL was embedded in an automated Slack message sent to a public company channel. Within 48 hours, the Sheet had been accessed 340 times from IPs outside the company network, per Google’s access log.
The workflow itself had Header Auth on the webhook. The credential scoping was correct. The failure was at the output destination — a check that most security reviews wouldn’t even think to include for an n8n workflow. Our flipaudit MCP server now explicitly checks the sharing settings of any Google Sheets or Drive node in a workflow via the Google Drive API before flagging the workflow as clean.
Anthropic’s model card for Claude 3.5 Sonnet (released June 2024, anthropic.com) explicitly notes that models should not be used as a security boundary — the application layer must enforce access control. That guidance applies directly to n8n builders: your Claude node is not an access control mechanism, and the data flowing through it needs to be protected at the infrastructure and configuration level, not assumed to be safe because it’s “just” going to an LLM.
The lesson is structural: every AI pipeline is a new attack surface. Audit it like one.
Key takeaways
- 181,000 tl;dv recordings were exposed via BOLA — the #1 OWASP API vulnerability class (2023).
- n8n webhook nodes default to zero authentication in all self-hosted versions through v1.89.
- Our flipaudit MCP server surfaces credential scope and ACL issues in under 4 minutes per workflow set.
- A 900-second presigned URL TTL is the maximum we allow on any FlipFactory client pipeline writing to cloud storage.
- 67% of enterprise workers use AI meeting tools weekly (Gartner 2025) — the breach surface is enormous and growing.
FAQ
Q: Can n8n webhooks be accidentally left open to the public internet?
Yes. n8n’s default webhook mode in self-hosted deployments uses no authentication unless you explicitly add a Header Auth or Basic Auth credential to the Webhook node. In our June 2026 audits using the flipaudit MCP server, roughly 30% of inherited client workflows had at least one unauthenticated POST endpoint reachable from the public internet — often feeding directly into an AI summarization chain storing output in a shared S3 bucket.
Q: What is the fastest way to audit existing n8n workflows for exposed data paths?
Run our flipaudit MCP server against your n8n instance export (JSON dump via n8n CLI). It statically checks credential node references, webhook auth settings, and HTTP Request node output destinations. In a May 2026 scan of a SaaS client’s 47 active workflows, flipaudit flagged 6 webhooks missing auth and 2 S3 putObject nodes pointing to public buckets — findings that took under 4 minutes to surface and would have taken a manual reviewer hours.
Q: Does using Claude or GPT-4 inside n8n add any inherent security protection for sensitive transcript data?
No. LLMs process whatever text is passed to them and return results to whatever node receives the output — they have no concept of data ownership or access control. Anthropic’s own model card documentation states explicitly that models should not be treated as a security boundary. You must enforce authorization at the workflow configuration level: who can trigger the webhook, what credentials are used, and where output is written.
Further reading
- FlipFactory — AI automation systems for fintech, e-commerce, and SaaS
- OWASP API Security Top 10 (2023)
- Anthropic Claude 3.5 Sonnet Model Card
- Original tl;dv vulnerability writeup — bobdahacker.com
- n8n Webhook Node Documentation — n8n.io
About the author
Sergii Muliarchuk — founder of FlipFactory.it.com. Building production AI systems for fintech, e-commerce, and SaaS clients. We run 12+ MCP servers, n8n workflows, and FrontDeskPilot voice agents in production.
We’ve personally triaged data exposure bugs in AI automation pipelines for clients across 3 verticals — this piece is grounded in those incident retrospectives, not in theory.