A security.txt egy egyszerű szöveges fájl a /.well-known/security.txt útvonalon, amely megmondja, hova jelentse valaki a talált biztonsági hibát. Az RFC 9116 szabványosítja a fájl helyét, formátumát és mezőit, hogy a kutatók ne az általános ügyfélszolgálati e-mail-címen próbálkozzanak.
Hogyan működik
A fájl kulcs-érték párokból áll, soronként egy mező. A Contact az egyetlen kötelező mező, az Expires szintén kötelező az RFC szerint. A többi (Encryption, Policy, Preferred-Languages, Acknowledgments, Canonical) opcionális.
Nincs mögötte automatizmus. Senki nem küld értesítést, nem fut ellenőrzés, nem jár érte rangsorolási előny. Az értéke abban van, hogy egy ember vagy egy szkennelő eszköz percek alatt megtalálja a helyes kontaktot.
Mikor számít igazán
Akkor, amikor valaki jóhiszeműen talál nálad egy hibát. Egy nyílt admin-felület, egy kiszivárgó backup-fájl, egy XSS a keresőben. Ilyenkor két kimenetel van: vagy megtalál téged, vagy feladja és továbbáll. A második esetben a hiba ott marad, és a következő megtaláló már nem biztos, hogy jóhiszemű lesz.
A fájl a biztonsági alapok legolcsóbb eleme. Nem véd semmitől, de csökkenti a felfedezés és a javítás közötti időt. Ezért is szerepel a legtöbb technikai auditban.
Röviden: a security.txt nem biztonsági intézkedés, hanem egy nyitott ajtó annak, aki segíteni akar.
Miért fontos
Biztonsági szempontból
A hibát megtaláló és a hibát javító ember között van egy szakadék. A info@ címre küldött levél az ügyfélszolgálaton landol, ahol senki nem tudja, mit kezdjen egy SQL-injection leírással. A security.txt ezt a szakadékot hidalja át.
A riportokban ezt látjuk: sok cégnél a biztonsági bejelentés végül a Facebook-oldal privát üzenetében érkezik meg. Ott hetekig áll.
SEO és AI szempontból
Rangsorolási hatása nincs. A Google nem olvassa, az AI-crawlerek sem indexelik érdemben. A hatás alacsony, ezt a riport is így jelöli.
Ami mégis számít: a fájl megléte egy gondozottsági jel. Ugyanabba a körbe tartozik, mint az impresszum, a adatvédelmi tájékoztató vagy a llms.txt és llms-full.txt. Ahol ezek megvannak, ott jellemzően a biztonsági fejlécek is rendben vannak.
Üzleti szempontból
A hatókör üzleti döntés: el kell döntened, hogy fogadsz-e bejelentéseket, és ki olvassa a postaládát. Egy válasz nélkül hagyott bejelentés rosszabb, mint a hiányzó fájl. Közbeszerzésnél és nagyvállalati beszállítói auditnál egyre gyakrabban kérdés.
Hogyan javítod
WordPress
- FTP-n vagy fájlkezelőben hozz létre egy
.well-known mappát a webroot alatt.
- Tedd bele a
security.txt fájlt.
- Ellenőrizd, hogy a szerver nem tiltja a pontal kezdődő mappákat. Egyes tárhelyeken az Apache alapból blokkolja.
- Ha blokkolva van, a
.htaccess-be vedd fel kivételként.
- Alternatíva plugin nélkül: egy
add_action('init') hook, ami a kérést elkapja és kiírja a tartalmat.
Shopify
A Shopify nem enged tetszőleges fájlt a /.well-known/ alá. Két út van:
- Ha saját domainen vagy és a DNS/CDN réteg a tiéd, ott old meg egy átirányítással vagy worker-rel.
- Ha nem, tedd ki a kontaktot egy
/pages/security oldalra, és hivatkozz rá az impresszumból.
Unas
Az Unas webáruház SaaS-rendszer, a webroot nem a tiéd. Nyiss ticketet a rendszergazdáknak, és kérd a fájl kihelyezését. Ha ez nem járható, a /security aloldal a gyakorlati minimum.
Shoprenter
Ugyanaz a helyzet, mint az Shoprenternél általában: a platform-szintű fájlokhoz támogatás kell. Kérd a /.well-known/security.txt kiszolgálását, hivatkozva az RFC 9116-ra.
Egyedi fejlesztés
- Tedd a fájlt statikusan a webroot
.well-known könyvtárába.
- Nginx-nél add hozzá a
location = /.well-known/security.txt { default_type text/plain; } blokkot.
- Állítsd be az
Expires mezőt maximum 1 évre előre.
- Vedd fel a naptáradba az éves frissítést, különben lejár.
- Ha CDN előtt van, ellenőrizd, hogy a cache nem szolgál ki régi verziót.
Mit néz ebből a riport
Az audit lekéri a /.well-known/security.txt címet, és megnézi, hogy 200-as választ kap-e szöveges tartalommal. Ellenőrzi, hogy szerepel-e benne Contact mező. Hiány esetén alacsony hatású javaslatot ad, mert ez üzleti döntés, nem kódhiba.
Technikai példa
Minimális, szabványos fájl a /.well-known/security.txt címen:
Contact: mailto:security@pelda.hu
Contact: https://pelda.hu/biztonsag
Expires: 2027-01-01T00:00:00.000Z
Preferred-Languages: hu, en
Canonical: https://pelda.hu/.well-known/security.txt
Policy: https://pelda.hu/biztonsagi-szabalyzat
A Contact lehet többszörös, a sorrend a preferenciát jelzi. Az Expires ISO 8601 formátumú, jövőbeli dátum.
Ellenőrzés parancssorból, a fejlécekkel együtt:
curl -sI https://pelda.hu/.well-known/security.txt
curl -s https://pelda.hu/.well-known/security.txt
Az első parancs a státuszkódot és a Content-Type fejlécet mutatja. A másodikban a fájl tartalmát látod. Ha HTML-t kapsz vissza, a szerver a hibaoldalt szolgálja ki, és a fájl valójában nincs kint.
Nginx-konfiguráció a helyes MIME-típushoz:
location = /.well-known/security.txt {
default_type text/plain;
charset utf-8;
}
Gyakori kérdések
Segít a security.txt a Google-rangsorolásban?
Nem. A Google nem használja rangsorolási jelként, és nincs ismert közvetett hatása sem. Az értéke tisztán gyakorlati: gyorsabb és tisztább csatorna a hibabejelentésekhez. Ha SEO-célból mérlegelnéd, van fontosabb dolgod.
Nem hívja fel magára a figyelmet a fájl? Nem lesz több támadás tőle?
Nem. A támadók nem a security.txt alapján válogatnak célpontot, hanem automatizált szkennerekkel keresnek sebezhető verziókat. A fájl a jóhiszemű bejelentőket éri el, nem a támadókat. Ellenkező irányban viszont segít: a felfedezett hiba hamarabb jut el hozzád.
Kell bug bounty program mellé, vagy anélkül is van értelme?
Anélkül is van. A bug bounty pénzjutalmat és formális szabályzatot jelent, ez külön üzleti döntés. A security.txt ennél sokkal kevesebb: csak annyit mond, hova írjanak. A Policy mezőt kihagyhatod, ha nincs írott szabályzatod.
Mi legyen a Contact mezőben, ha egyszemélyes vállalkozás vagyok?
A saját e-mail-címed, amit naponta olvasol. Nem kell külön security@ cím, bár tisztább, ha van. A lényeg, hogy élő postaláda legyen, és a levél ne essen spam-mappába. Az Expires mezőt itt is töltsd ki.
Mi történik, ha lejár az Expires dátum?
Semmi automatikus, de a fájl formailag érvénytelenné válik. Az ellenőrző eszközök és a riportok hibaként jelzik, a bejelentő pedig joggal gondolja, hogy a cím már nem él. Állítsd be maximum egy évre, és tedd naptárba a frissítést.