Opredelitev
Napadalna površina je celoten skupek vmesnikov, komponent in interakcij, prek katerih bi napadalec lahko poskušal sprožiti izkoriščanje ranljivosti v sistemu. V okoljih verige blokov (blockchain) in pametnih pogodb (smart contract) to vključuje vse funkcije, dosegljive od zunaj, vstopne točke protokola, odvisnosti in tokove podatkov, ki bi jih bilo mogoče zlorabiti za spremembo pričakovanega vedenja. Koncept se uporablja za razumevanje, kako izpostavljen je protokol, pametna pogodba ali podporna infrastruktura zlonamernim dejavnostim. Večja ali bolj kompleksna napadalna površina običajno pomeni več možnih poti do kompromisa, tudi če vse ne vsebujejo dejanskih ranljivosti.
V kripto sistemih napadalna površina zajema elemente na verigi (on-chain) in zunaj verige (off-chain), ki komunicirajo s pametno pogodbo ali protokolom. To lahko vključuje funkcije pogodbe, mehanizme nadgradenj, vire podatkov oraclov (oracle), administrativne ključe ter integracije med pogodbami ali med verigami. Vsak od teh elementov lahko uvede dodatne predpostavke in meje zaupanja ter s tem razširi število načinov, na katere bi napadalec lahko poskušal spodkopati varnostna jamstva. Razumevanje napadalne površine je zato ključno za ocenjevanje sistemskega tveganja in določanje prednosti pri obrambnih ukrepih.
Kontekst in uporaba
Strokovnjaki za varnost in revizorji uporabljajo izraz napadalna površina za opis obsega tega, kar je treba analizirati med varnostnim pregledom protokola verige blokov (blockchain) ali pametne pogodbe (smart contract). Kartiranje napadalne površine vključuje prepoznavanje vseh možnih vstopnih točk in interakcij, ki bi lahko vodile do izkoriščanja ranljivosti, vključno z bolj subtilnimi vedenji, kot so vzorci ponovnega vstopa (reentrancy) ali spremembe stanja, ki jih povzročajo oracli (oracle). To kartiranje ne predpostavlja, da je vsak element neseferen, temveč vsakega obravnava kot možno mesto, kjer bi se lahko skrivala napaka.
V naprednem oblikovanju protokolov je zmanjševanje in utrjevanje napadalne površine osrednji varnostni cilj. Načrtovalci lahko zmanjšajo izpostavljeno funkcionalnost, poenostavijo logiko pogodb ali omejijo zunanje odvisnosti, da zmanjšajo število izvedljivih napadalnih poti. Koncept napadalne površine tako ponuja visokonivojski način razmišljanja o tem, kako kompleksna je varnostna drža sistema in kako lahko spremembe v arhitekturi, integracijah ali upravljanju povečajo ali zmanjšajo njegovo izpostavljenost izkoriščanju.