Fałszywe Alarmy
TL;DR
W bezpieczeństwie fałszywy alarm występuje, gdy narzędzie zgłasza problem, który w rzeczywistości nie istnieje.
Co to jest Fałszywy Alarm?
Fałszywy alarm to sytuacja, gdy narzędzie bezpieczeństwa zgłasza problem, który w rzeczywistości nie istnieje.
Prosty przykład:
- Prawdziwy problem: Alarm przeciwpożarowy włącza się, ponieważ jest pożar.
- Fałszywy alarm: Alarm przeciwpożarowy włącza się z powodu pary z gotowania.
Alarm jest prawdziwy, ale nie ma rzeczywistego zagrożenia.
Dlaczego Fałszywe Alarmy Są Problemem
Fałszywe alarmy robią więcej niż tylko marnowanie czasu. Mogą prowadzić do rzeczywistych problemów w miarę upływu czasu.
Prowadzą do:
- Marnowania czasu na naprawianie problemów, które nie istnieją
- Frustracji między zespołami bezpieczeństwa a zespołami deweloperskimi
- Wyższego ryzyka, ponieważ prawdziwe problemy są ignorowane
Dlaczego Fałszywe Alarmy Się Zdarzają
Narzędzia bezpieczeństwa są zaprojektowane, aby być ostrożne. Bezpieczniej jest, gdy dają zbyt wiele ostrzeżeń, niż gdyby miały przegapić prawdziwy atak.
Typowe powody:
-
Brak kontekstu
Narzędzie widzi zakodowane na stałe hasło, ale jest ono tylko w pliku testowym.
-
Złożony kod
Narzędzie uważa, że dane wejściowe użytkownika są niebezpieczne, ale kod już je oczyszcza.
-
Stare zasady
Nowe, bezpieczne oprogramowanie wygląda jak stare zagrożenie.
-
Zasady, które są zbyt szerokie
Na przykład, oznaczanie każdego użycia eval() nawet, gdy jest bezpieczne.
Rzeczywisty Koszt Fałszywych Alarmów
Prawdziwy problem pojawia się, gdy zbyt wiele alarmów się nagromadzi.
- Zespoły przestają zwracać uwagę na alarmy.
- Budowanie i wydawanie oprogramowania spowalnia.
- Wykwalifikowani inżynierowie marnują czas na przeglądanie fałszywych problemów.
Fałszywe Pozytywy vs Fałszywe Negatywy
| Termin | Co oznacza |
|---|---|
| Prawdziwy Pozytyw | Prawdziwy problem jest poprawnie wykryty |
| Fałszywy Pozytyw | Zgłoszono problem, który nie jest prawdziwy |
| Prawdziwy Negatyw | Bezpieczny kod jest poprawnie zignorowany |
| Fałszywy Negatyw | Prawdziwy problem został pominięty (to jest niebezpieczne) |
Powiązane Terminy
- Zmęczenie Alertami
- SAST
- Triaging
- EPSS
FAQ
Jak mogę stwierdzić, czy alert jest fałszywym pozytywem?
Powinieneś przejrzeć kod, aby ustalić, czy prawdziwy użytkownik mógłby wywołać problem.
Czy narzędzia mogą mieć zero fałszywych pozytywów?
Nie. Celem jest ich redukcja, a nie całkowite usunięcie.
Czy powinienem przestać używać narzędzia z wieloma fałszywymi pozytywami?
Nie od razu. Większość narzędzi wymaga dostosowania do twojej bazy kodu.