Konfiguracja programu
Skonfiguruj jedenaście obszarów ustawień VDP, w tym zakres, kierowanie zgłoszeń, cele odpowiedzi, wypłaty, przyjmowanie zgłoszeń i e-mail programu.
To tłumaczenie może być nieaktualne. Wersja angielska została zaktualizowana od czasu ostatniego tłumaczenia tej strony. Zobacz po angielsku →
Co ustalić przed uruchomieniem
Konfiguracja programu ujawniania podatności (VDP) określa, co badacze mogą testować, kiedy zespół odpowie i jakie nagrody przewiduje. Ustal te warunki przed rozpoczęciem przyjmowania zgłoszeń.
Kit podaje wartości domyślne dla wielu ustawień, ale zakres, dane kontaktowe, odpowiedzialność i publiczna polityka wymagają świadomego sprawdzenia przed aktywacją.
Włączanie VDP
Przejdź do VDP, aby włączyć program. Pełny proces obsługi zgłoszeń jest dołączony do każdej aktywnej subskrypcji Kit.
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.
Ustawienia ogólne (General)
Zakładka General określa nazwę programu i politykę ujawniania.
| Pole | Opis |
|---|---|
| Program Name | Nazwa wyświetlana na stronie polityki ujawniania i w portalu badacza |
| Status | Draft, Active lub Paused. Ustaw na Active po zakończeniu konfiguracji |
| Disclosure Policy | Edytor tekstu z formatowaniem, wstępnie wypełniony zapisami 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ń.
Zakres (Scope)
Zakres definiuje, co badacze powinni, a czego nie powinni testować. Niejasny zakres prowadzi do niejasnych zgłoszeń. 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 | Wykluczone kategorie według podziału 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 objęte zakresem pozostaną puste, wszystkie cele są domyślnie objęte zakresem. Rzadko kiedy jest to pożądane. Wymień przynajmniej główne domeny swojej aplikacji.
Konfiguracja zakresu opisuje badaczom dozwolone cele i wykluczenia. Podczas triażu sprawdź zgłoszenie względem tych zasad; samo zapisanie zakresu nie oznacza automatycznego odrzucania zgłoszeń spoza niego.
Macierz nagród (Bounty Matrix)
Subskrypcja Kit: ta zakładka wymaga aktywnej subskrypcji Kit. Nagrody pozostają opcjonalne.
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ć.
| Poziom ważności | Domyślne minimum | Domyślne maksimum |
|---|---|---|
| Super Critical | 5 000 USD | 10 000 USD |
| Critical | 1 500 USD | 5 000 USD |
| High | 500 USD | 1 500 USD |
| Medium | 150 USD | 500 USD |
| Low | 50 USD | 150 USD |
| Informational | 0 USD | 0 USD |
Dostosuj te przedziały do budżetu i tolerancji ryzyka. Gdy na zgłoszeniu zostanie zarejestrowana ocena CVSS, Kit pokaże sugerowany przedział nagrody dla danego poziomu ważności.
Widoczność głosów nad nagrodą
Poniżej macierzy ta sama zakładka zawiera ustawienie widoczności głosów. Decyduje ono, czy wyniki głosowania nad propozycją nagrody, w tym bieżący licznik, głosy poszczególnych osób i ewentualne kwoty alternatywne, są widoczne, zanim członek zespołu odda własny głos.
| Co członkowie zespołu widzą przed oddaniem głosu | |
|---|---|
| W ciemno (domyślnie) | Kwotę, autora propozycji i uzasadnienie, a do tego liczbę zapieczętowanych odpowiedzi i osób, które jeszcze nie głosowały. Żadnych stanowisk, nazwisk ani kwot alternatywnych. |
| Na bieżąco | Wszystko, od pierwszego głosu. |
Głosowanie w ciemno jest domyślne, bo pierwsza liczba na ekranie staje się punktem odniesienia dla kolejnych. Tryb na bieżąco wybierz tylko wtedy, gdy świadomie chcesz, żeby członkowie zespołu widzieli kolejne głosy od razu. Ustawienie zapisuje się razem z resztą zakładki i pozostaje zachowane po zmianach poziomów nagród; możesz je też zmienić, prosząc podłączonego asystenta AI o rekonfigurację programu (zobacz Integrację z AI).
Terminy SLA (SLAs)
SLA definiują zobowiązania zespołu dotyczące czasu reakcji. Zegar SLA startuje w momencie przesłania zgłoszenia. Panel 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:
| Poziom ważności | 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órych naprawdę da się dotrzymać, a z czasem je zaostrzaj.
Wskaźniki SLA są widoczne na każdej karcie zgłoszenia na tablicy triażu:
- On Track (zielony): pozostało ponad 25% czasu przewidzianego w SLA
- At Risk (żółty): pozostało 25% lub mniej czasu przewidzianego w SLA (upłynęło 75% lub więcej)
- Breached (czerwony): termin SLA minął
Alerty o przekroczeniu SLA
Gdy zgłoszenie przekroczy SLA potwierdzenia, Kit powiadamia zespół trzema kanałami: odpowiedzią w wątku Slack tego zgłoszenia, DM-em lub e-mailem do osoby na dyżurze oraz incydentem w PagerDuty, jeśli masz podpięty PagerDuty. Powtarzane alerty o nierozwiązanym problemie łatwo zacząć ignorować. Dwa pola na dole tej zakładki pozwalają ograniczyć ich częstotliwość.
| Pole | Domyślnie | Zakres | Opis |
|---|---|---|---|
| Powtórzenia alertu po przekroczeniu | 3 | 0–20 | Ile razy zgłoszenie z przekroczonym SLA wywoła alert po tym pierwszym. Ustaw 0, żeby zaalarmować tylko raz i nie powtarzać. |
| Odstęp między alertami | 6 godzin | 6–720 | Ile Kit czeka, zanim ponowi alert o zgłoszeniu, które wciąż nie zostało potwierdzone. |
Pierwszy alert jest wysyłany zawsze, limit dotyczy wyłącznie powtórzeń. Ostatni alert w Slacku zawiera dopisek last reminder — no further alerts for this report, który informuje, że dalszych przypomnień o tym zgłoszeniu już nie będzie. Cisza po tym komunikacie oznacza wyczerpanie limitu.
Odłożenie zgłoszenia wstrzymuje także powtórzenia alertów o przekroczeniu, ale nie wstrzymuje pierwszego alertu.
Licznik zeruje się dopiero wtedy, gdy zgłoszenie opuszcza grupę otwartych statusów (Submitted, Triaged, Needs Clarification, Validated, In Progress), więc zgłoszenie otwarte ponownie startuje z pełną pulą. Przejście z jednego otwartego statusu do drugiego niczego nie zeruje.
Note
Minimalny odstęp wynosi 6 godzin. Wszystkie alerty o zgłoszeniu podlegają wspólnemu limitowi, który blokowałby wcześniejsze powtórzenia. Krótszy odstęp nie zadziałałby.
Komunikat o kolejce
Gdy przegląd zgłoszeń się opóźnia, powiedz o tym badaczom, zamiast kazać im zgadywać. Sekcja Komunikat o kolejce jest w VDP > Portal bezpieczeństwa, a nie w ustawieniach programu.
| Pole | Opis |
|---|---|
| Włącz teraz / Wyłącz | Włącza lub wyłącza komunikat. Obok widać, czy badacze go teraz widzą. |
| Treść | Zwykły tekst, maksymalnie 1000 znaków. Zostaw puste, żeby użyć domyślnej treści Kit, którą każdy badacz zobaczy w swoim języku. Własny tekst wyświetla się dokładnie tak, jak go napiszesz. |
| Przewidywany czas odpowiedzi | Opcjonalnie, np. „2–3 tygodnie”. Pojawia się pod treścią; zostaw puste, żeby go pominąć. |
| Wysyłaj też komunikat badaczom, których zgłoszenie przekroczy termin potwierdzenia | Opcjonalny automatyczny e-mail, opisany niżej. |
Dopóki komunikat jest włączony, badacze widzą go w formularzu zgłoszenia, na stronie potwierdzenia, w e-mailu z potwierdzeniem i przy każdym otwartym zgłoszeniu w portalu badacza. Podgląd pod polami pokazuje dokładnie to, co przeczytają.
Przy włączonej automatycznej wysyłce Kit wysyła komunikat jeden raz, e-mailem i w wątku zgłoszenia, gdy zgłoszenie przekroczy SLA potwierdzenia, a nikt z zespołu jeszcze go nie ruszył: nie przeszło triażu, nie ma oceny i nikt na nie nie odpowiedział. Samo przypisanie osoby, także automatyczne, nie liczy się jako reakcja. Dotyczy to tylko zgłoszeń przesłanych po włączeniu automatycznej wysyłki, więc jej włączenie nie rozsyła maili do całej zaległej kolejki. Każdy wysłany komunikat widać na osi czasu zgłoszenia.
Wyłącz komunikat, gdy nadrobisz zaległości. Razem z nim wyłącza się automatyczna wysyłka.
Prośby badaczy o informację
Badacz, który długo nie dostał odpowiedzi, może na stronie zgłoszenia w portalu badacza użyć przycisku Poproś o informację i dodać opcjonalną notatkę, którą widzi tylko zespół bezpieczeństwa.
- Przycisk odblokowuje się, gdy zgłoszenie przekroczy SLA potwierdzenia bez odpowiedzi albo po 14 dniach bez widocznej dla badacza aktywności zespołu.
- O informację można prosić raz na 7 dni dla danego zgłoszenia i tylko dopóki jest otwarte.
- Każda prośba powiadamia administratorów bezpieczeństwa programu i trafia do wątku Slack zgłoszenia. Zgłoszenie pokazuje oznaczenie Czeka na odpowiedź, dopóki ktoś nie odpowie badaczowi, nie zmieni statusu, nie przypisze zgłoszenia albo nie doda nowej oceny.
- Każda prośba wywołuje też zdarzenie webhooka
csirt.report.escalation_requested, jeśli je subskrybujesz. Notatka badacza nigdy nie trafia do danych.
Triaż (Triage)
Ustawienia triażu kontrolują kierowanie i przetwarzanie nowych 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ą osobną stronę. Szczegóły w poradniku Rotacja dyżurów.
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, a przypisanie wskazuje, kto odpowiada za ich obsługę.
Eskalacja dodaje wiadomość w wątku Slack zgłoszenia, a gdy zgłoszenie zostanie zwalidowane, wzywa osobę na dyżurze DM-em w Slacku lub e-mailem. Integrację ze Slackiem konfiguruje się w Account Settings > Integrations.
Zakładka Komponenty
Subskrypcja Kit: komponenty są dołączone i opcjonalne. Zgłoszenia działają także bez kierowania według komponentów.
Komponenty oznaczają zgłoszenia obszarem produktu i pozwalają Kit zasugerować obszar do potwierdzenia podczas triażu. Po potwierdzeniu komponentu Kit przypisuje jego domyślną osobę odpowiedzialną, jeśli została ustawiona, a zgłoszenie nie ma jeszcze właściciela. Po weryfikacji powiadamia kanał Slack komponentu, jeśli go skonfigurowano. Twórz komponenty tylko dla rzeczywistych granic odpowiedzialności. Ozdobny katalog dodaje kolejne pole, ale nie poprawia kierowania.
Reguły dopasowania, potwierdzanie, domyślne przypisanie i powiadomienia Slack opisuje Kierowanie zgłoszeń do zespołów.
Wypłaty (Payouts)
Subskrypcja Kit: ta zakładka wymaga aktywnej subskrypcji Kit.
Zakładka Payouts konfiguruje sposób obsługi wypłat nagród.
| Pole | Domyślnie | Opis |
|---|---|---|
| Supported Payment Methods | PayPal | Wybierz obsługiwane metody: Przelew bankowy, PayPal i Czek |
| 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 USD | Minimalna kwota pojedynczej wypłaty. Kit nie zainicjuje wypłaty nagrody poniżej tego progu |
| Currency | USD | Waluta dla wszystkich kwot nagród i wypłat |
| Finance Email | Puste | Skrzynka zespołu, który planuje płatności. Gdy adres jest ustawiony, zainicjowanie wypłaty wysyła na niego żądanie płatności z bezpiecznym linkiem, przez który finanse potwierdzają płatność albo zgłaszają jej niepowodzenie bez konta w Kit. Zostaw pole puste, żeby rejestrować płatności samodzielnie. Zobacz Potwierdzenie przez zespół finansowy |
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.
Ochrona przed spamem (Spam)
Ustawienia antyspamowe ograniczają serie zgłoszeń wysyłanych w krótkim czasie. Licznik nie obejmuje całej historii badacza.
| Pole | Domyślnie | Opis |
|---|---|---|
| Max Reports per Window | 5 | Liczba zgłoszeń z jednego adresu e-mail lub IP w danym przedziale czasu, po której następuje blokada |
| Window Duration | 5 minut | Czas liczony od pierwszego zgłoszenia w serii. Zgłoszenie po jego upływie rozpoczyna nowy przedział i zeruje licznik |
| Block Duration | 1 godzina | Czas automatycznej blokady. Blokady nałożone ręcznie na ekranie Spam Records trwają tydzień |
Jeśli blokowani są badacze przestrzegający zasad, zwiększ Max Reports per Window lub skróć Window Duration, żeby zgłoszenia trafiały do osobnych przedziałów. Przy intensywnym spamie obniż próg lub wydłuż Block Duration.
Osoba zablokowana widzi ogólny komunikat. Kit nie ujawnia, który filtr zatrzymał zgłoszenie. Automatyczna blokada wygasa po ustawionym czasie; licznik zeruje się przy kolejnym zgłoszeniu po zakończeniu przedziału. Blokady można też sprawdzać i zdejmować w VDP > Spam Records.
Szczegóły opisuje poradnik Limity zgłoszeń i blokady antyspamowe.
Zakładka Usuwanie treści
Zakładka Usuwanie treści decyduje, czy program przyjmuje też zgłoszenia nadużyć i podszywania się pod markę od innych podmiotów. Włącz ją tylko wtedy, gdy twój zespół odpowiada za tę ścieżkę. Żądanie usunięcia ma własny formularz, dowody, status i audit trail. Nie jest zgłoszeniem podatności z inną etykietą.
Przed włączeniem tej ścieżki przeczytaj Żądania usunięcia treści.
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 Konfiguracja security.txt.
Zakładka E-mail
Zakładka E-mail tworzy obsługę adresu security@ na działającej integracji poczty przychodzącej. Jeśli obaj dostawcy są gotowi, Kit wybiera Startupkit Email. W przeciwnym razie używa istniejącej integracji Cloudflare Email Routing z aktywnym stanem. Utworzenie adresu rejestruje obsługę po stronie Kit, ale nie konfiguruje domeny. Poczta zacznie trafiać do systemu, gdy działa catch-all Startupkit Email albo aktywny worker Cloudflare.
Skrzynka oparta na Cloudflare odbiera pocztę, ale wiadomości do badaczy nadal wychodzą z adresu platformy Kit. Wysyłanie z adresu programu wymaga Startupkit Email z aktywną funkcją wysyłki w imieniu domeny.
Usunięcie tożsamości zatrzymuje nowe wiadomości przez ten adres. Najpierw potwierdź, jak badacze będą kontaktować się z zespołem. Wygląd konta nadal określa logo i kolory wiadomości do badaczy. Zachowanie wiadomości opisuje Komunikacja z badaczami.
W skrócie
- Ustaw nazwę programu i dostosuj tekst polityki ujawniania
- Zdefiniuj cele objęte zakresem i kategorie poza zakresem
- Skonfiguruj macierz nagród lub potwierdź, że program nie oferuje nagród
- Ustaw cele SLA dla każdego poziomu ważności
- Ustal pulę alertów po przekroczeniu SLA: ile razy zgłoszenie po terminie ma znów zaalarmować zespół i w jakich odstępach
- Zdecyduj, czy używać komunikatu o kolejce i jego automatycznej wysyłki, gdy przegląd zgłoszeń się opóźnia
- Przypisz domyślnego właściciela triażu
- Utwórz reguły komponentów tylko tam, gdzie odpowiedzialność jest jasna
- Skonfiguruj metody wypłat i wymagania podatkowe
- Sprawdź progi antyspamowe
- Zdecyduj, czy program ma przyjmować żądania usunięcia treści
- Ustaw adres e-mail kontaktowy dla security.txt
- Utwórz i przetestuj tożsamość e-mail programu
- Skonfiguruj integrację ze Slackiem dla alertów eskalacji
- Ustaw status na Active po zakończeniu konfiguracji
Co dalej
- Konfiguracja security.txt: szczegółowy przewodnik po zgodności z RFC 9116 i weryfikacji
- Triaż zgłoszeń: jak korzystać z tablicy Kanban, oceniać ważność i rozwiązywać zgłoszenia
- Limity zgłoszeń i blokady antyspamowe: wszystkie powody odmowy przyjęcia zgłoszenia i sposób odblokowania osoby zatrzymanej omyłkowo
- Kierowanie zgłoszeń do zespołów: etykiety komponentów, domyślne przypisanie i powiadomienia Slack
- Żądania usunięcia treści: osobny proces obsługi zgłoszeń nadużyć