Integracja z AI
Jak korzystać z wbudowanego asystenta AI i zewnętrznych narzędzi MCP do automatyzacji triażu VDP, oceny ważności i komunikacji z badaczami.
Dlaczego to ważne
Triaż bezpieczeństwa to powtarzalna praca o dużym obciążeniu poznawczym. Każde zgłoszenie wymaga sprawdzenia zakresu, wykrycia duplikatów, oceny ważności i odpowiedzi do badacza. Wsparcie AI skraca średni czas triażu z godzin do minut.
Agent CSIRT AI może odczytać cały stan programu, zasugerować ważność, sprawdzić duplikaty i przygotować szkic odpowiedzi bez opuszczania kontekstu pracy. Działa jako copilot, nie autopilot — każda operacja zapisu wymaga wyraźnego potwierdzenia przed wykonaniem.
Automatyczna weryfikacja AI
Każde przesłane zgłoszenie jest automatycznie oceniane, zanim trafi na tablicę triażu. Nie wymaga to żadnej konfiguracji — weryfikacja jest uruchamiana przy każdym zgłoszeniu.
Weryfikator wykrywa pięć kategorii sygnałów niskiej jakości generowanych przez AI:
| Sygnał | Co wykrywa |
|---|---|
| Zmyślone nazwy funkcji | Odwołania do metod lub API nieistniejących w popularnych frameworkach ani w docelowej bazie kodu |
| Sfabrykowane numery CVE | Identyfikatory CVE nieobecne w bazie NVD lub hasze commitów, które nie istnieją |
| Niejasny proof-of-concept | „Mogę to zademonstrować na żądanie” bez kroków reprodukcji, zrzutów ekranu ani uruchamialnego exploitu |
| Szablonowy język | Skopiowana struktura z szablonu raportu bug bounty, pasująca do dowolnego celu |
| Proza typowa dla AI | Znaczniki stylistyczne typowe dla treści generowanych przez AI: jednolita długość zdań, nadmierne formatowanie, słownictwo charakterystyczne dla LLM |
Każde zgłoszenie otrzymuje wynik pewności (0–100) i rekomendację:
| Rekomendacja | Znaczenie |
|---|---|
| Pass | Nie wykryto sygnałów niskiej jakości. Zgłoszenie trafia na tablicę triażu normalnie. |
| Review | Wykryto łagodne sygnały. Zgłoszenie trafia na tablicę ze znacznikiem ostrzeżenia. |
| Flag | Silne sygnały niskiej jakości. Zgłoszenie jest oznaczone na karcie triażu plakietką AI z uzasadnieniem. |
Oznaczone zgłoszenia nigdy nie są automatycznie odrzucane. Wynik weryfikacji i uzasadnienie są widoczne w widoku szczegółów zgłoszenia, umożliwiając podjęcie ostatecznej decyzji. Jest to wyłącznie informacja doradcza — system jest celowo konserwatywny, aby uniknąć fałszywego oznaczania rzetelnych badaczy, zwłaszcza osób niebędących rodzimymi użytkownikami języka angielskiego.
Agent CSIRT AI
Dostęp do asystenta AI przez czat na pasku bocznym (ikona czatu w górnej nawigacji). Na stronach VDP asystent automatycznie ładuje agenta CSIRT z pełnym dostępem do danych programu.
Agent ma dostęp do 21 narzędzi w dwóch kategoriach:
- Narzędzia odczytu (15) — zapytania o stan programu, zgłoszenia, badaczy, metryki i dane finansowe
- Narzędzia zapisu (6) — triaż zgłoszeń, rejestracja ocen, wysyłanie wiadomości i zatwierdzanie nagród
Narzędzia zapisu wymagają potwierdzenia. AI opisze planowaną akcję i poczeka na zatwierdzenie przed wykonaniem.
Narzędzia odczytu
| Narzędzie | Opis |
|---|---|
csirt_get_setup_guide |
Przegląd programu z liczbą zgłoszeń, procentem zgodności z SLA i listą kontrolną kompletności konfiguracji |
csirt_get_program |
Pełna konfiguracja programu — wszystkie siedem zakładek ustawień w formie czytelnych danych |
csirt_list_reports |
Filtrowana lista zgłoszeń ze wskaźnikami SLA (filtrowanie wg statusu, ważności, osoby przypisanej, statusu SLA) |
csirt_get_report |
Pełne szczegóły zgłoszenia: ocena, wiadomości, oś czasu, nagroda, profil badacza |
csirt_get_report_timeline |
Chronologiczny dziennik wszystkich zdarzeń na zgłoszeniu (zmiany statusu, wiadomości, oceny, przypisania) |
csirt_check_duplicates |
Wyszukiwanie potencjalnych duplikatów na podstawie pasującego endpointu i typu podatności |
csirt_validate_scope |
Sprawdzenie, czy endpoint ze zgłoszenia mieści się w skonfigurowanym zakresie programu |
csirt_suggest_severity |
Zwrot kontekstu zgłoszenia wraz z macierzą nagród, umożliwiając AI ocenę odpowiedniej ważności |
csirt_get_bounty_benchmark |
Historyczne dane o nagrodach dla danego poziomu ważności lub typu podatności (mediana, średnia, zakres, ostatnie przykłady) |
csirt_list_messages |
Pełny wątek wiadomości zgłoszenia, w tym notatki wewnętrzne |
csirt_draft_response |
Załadowanie odpowiedniego szablonu Liquid z wypełnionymi zmiennymi, aby AI mógł przygotować naturalną odpowiedź dla badacza. To narzędzie odczytu — przygotowuje kontekst, ale niczego nie wysyła. Do wysłania służy csirt_send_message. |
csirt_get_ledger |
Ścieżka audytu finansowego z filtrowaniem wg zgłoszenia, typu wpisu i zakresu dat |
csirt_get_metrics |
MTTA, MTTR, procent zgodności z SLA, zgłoszenia wg ważności i statusu, najlepsi badacze, łączne dane o nagrodach |
csirt_get_researcher |
Profil badacza z historią zgłoszeń, poziomem karmy i łączną kwotą nagród |
csirt_list_researchers |
Filtrowany katalog badaczy z liczbą zgłoszeń i sumami nagród |
Narzędzia zapisu
Narzędzia zapisu wymagają wyraźnego potwierdzenia przed wykonaniem. AI poinformuje, co zamierza zrobić, a akcję trzeba zatwierdzić.
| Narzędzie | Opis |
|---|---|
csirt_triage_report |
Zmiana statusu zgłoszenia (np. ze Submitted na Triaged) z opcjonalnym komentarzem |
csirt_assess_report |
Zapis wektora CVSS i oceny ważności w zgłoszeniu |
csirt_dismiss_report |
Odrzucenie zgłoszenia z kodem przyczyny (poza zakresem, duplikat, niepowtarzalny, spam) i opcjonalną notatką |
csirt_assign_report |
Przypisanie zgłoszenia do członka zespołu w celu zbadania |
csirt_send_message |
Wysłanie wiadomości w wątku zgłoszenia — zewnętrznej (widocznej dla badacza) lub wewnętrznej (tylko dla zespołu) |
csirt_approve_bounty |
Zatwierdzenie kwoty nagrody za rozwiązane zgłoszenie (tylko VDP Add-on) |
Wszystkie narzędzia zapisu wymagają zakresu mcp_write przy dostępie przez zewnętrznych klientów MCP.
Przykładowe polecenia
Użycie w czacie na pasku bocznym na dowolnej stronie VDP:
"Pokaż kolejkę triażu — co jest zagrożone przekroczeniem SLA?"
"Sprawdź zgłoszenie rpt_abc123 pod kątem duplikatów i zasugeruj ważność."
"Przygotuj odpowiedź walidacyjną dla zgłoszenia rpt_abc123, wyjaśniając, że potwierdzono SQL injection."
"Jaki jest wskaźnik zgodności z SLA w tym miesiącu?"
"Wyświetl wszystkie nieprzypisane zgłoszenia o ważności Critical."
"Przenieś zgłoszenie rpt_abc123 do statusu Validated i przypisz je do Alice."
"Zatwierdź nagrodę $500 za zgłoszenie rpt_abc123 — to XSS o ważności High."
"Pokaż profil badacza, który przesłał rpt_abc123."
"Jak wygląda historia nagród dla znalezisk o ważności High?"
Asystent korzysta z narzędzi odczytu, aby zebrać kontekst, a następnie z narzędzi zapisu, gdy zostanie poproszony o podjęcie działania. Polecenia można łączyć naturalnie — „sprawdź duplikaty, zasugeruj ważność i przygotuj odpowiedź” uruchomi trzy narzędzia sekwencyjnie.
Połączenie przez MCP (klienci zewnętrzni)
Dla zewnętrznych asystentów AI, takich jak Claude Desktop, Claude Code lub niestandardowi agenci MCP, wszystkie 21 narzędzi CSIRT jest dostępnych przez MCP API. Narzędzia zapisu wymagają zakresu mcp_write.
Instrukcje konfiguracji, przepływ autoryzacji i zarządzanie zakresami opisano w Connecting AI Assistants.
Po połączeniu klient zewnętrzny ma dostęp do tego samego zestawu narzędzi co wbudowany czat na pasku bocznym. Na początek warto wywołać csirt_get_setup_guide, aby uzyskać przegląd programu przed użyciem pozostałych narzędzi.
Endpoint llms.txt
Portal bezpieczeństwa automatycznie udostępnia czytelny maszynowo opis pod adresem /llms.txt. Zgodnie ze standardem llms.txt dostarcza asystentom AI ustrukturyzowany kontekst dotyczący programu ujawniania podatności — zakres, zasady współpracy i wytyczne zgłaszania. Nie wymaga konfiguracji; aktualizuje się automatycznie przy zmianie ustawień programu.
Szybka lista kontrolna
- Otwarcie zgłoszenia i użycie czatu AI na pasku bocznym do wypróbowania polecenia „Sprawdź duplikaty”
- Zapytanie asystenta „Jaka jest zgodność z SLA w tym miesiącu?” z poziomu dashboardu VDP
- Wypróbowanie polecenia „Przygotuj odpowiedź odrzucającą” na zgłoszeniu poza zakresem
- Sprawdzenie plakietki weryfikacji AI na dowolnym oznaczonym zgłoszeniu, aby zrozumieć, co ją wywołało
- Połączenie zewnętrznego klienta MCP i wywołanie
csirt_get_setup_guidew celu weryfikacji dostępu - Zapoznanie się z Triaging Reports, aby poznać pełny przepływ triażu obsługiwany przez te narzędzia