eucsoft

How 104 software vendors tell you where to report a vulnerability

/.well-known/security.txt is a small text file, standardised as RFC 9116, that says where to send a security report. We read it at every vendor in the registry and checked it against the two things the standard makes mandatory: a contact, and an expiry date that has not passed.

72of 104 publish a security.txt
25of those 72 lack a required field or have expired
3files past their own expiry date
27have no file at either path
30 no file · 29%25 file with a fault · 25%47 file with both required fields, in date · 46%

Expired files

Every security.txt has to carry an Expires date, after which RFC 9116 says the file should be treated as stale. It exists so that an abandoned file with a dead mailbox stops being trusted. These files were past that date on the day we read them:

VendorExpires, as writtenRead onFile
Adyen2025-12-31T22:59:00.000Z2026-10-17www.adyen.com
Element2025-01-30T23:00:00.000Z2026-10-17element.io
Microsoft2026-09-23T16:00:00.000Z2026-10-17www.microsoft.com

An expired file is usually forgotten rather than abandoned: the contact in it may well still work. Amazon Web Services' file had expired on 24 September 2026 when we first read it on 11 October, and had been renewed by our next reading on 17 October.

Missing a required field

20 files have no Expires field at all and 3 have no Contact field, the line the file exists to carry. 1 has an Expires that is not a date in the format the standard requires (RFC 3339).

VendorWhat RFC 9116 requires and the file lacksFile
1Passwordno Expires field1password.com
Aircallno Contact field; no Expires fieldaircall.io
Airtableno Expires fieldairtable.com
Canvano Expires fieldwww.canva.com
Cloudflareno Expires fieldwww.cloudflare.com
Cursorno Expires fieldcursor.com
Dropboxno Contact field; no Expires fieldwww.dropbox.com
Freshworksno Expires fieldwww.freshworks.com
HubSpotExpires not a date: 2034-06-01:00:00.000Zwww.hubspot.com
Infomaniakno Expires fieldwww.infomaniak.com
JetBrainsno Expires fieldwww.jetbrains.com
Mailchimpno Expires fieldmailchimp.com
New Relicno Expires fieldnewrelic.com
OVHcloudno Expires fieldwww.ovhcloud.com
OpenAIno Expires fieldopenai.com
PayPalno Expires fieldwww.paypal.com
Sentryno Expires fieldsentry.io
Shopifyno Expires fieldwww.shopify.com
Slackno Expires fieldslack.com
Supabaseno Expires fieldsupabase.com
Webflowno Contact fieldwebflow.com
Wixno Expires fieldwww.wix.com

Expiry dates years ahead

The standard also recommends an Expires less than a year away, so that someone looks at the file again. 21 of the 47 files in date set it further out, measured from the day we read them. This is a recommendation, not a requirement, and none of these is counted as a fault above.

VendorExpires, as writtenYears ahead
Google Analytics2030-04-01T00:00:00z3.5
Google Cloud2030-04-01T00:00:00z3.5
Google Workspace2030-04-01T00:00:00z3.5
Notion2030-01-01T07:00:00.000Z3.2
Docker2030-01-01T05:00:00.000Z3.2
Datadog2029-12-31T23:00:00.000Z3.2
Zoom2029-12-31T00:00:00.000Z3.2
STACKIT2029-12-07T22:59:00.000Z3.1
Intercom2029-03-15T00:00:00z2.4
Amplitude2028-12-31T23:59:00Z2.2
Scaleway2028-12-31T09:45:00.000Z2.2
Zoho2028-06-30T23:59:59.000Z1.7
DigitalOcean2028-04-05T04:00:00.000Z1.5
CrowdStrike2028-04-01T04:00:00.000Z1.5
IONOS Cloud2028-02-11T23:30:00.000Z1.3
Contentsquare2028-01-31T21:59:00.000Z1.3
Squarespace2028-01-01T05:00:00.000Z1.2
Perplexity2027-12-31T00:00:00Z1.2
Piwik PRO2027-12-16T23:00:00.000Z1.2
Hetzner2027-11-11T13:14:00.000Z1.1
Figma2027-10-21T15:25:00.000Z1.0

Where reports go

Of the 69 files with a contact, 24 give only an email address, 25 only a web page or form (often a bug bounty platform), and 20 give both. 60 link a disclosure policy, which says what a researcher may test and what the vendor promises in return.

No file

27 vendors answer neither /.well-known/security.txt nor the older /security.txt on their main website. That does not mean they have no way to report a vulnerability: a vendor can publish one on an ordinary page, which this count does not look for. It means the standard place to look is empty:

Box, Brevo, Cisco Webex, Docusign, Elastic Cloud, Grafana Labs, Klaviyo, KnowBe4, Langdock, Make, Miro, Nextcloud, Oracle Cloud, Pennylane, Personio, Pipedrive, Pleo, S3NS, Salesforce, Sinch, T Cloud Public, Typeform, Usercentrics, Workday, Xero, Zapier, monday.com.

3DS Outscale, Matomo Cloud, Twilio answer the path with a web page instead of a text file, which a tool reading security.txt cannot use. MongoDB and SAP disallow the path in their robots.txt, so we did not read it and say nothing about whether a file is there.

How this was read

Each file was fetched from the vendor's main website, on the homepage's host and then on the bare domain, and parsed field by field without a model; values are kept as written. The latest readings are from 2026-10-17, and the files are read again every week, so a vendor that renews its file drops off the expired list at the next reading. Products of one company that share a website share its file, so Google's three products count three times. The full method is on the methodology page.

No verdicts. A missing or stale security.txt is a fact about one file, not a measure of how a vendor handles security. It does make a report slower to route, which is the problem the standard was written to fix.