TwilioRishab KumarIncident / postmortem
My Voice AI Demo Was Hit by a $982 Traffic-Pumping Attack! Here’s What I Learned
Summary
A voice AI demo using Twilio Conversation Relay and FastAPI was exploited when automated clients repeatedly called its unauthenticated /api/call endpoint, generating 1,008 requests and 921 outbound calls to Israeli +972229 numbers. The incident cost $971.50 in Twilio voice usage and $10.58 in Google Gemini fees, matching International Revenue Sharing Fraud that keeps calls connected for per-minute revenue. The author used the Twilio CLI to group call records showing 920 of 921 calls targeted the same narrow Israeli range and correlated Azure Log Analytics to confirm the exploited endpoint. Calls were kept alive by automated scripts replaying conversation-extension prompts from only 541 distinct lines across 8,363 transcriptions, with some recordings mentioning happy trafficking. The post recommends authentication, duration limits, geographic permissions, signature validation, usage triggers, and demo isolation as essential controls for public voice AI apps.
Context
A voice AI demo using Twilio Conversation Relay and FastAPI, deployed on Azure Container Apps, with a web interface for outbound calls.
Approach / What changed
Add authentication to the /api/call endpoint, configure per-number and per-minute duration limits, restrict outbound calls to allowed geographic regions, validate Twilio X-Twilio-Signature, create usage triggers and budgets, use isolated demo environments, and log structured events without raw content.
Takeaways
An internet-accessible demo is public even when its URL isn’t promoted; a URL is an address, not an access control.
The attack kept calls connected by replaying automated conversation-extension prompts, with only 541 distinct lines across 8,363 transcriptions.
Essential defenses include authentication, geographic restrictions, Twilio signature validation, and usage triggers to limit cost impact.
FAQ
How was the attack detected?
Using Twilio CLI to query call records and Azure Log Analytics to correlate requests to the /api/call endpoint. The logs revealed 1,008 requests, 921 successful calls, and a concentrated pattern of Israeli destinations.
What is voice toll fraud?
Voice toll fraud, or International Revenue Sharing Fraud (IRSF), is when a bad actor uses an application to generate calls to international premium-rate numbers they control to earn per-minute revenue.
What controls should a voice AI demo have?
Authentication, per-number and per-minute duration limits, geographic restrictions, Twilio signature validation, usage triggers and budgets, demo isolation, and careful logging are essential controls.
Source and freshness
- Source
- twilio.com
- Published
- Added to Yomu
Summaries are generated from the original by a language model. Check the original before relying on it.
Keep reading
Related reading
The Good Stuff
Paid picks we use ourselves. Links carry a referral code — a subscription through one earns us a commission at no extra cost to you.
The best engineering reads, once a week
One useful email. Unsubscribe anytime.