Definicja
Attack vector to zdefiniowana ścieżka, przez którą atakujący może uzyskać nieautoryzowany wpływ na integralność, dostępność lub poufność systemu. W kontekście bezpieczeństwa technologii łańcucha bloków (blockchain) i smart contractów odnosi się do konkretnego mechanizmu, stanu lub wzorca interakcji, który można wykorzystać do wywołania niezamierzonego zachowania lub wyciągnięcia wartości. Attack vectory mogą wynikać z błędów w projekcie protokołu, błędów implementacyjnych lub niebezpiecznych założeń dotyczących zewnętrznych komponentów, takich jak Oracle.
W odróżnieniu od ogólnej podatności, która jest słabością systemu, attack vector opisuje, w jaki praktyczny sposób ta słabość jest osiągana i wykorzystywana przez przeciwnika. Na przykład warunek Reentrancy w smart contractcie jest podatnością, natomiast sekwencja wywołań i zmian stanu, które czynią ją podatną na wykorzystanie, stanowi attack vector. Przeglądy bezpieczeństwa, programy Bug Bounty oraz badania prowadzone przez White Hatów koncentrują się na identyfikowaniu i opisywaniu attack vectorów, zanim zostaną przekształcone w działający Exploit.
Kontekst i zastosowanie
W zaawansowanych dyskusjach o bezpieczeństwie w świecie krypto termin attack vector służy do kategoryzowania i precyzyjnego komunikowania potencjalnej ścieżki kompromitacji w złożonych, kompozytowych systemach. Może opisywać niskopoziomowe problemy w logice smart contractu, interakcje między kontraktami, błędy w mechanizmach zachęt na poziomie protokołu lub zależności od źródeł danych i infrastruktury off-chain. Mapowanie attack vectorów pomaga formalizować model zagrożeń protokołu i doprecyzować, które założenia – takie jak wiarygodność Oracle – są najbardziej krytyczne.
Attack vectory są często dokumentowane w raportach po incydentach (post-mortem), gdzie odtwarza się pełen łańcuch warunków prowadzących do Exploitu. Pojawiają się także w ujawnieniach w ramach programów Bug Bounty, gdzie badacze White Hat wskazują dokładne warunki wstępne i wzorce transakcji wymagane do wywołania problemu. Z czasem powtarzające się attack vectory, takie jak te związane z Reentrancy lub błędnie skonfigurowanymi kontrolami dostępu, stają się standardowymi kategoriami w taksonomiach bezpieczeństwa i wpływają na najlepsze praktyki projektowania oraz audytowania protokołów.