Badacze bezpieczeństwa codziennie znajdują nowe podatności​*​. Dla organizacji, w której wykryto błąd, skrócenie ścieżki komunikacji z osobami, które mają wiedzę i kompetencje do tego, aby podejmować decyzje i szacować ryzyko powinno być niezwykle istotne. Niestety, również w sysdogs, często mamy problem ze znalezieniem odpowiedniego kanału komunikacji z osobami odpowiedzialnymi za security.

Chcemy wyjść temu naprzeciw i napisać o standardzie, który ma rozwiązać ten problem – security.txt. Przynajmniej w domknięciu na aplikacje Webowe.

Plik tekstowy

security.txt jest, niczym innym, jak odpowiednio sformatowanym plikiem tekstowym, dostępnym pod URI /.well-known/security.txt. Standard tego pliku nie jest jeszcze kompletny, a szkic dokumentu, który go opisuje jest dostępny publicznie. Cały projekt jest utrzymywany na GitHub (securitytxt/security-txt).

Przykład. Wzór pliku security.txt z podpisem gpg. Źródło: IETF.

   ----BEGIN PGP SIGNED MESSAGE-----
   Hash: SHA256

   # Canonical URL
   Canonical: https://example.com/.well-known/security.txt

   # Our security address
   Contact: mailto:[email protected]

   # Our OpenPGP key
   Encryption: https://example.com/pgp-key.txt

   # Our security policy
   Policy: https://example.com/security-policy.html

   # Our security acknowledgments page
   Acknowledgments: https://example.com/hall-of-fame.html
   -----BEGIN PGP SIGNATURE-----
   Version: GnuPG v2.2

   [signature]
   -----END PGP SIGNATURE-----

W dokumencie referencyjnym, w rozdziale 3.5, możemy zobaczyć wszystkie możliwe pola, które taki plik wspiera.

Zagrożenia

Każdy element infrastruktury jest, z definicji, rozszerzeniem wektora ataku dla wroga. Aby zrozumieć złożoność bezpieczeństwa wystarczy powiedzieć, że badacze ciągle modelują zagrożenia wynikające z utrzymywania pojedynczego pliku tekstowego w katalogu .well-known.

Wdrożenie

Wdrożenie standardu security.txt nie jest specjalnie skomplikowane. Cloudflare opisał ostatnio swój proces wdrożenia swego standardu w oparciu o Cloudflare Workers, a kod źródłowy udostępnił na swoim GitHubie. Zwracamy jednak uwagę, że standard wymusza przekazywanie pewnych nagłówków. Stąd, w przypadku serwerów http, zależnie od ich konfiguracji, może nie wystarczyć umieszczenie security.txt w podkatalogu .well-known.

Obrazek. Zrzut ekranu z security.txt w sysdogs.com.


  1. ​*​
    W ciągu dwóch ostatnich tygodni zgłosiliśmy ponad dziesięć różnych podatności, różnym podmiotom na terenie Białegostoku.