Was ist eine security.txt?
Die security.txt ist eine kleine Textdatei an einer festen Stelle Ihrer Website, die nennt, an wen man eine gefundene Sicherheitslücke melden kann.
Ohne Fachbegriffe, für Betriebe ohne eigene IT.
Auf dieser Seite4 Abschnitte
Einfach erklärt
Die security.txt ist ein kleiner Aushang auf Ihrer Website: „Wer auf dieser Website eine Sicherheitslücke findet, meldet sie bitte hier.“ Die Datei liegt immer unter „ihre-firma.de/.well-known/security.txt“ und nennt eine Kontaktadresse. So wissen Sicherheitsforscher und andere Finder, wohin mit ihrem Hinweis. Ohne die Datei landet er im allgemeinen Kontaktformular, bei der falschen Person oder nirgends.
Warum das für Ihren Betrieb zählt
Wer eine Lücke findet und niemanden erreicht, gibt womöglich auf. Mit einer security.txt kommt der Hinweis bei jemandem an, der etwas damit anfangen kann. Im besten Fall ist die Lücke dann geschlossen, bevor ein Angreifer sie findet. Die Datei beruht auf einem offenen Standard (RFC 9116) und ist in wenigen Minuten angelegt.
Was Sie tun können
- Legen Sie fest, wer Meldungen annimmt, etwa eine eigene Adresse wie „sicherheit@ihre-firma.de“, die mehrere Personen lesen, oder Ihr IT-Dienstleister.
- Bitten Sie die Firma, die Ihre Website betreut, die Datei anzulegen.
- Die Datei hat ein Ablaufdatum. Empfohlen ist ein Datum höchstens ein Jahr in der Zukunft, also eine jährliche Erneuerung. Ist das Datum vorbei, gilt die Datei als veraltet.
Tipp: Tragen Sie das Ablaufdatum der security.txt in Ihren Kalender ein, zusammen mit dem Namen der Person, die sie erneuert.
Was die Datei nicht leistet
Die security.txt schützt nichts, sie öffnet nur einen Meldeweg. Jemand muss die Meldungen auch lesen und bearbeiten. Ein Postfach, das niemand öffnet, hilft niemandem. Mehr zum Umgang mit gemeldeten Lücken unter Sicherheitslücke.
Aufbau nach RFC 9116
RFC 9116 (April 2022, Informational) legt Ort und Format fest. Die Datei liegt unter /.well-known/security.txt und wird per HTTPS als text/plain in UTF-8 ausgeliefert. Eine Datei unter /security.txt ist zur Abwärtskompatibilität zulässig. Gibt es beide, gilt die unter /.well-known/.
Jedes Feld steht in einer eigenen Zeile. Feldnamen unterscheiden nicht zwischen Groß- und Kleinschreibung, Zeilen mit # am Anfang sind Kommentare. Felder, die ein Leser nicht kennt, muss er ignorieren.
Contact: mailto:sicherheit@ihre-firma.de
Contact: https://ihre-firma.de/sicherheit
Expires: 2027-10-31T00:00:00Z
Preferred-Languages: de, en
Canonical: https://ihre-firma.de/.well-known/security.txt
Policy: https://ihre-firma.de/sicherheit/richtlinie
| Feld | Pflicht | Inhalt |
|---|---|---|
Contact | ja, ein- oder mehrmals | URI wie mailto:, https:// oder tel:, in Reihenfolge der Präferenz |
Expires | ja, genau einmal | Datum nach RFC 3339, empfohlen weniger als ein Jahr in der Zukunft |
Encryption | nein | Verweis auf einen Schlüssel für verschlüsselte Meldungen |
Acknowledgments | nein | Seite, die Finder namentlich nennt |
Preferred-Languages | nein | Sprachen für Meldungen |
Canonical | nein | Adressen, unter denen die Datei gilt |
Policy | nein | Richtlinie zum Umgang mit Meldungen |
Hiring | nein | Stellenangebote im Sicherheitsbereich |
Signieren und Richtlinie
Empfohlen ist eine OpenPGP-Klartextsignatur. Wer signiert, sollte auch Canonical setzen, damit die Signatur den Ort der Datei mit abdeckt:
gpg --clearsign --output security.txt security.txt.unsigned
Die unter Policy verlinkte Richtlinie beschreibt, wie Meldungen behandelt werden: wer antwortet, in welcher Frist, was Finder testen dürfen und ob sie öffentlich genannt werden. Ohne diese Angaben wissen Finder nicht, ob sie willkommen sind.
Typische Fehler
Expiresfehlt oder steht im falschen Format, etwa31.10.2027. Verlangt ist ein Zeitstempel wie2027-10-31T00:00:00Z.- Abgelaufen. Liegt
Expiresin der Vergangenheit, gilt die Datei als veraltet. - Nur unter
/security.txtoder nur per HTTP erreichbar. - HTML-Fehlerseite mit Status 200 statt 404, wenn die Datei fehlt. Werkzeuge finden darin keine Felder.
- Kontaktadresse, die niemand liest, oder ein Formular, das Anhänge abweist.
Prüfen
curl -s https://ihre-firma.de/.well-known/security.txt
curl -sI https://ihre-firma.de/.well-known/security.txt | grep -i '^content-type'
Einen Generator für die Datei bietet securitytxt.org.