Konfiguracja programu
Przewodnik krok po kroku po wszystkich siedmiu zakładkach ustawień programu — zakres, macierz nagród, SLA, triaż, wypłaty, spam i security.txt.
Dlaczego to ważne
Dobra konfiguracja to różnica między wiarygodnym programem ujawniania podatności (VDP) a niejasną polityką, którą badacze ignorują. Precyzyjny zakres chroni zespół inżynieryjny przed nieistotnymi zgłoszeniami, cele SLA wymuszają uczciwość czasów reakcji, a dobrze zdefiniowana macierz nagród ustala oczekiwania badaczy jeszcze przed wysłaniem zgłoszenia.
Kit dostarcza rozsądne wartości domyślne dla każdego ustawienia. Można uruchomić program natychmiast i dostosować go później, ale poświęcenie 15 minut na konfigurację z góry pozwoli zaoszczędzić godziny błędnego triażu.
Włączanie VDP
Przejdź do VDP, aby włączyć program. Wybierz plan Free, aby zacząć od razu, lub VDP Add-on (49 USD/mies.), aby odblokować pełny pipeline. Uaktualnienie jest możliwe w dowolnym momencie z poziomu Account Settings > Billing.
Po utworzeniu programu przejdź do VDP > Program Settings, aby go skonfigurować. Program uruchamia się w statusie Draft — nie będzie przyjmował zgłoszeń, dopóki status nie zostanie zmieniony na Active.
Zakładka General
Zakładka General kontroluje tożsamość programu i politykę ujawniania.
| Pole | Opis |
|---|---|
| Program Name | Wyświetlana na stronie polityki ujawniania i w portalu badacza |
| Status | Draft, Active lub Paused — ustaw na Active po zakończeniu konfiguracji |
| Disclosure Policy | Pole rich text wstępnie wypełnione językiem safe harbor. Obsługuje formatowanie, linki i listy. |
| Prohibited Actions | Działania, których badacze nie mogą podejmować (np. socjotechnika, ataki fizyczne, odmowa usługi) |
Podczas konfigurowania pozostałych zakładek zostaw program w statusie Draft. Przełącz na Active dopiero wtedy, gdy wszystko jest gotowe do przyjmowania zgłoszeń.
Zakładka Scope
Zakres definiuje, co badacze powinni, a czego nie powinni testować. Niejasny zakres generuje niejasne zgłoszenia — bądź konkretny.
| Pole | Opis |
|---|---|
| In-Scope Targets | Hosty, adresy URL lub zakresy IP do testowania (jeden na wiersz). Przykład: app.yourcompany.com, api.yourcompany.com
|
| Out-of-Scope Categories | Wykluczenia kategorii w stylu OWASP (np. “Denial of Service”, “Physical Attacks”) |
| Excluded Vulnerability Types | Konkretne klasy podatności, które nie będą akceptowane (np. “Self-XSS”, “Missing rate limiting on non-critical endpoints”) |
Jeśli cele in-scope pozostaną puste, wszystkie cele są domyślnie objęte zakresem. Rzadko kiedy jest to pożądane. Wymień przynajmniej główne domeny swojej aplikacji.
Kit wykorzystuje konfigurację zakresu do automatycznej walidacji przychodzących zgłoszeń. Zgłoszenia dotyczące wykluczonych typów podatności lub kategorii poza zakresem są oznaczane, zanim trafią na tablicę triażu.
Zakładka Bounty Matrix
VDP Add-on — ta zakładka wymaga VDP Add-on (49 USD/mies.). Programy Free działają jako VDP bez nagród.
Macierz nagród definiuje przedziały wypłat dla każdego poziomu ważności. Kwoty są wyświetlane na stronie polityki ujawniania, aby badacze wiedzieli, czego się spodziewać.
| Severity | Domyślne minimum | Domyślne maksimum |
|---|---|---|
| Super Critical | $5,000 | $10,000 |
| Critical | $1,500 | $5,000 |
| High | $500 | $1,500 |
| Medium | $150 | $500 |
| Low | $50 | $150 |
| Informational | $0 | $0 |
Dostosuj te przedziały do budżetu i tolerancji ryzyka. Gdy na zgłoszeniu zostanie zarejestrowana ocena CVSS, Kit automatycznie zasugeruje kwotę nagrody w ramach odpowiedniego przedziału.
Zakładka SLAs
SLA definiują zobowiązania zespołu dotyczące czasu reakcji. Zegar SLA startuje w momencie przesłania zgłoszenia. Dashboard pokazuje status każdego zgłoszenia jako zgodny z terminem, zagrożony lub przekroczony.
Acknowledgment SLA obowiązuje jednakowo dla wszystkich poziomów ważności — to maksymalny czas od przesłania zgłoszenia do pierwszej odpowiedzi. Domyślnie: 72 godziny.
Cele rozwiązania różnią się w zależności od poziomu ważności:
| Severity | Domyślny cel rozwiązania |
|---|---|
| Super Critical | 24 godziny |
| Critical | 72 godziny (3 dni) |
| High | 168 godzin (1 tydzień) |
| Medium | 336 godzin (2 tygodnie) |
| Low | 720 godzin (30 dni) |
| Informational | 720 godzin (30 dni) |
Wartości można zmienić, aby dopasować je do możliwości zespołu. Agresywne SLA dobrze wyglądają na papierze, ale tracą wiarygodność przy regularnym naruszaniu. Ustaw cele, które naprawdę da się dotrzymać, a z czasem je zaostrzaj.
Wskaźniki SLA widoczne na każdej karcie zgłoszenia na tablicy triażu:
- On Track (zielony) — pozostało ponad 25% okna SLA
- At Risk (żółty) — pozostało 25% lub mniej okna SLA (upłynęło 75% lub więcej)
- Breached (czerwony) — termin SLA minął
Zakładka Triage
Ustawienia triażu kontrolują kierowanie i przetwarzanie przychodzących zgłoszeń.
| Pole | Domyślnie | Opis |
|---|---|---|
| Default Assignee | Brak | Członek zespołu automatycznie otrzymujący nowe zgłoszenia. Ustaw na główny kontakt ds. bezpieczeństwa. |
| Escalation Severities | Critical, Super Critical | Poziomy ważności wyzwalające alert eskalacji przez e-mail i Slack |
| Deduplication | Włączona | Oznaczanie potencjalnych duplikatów zgłoszeń przed trafieniem na tablicę |
| Require Retest | Wyłączony | Wymóg potwierdzenia przez badacza, że poprawka działa, przed rozwiązaniem zgłoszenia |
| Max Appeals | 3 | Maksymalna liczba odwołań od odrzuconego zgłoszenia |
Ustawienia rotacji dyżurowej (tryb, harmonogram, członkowie i automatyczne przypisywanie) mają dedykowaną stronę. Szczegóły w On-Call Rotation.
Jeśli domyślna osoba przypisana nie zostanie ustawiona, nowe zgłoszenia pojawiają się jako nieprzypisane na tablicy triażu. Zespół nadal może je przejmować ręcznie, ale przypisanie zapewnia, że nic nie umknie.
Alerty eskalacji są wysyłane do domyślnej osoby przypisanej i publikowane na skonfigurowanym kanale Slack. Integrację ze Slack konfiguruje się w Account Settings > Integrations.
Zakładka Payouts
VDP Add-on — ta zakładka wymaga VDP Add-on (49 USD/mies.). Programy Free nie przetwarzają wypłat przez Kit.
Zakładka Payouts konfiguruje sposób obsługi wypłat nagród.
| Pole | Domyślnie | Opis |
|---|---|---|
| Supported Payment Methods | PayPal | Obsługiwane metody: PayPal, Bank Transfer, Crypto |
| Require Tax Documents | Tak | Badacze muszą przesłać formularz W-9 (USA) lub W-8BEN (zagraniczni) przed otrzymaniem wypłaty |
| Require Agreement | Tak | Badacze muszą zaakceptować umowę ujawniania przed wypłatą |
| Minimum Payout | $50 | Zarobki badaczy poniżej progu są kumulowane do momentu osiągnięcia minimum |
| Currency | USD | Waluta dla wszystkich kwot nagród i wypłat |
Wymóg dokumentów podatkowych służy zachowaniu zgodności prawnej. Wyłączenie tego ustawienia oznacza, że badacze mogą otrzymywać wypłaty bez dostarczenia dokumentacji podatkowej — przed wyłączeniem skonsultuj się z działem finansowym.
Zakładka Spam
Ustawienia antyspamowe chronią program przed zalewem zgłoszeń i masowymi zgłoszeniami niskiej jakości.
| Pole | Domyślnie | Opis |
|---|---|---|
| Max Reports per Window | 5 | Maksymalna liczba zgłoszeń od jednego badacza w oknie czasowym |
| Window Duration | 5 minut | Okno czasowe do ograniczania częstotliwości |
| Block Duration | 1 godzina | Czas blokady badacza po przekroczeniu limitu |
| Cleanup Interval | 24 godziny | Czas przechowywania rekordów spamu przed automatycznym usunięciem |
Wartości domyślne są konserwatywne. Jeśli legalni badacze osiągają limit, zwiększ czas trwania okna lub podnieś próg maksymalnej liczby zgłoszeń. W przypadku intensywnego spamu skróć okno i wydłuż czas blokady.
Zablokowani badacze widzą jasny komunikat informujący, kiedy mogą ponownie przesłać zgłoszenie. Rekordy spamu są automatycznie usuwane w skonfigurowanym interwale.
Zakładka security.txt
Ta zakładka konfiguruje pola używane do generowania pliku /.well-known/security.txt zgodnie z RFC 9116. Kit serwuje ten plik automatycznie, gdy program jest aktywny.
| Pole | Domyślnie | Opis |
|---|---|---|
| Contact Email | Brak (wymagane) | Adres e-mail do zgłaszania podatności. Publikowany w polu Contact:. |
| Expiration | 365 dni | Liczba dni od wygenerowania do wygaśnięcia security.txt. RFC 9116 wymaga pola Expires:. |
| Policy URL | Generowany automatycznie | URL strony polityki ujawniania. Domyślnie wskazuje politykę hostowaną przez Kit. |
| Acknowledgments URL | Brak | URL strony Hall of Fame, jeśli jest włączona |
| Hiring URL | Brak | Link do ofert pracy zespołu ds. bezpieczeństwa |
| Encryption URL | Brak | URL klucza publicznego PGP do szyfrowanej komunikacji |
Zanim plik security.txt zacznie być serwowany, musisz ustawić kontaktowy adres e-mail. Pełne szczegóły konfiguracji, formatowania i weryfikacji security.txt zawiera security.txt Setup.
Branding e-mail
Powiadomienia e-mail wysyłane do badaczy automatycznie korzystają z brandingu konta — logo, koloru wiodącego i nazwy programu jako nadawcy. Skonfiguruj je w Account Settings > Branding. Nie jest wymagana żadna dodatkowa konfiguracja specyficzna dla VDP. Szczegóły w Komunikacja z badaczami.
W skrócie
- Ustaw nazwę programu i dostosuj tekst polityki ujawniania
- Zdefiniuj cele in-scope i kategorie out-of-scope
- Skonfiguruj macierz nagród (VDP Add-on) lub potwierdź program bez nagród (Free)
- Ustaw cele SLA dla każdego poziomu ważności
- Przypisz domyślnego właściciela triażu
- Skonfiguruj metody wypłat i wymagania podatkowe (VDP Add-on)
- Sprawdź progi antyspamowe
- Ustaw adres e-mail kontaktowy dla security.txt
- Skonfiguruj integrację ze Slack dla alertów eskalacji
- Ustaw status na Active po zakończeniu konfiguracji
Co dalej
- security.txt Setup — szczegółowy przewodnik po zgodności z RFC 9116 i weryfikacji
- Triaging Reports — jak korzystać z tablicy Kanban, oceniać ważność i rozwiązywać zgłoszenia