Սահմանում
Հարձակման մակերեսը բոլոր այն ինտերֆեյսների, բաղադրիչների և փոխազդեցությունների ամբողջությունն է, որոնց միջոցով հարձակվողը կարող է փորձել գործարկել էքսպլոյտ համակարգի դեմ։ Blockchain (blockchain) և smart contract (smart contract) միջավայրերում սա ներառում է արտաքինից հասանելի բոլոր ֆունկցիաները, պրոտոկոլի մուտքի կետերը, կախվածությունները և տվյալների հոսքերը, որոնք կարող են չարաշահվել՝ փոխելու սպասվող վարքագիծը։ Այս հասկացությունը օգտագործվում է հասկանալու համար, թե որքան բաց է պրոտոկոլը, smart contract-ը կամ աջակցող ենթակառուցվածքը չարամիտ գործողությունների համար։ Ավելի մեծ կամ ավելի բարդ հարձակման մակերեսը սովորաբար նշանակում է հնարավոր կոմպրոմատների ավելի շատ ուղիներ, նույնիսկ եթե դրանցից ոչ բոլորը իրական խոցելիություններ են պարունակում։
Քրիպտո համակարգերում հարձակման մակերեսը ընդգրկում է թե՛ on-chain, թե՛ off-chain տարրերը, որոնք փոխազդում են smart contract-ի կամ պրոտոկոլի հետ։ Դրանք կարող են լինել contract-ի ֆունկցիաներ, թարմացման մեխանիզմներ, oracle (oracle) հոսքեր, վարչական բանալիներ և contract-ների կամ շղթաների միջև ինտեգրումներ։ Այս տարրերից յուրաքանչյուրը կարող է ներմուծել լրացուցիչ ենթադրություններ և վստահության սահմաններ՝ մեծացնելով այն ուղիների քանակը, որոնցով հարձակվողը կարող է փորձել խաթարել անվտանգության երաշխիքները։ Հարձակման մակերեսի ըմբռնումը, հետևաբար, առանցքային է համակարգային ռիսկի գնահատման և պաշտպանական միջոցառումների առաջնահերթության համար։
Համատեքստ և օգտագործում
Անվտանգության մասնագետներն ու աուդիտորները «հարձակման մակերես» տերմինը օգտագործում են նկարագրելու համար այն ծավալը, որը պետք է վերլուծվի blockchain (blockchain) պրոտոկոլի կամ smart contract-ի անվտանգության աուդիտի ընթացքում։ Հարձակման մակերեսի քարտեզագրումը ներառում է բոլոր հնարավոր մուտքի կետերի և փոխազդեցությունների նույնականացումը, որոնք կարող են հանգեցնել էքսպլոյտի, ներառյալ նուրբ վարքագծերը, օրինակ՝ reentrancy-ի ձևանմուշները կամ oracle-ներով պայմանավորված վիճակի փոփոխությունները։ Այս քարտեզագրումը չի ենթադրում, որ յուրաքանչյուր տարր անապահով է, այլ վերաբերվում է դրանցից յուրաքանչյուրին որպես հնարավոր վայրի, որտեղ կարող է թերություն լինել։
Առաջադեմ պրոտոկոլների նախագծման մեջ հարձակման մակերեսի նվազեցումը և ամրապնդումը հիմնական անվտանգության նպատակ է։ Նախագծողները կարող են կրճատել բաց ֆունկցիոնալությունը, պարզեցնել contract-ի տրամաբանությունը կամ սահմանափակել արտաքին կախվածությունները՝ նվազեցնելու կենսունակ հարձակման ուղիների քանակը։ Հարձակման մակերեսի հասկացությունը, այսպիսով, ապահովում է բարձր մակարդակի աբստրակցիա՝ հասկանալու համար, թե որքան բարդ է համակարգի անվտանգության ընդհանուր վիճակը և ինչպես կարող են ճարտարապետության, ինտեգրումների կամ կառավարման փոփոխությունները մեծացնել կամ նվազեցնել դրա ենթարկվածությունը շահագործման։