Daromadlar:
- Qayta kirish, kirishni boshqarish, oracle manipulyatsiyasi va oldingi ishga tushirish kabi umumiy zaiflik modellarini tanib olish va ularni statik tahlil vositasi + sun'iy intellekt + inson bilan skanerlash qobiliyati
- Asbob chiqishini tushuntirish va MEV va biznes mantig'idagi noto'g'ri ijobiy va zaif tomonlarni birinchi o'ringa qo'yishda AI kuchli tomonlarini farqlash qobiliyati
- “Toza skanerlash” xavfsizlik sertifikati emasligini, skanerlash faqat bitta nazorat qatlami ekanligini tushuning
Biz oldingi bo'limda auditning yaxlit intizomini ko'rdik. Ushbu bo'limda biz ko'proq texnik mavzuga e'tibor qaratamiz: zaiflikni skanerlash - koddagi zaifliklarning ma'lum naqshlarini tizimli qidirish. Bu erda biz sun'iy intellektdan statik tahlil vositalari bilan birgalikda ma'lum zaiflik namunalarini skanerlovchi va tavsiflovchi yordamchi sifatida foydalanamiz. Maqsad: eng keng tarqalgan zaifliklar bilan chuqurroq tanishish va AI qayerda ishonchli va ularni skanerlashda qayerda etarli emasligini farqlash.
Statik va dinamik skanerlash
Skanerlash ikki xil bo'ladi. Statik tahlil - kodni ishga tushirmasdan tekshirish: Slither va Mythril kabi vositalar shartnoma kodini skanerlaydi va ma'lum naqshlarni belgilang. Dinamik/ramziy tahlil (kodni turli xil kirishlar bilan ishlatish yoki uni matematik jihatdan o'rganish): fuzzing (tasodifiy kiritish bilan bombardimon qilish) va ramziy bajarish (barcha mumkin bo'lgan yo'llarni o'rganish) ushbu guruhga kiradi.
AI bu vositalarning o‘rnini bosmaydi, balki ularni to‘ldiradi: avtomobil ogohlantirish berganida, AI ogohlantirishni oddiy tilda tushuntiradi; AI asbob naqshni o'tkazib yuborganida eslatishi mumkin; Ammo AI qanchalik skanerlashiga kafolat bera olmaydi. To'g'ri ish jarayoni: asbob + AI + inson.
Maslahat: AIga statik tahlil vositasi (masalan, Slither hisoboti) natijasini bering va “har bir ogohlantirishni oddiy tilda tushuntiring, qaysilari haqiqiy xavf va qaysilari noto‘g‘ri ijobiy bo‘lishi mumkin?” deb so‘rang. so'rang. AI xom asbob chiqishini odamlar uchun tushunarli va ustuvor qilishda bebahodir.
Eng keng tarqalgan zaiflik namunalari
1. Qayta kirish. Agar funktsiya tashqi shartnomani o'z holatini yangilamasdan chaqirsa, chaqirilgan shartnoma orqaga qaytishi, yana bir xil funktsiyani ishga tushirishi va fondni bir necha marta olib qo'yishi mumkin. Yechim: tekshiruvlar-effektlar-o'zaro ta'sirlar tartibi va qayta kirish qo'riqchisi.
2. Kirish nazoratining yo'qligi. Muhim funktsiya (o'chirish, olib tashlash, yangilash) tasodifan ommaga e'lon qilinadi. Bu eng keng tarqalgan va qimmat xatolardan biridir.
3. Oracle manipulyatsiyasi. Shartnomaning tashqi narx manbasiga (oracle) ko'r-ko'rona tayanishi. Tajovuzkor narxni bir zumda manipulyatsiya qiladi va protokolni aldaydi. Yechim: vaqt bo'yicha o'rtacha narx (TWAP), ko'p manbali.
4. Butun sonlarning to‘lib ketishi/pastlanishi. Raqam ruxsat etilgan maksimal qiymatdan oshib ketganda va boshiga qaytsa. Zamonaviy Solidity uning ko'p qismini avtomatik ravishda ushlaydi, ammo xavf past darajadagi (montaj) kodda qoladi.
5. Oldindan yugurish. Tranzaktsiyalar tasdiqlanishidan oldin jamoat hovuzida (mempulda) paydo bo'ladi; Buzg'unchi sizning tranzaksiyangizni ko'rishi va uning oldiga o'z tranzaktsiyasini kiritishi mumkin. MEV (Maximal Extractable Value — tranzaktsiyalar ketma-ketligidan olingan qiymat) bu mavzuning umumiy nomi.
6. Xizmatni rad etish (DoS). Loop juda qimmatga tushadi va funktsiyani yaroqsiz holga keltiradi yoki manzilga bog'liqlik qulflanadi.
7. Risklarni yangilash. Saqlash to'qnashuvi va yangilanadigan shartnomalarda vakolatni suiiste'mol qilish.
zaiflik
AI skanerlash ishonchi
Nima uchun
qayta kirish
yuqori
Taniqli, aniq naqsh
kirish nazorati
yuqori
Mog'orni skanerlash mumkin
Butun son operatsiyalari
yuqori
standart nazorat
Oracle manipulyatsiyasi
o'rta
Kontekstni talab qiladi
Oldindan ishlaydigan/MEV
O'rta-past
maxsus protokol
biznes mantiqiy xatosi
past
Haqiqiy, kontekstual
Zaif taklif / Kuchli taklif
Zaif taklif:
Ushbu kodda bo'shliq bormi?
Kuchli so'rov:
Sizning rolingiz: xavfsizlikni tekshirish bo'yicha yordamchi. Quyidagi shartnomani quyidagi ma'lum naqshlar uchun skanerlang va har biri uchun "xavf ostida/yo'q/ishonchsiz": qayta kirish, kirishni boshqarish, butun son operatsiyalari, oracledependency, front-running, DoS, yangilash xavfsizligi. Har bir aniqlikni tegishli qatorga bog'lang va nima uchun xavf borligini tushuntiring. Bular statik tahlil vositasi va auditor yordamida TASHLATILADIGAN farazlardir. E'tibor bering, noto'g'ri pozitivlar bo'lishi mumkin.
To'rt nusxa ko'chirish shablonlari
1) Asbob chiqishi tavsifi:
Quyida statik tahlil vositasi (Slither) hisoboti keltirilgan. Har bir ogohlantirishni oddiy tilda tushuntiring: bu nimani anglatadi, bu haqiqiy xavfmi yoki mumkin bo'lgan noto'g'ri ijobiymi, uning ustuvorligi nima bo'lishi kerak? Qat'iy qaror qabul qilmang; Auditor tasdiqlashiga ustuvorlik bering.
2) Qayta kirishga qaratilgan skrining:
Ushbu shartnomada tashqi qo'ng'iroqlarni amalga oshiradigan barcha funktsiyalarni toping. Ularning har biri uchun tekshiruvlar-ta'sirlar-o'zaro ta'sirlar tartibiga rioya qilinganligini va qayta kirish qo'riqchisi mavjudligini tekshiring. Xavflilarni chiziq bilan ko'rsating. Agar ishonchingiz komil bo'lmasa, belgilang; Ekspluatatsiya kodini yaratish.
3) Kirishni boshqarish xaritasi:
Ushbu shartnomadagi barcha tashqi/ommaviy funktsiyalarni sanab o'ting va har biri uchun "kim qo'ng'iroq qilishi mumkin" (har kim/egasi/rol)ni belgilang. Muhim operatsiyalarni bajaring (olib tashlash, chop etish, yangilash) va kirish nazorati zaif bo'lganlarni belgilang. Uni jadval bilan taqdim eting.
4) noto'g'ri ijobiy bartaraf:
Nega bu skanerlash ogohlantirishi REAL xavf (noto‘g‘ri musbat) bo‘lmasligi mumkinligini ko‘rib chiqing: qaysi kontekst yoki kod holati bu ogohlantirishni bekor qiladi? Lekin "mutlaqo muammo yo'q" demang; Tasdiqlash kerak bo'lgan fikrlarni sanab o'ting.
Uchta mini ish (raqamda)
1-holat - Avtomobil + AI samaradorligi ikki baravar oshirildi. Bitta jamoa Slitherni 12 ta shartnoma loyihasi bo'yicha ishga tushirdi va 140 ta ogohlantirish oldi. Biz AI tushuntirishlarni va ogohlantirishlarga ustuvorlik berganimizdan so'ng, 140 ta ogohlantirishdan 95 tasi noto'g'ri ekanligi ma'lum bo'ldi; Jamoa asosiy e’tiborini 45 nafar haqiqiy nomzodga qaratdi. Triaj vaqti 2 kundan 5 soatgacha kamaydi. Dars: AI avtomobil ishlab chiqarishni insoniylashtirishda kuchli.
2-holat - AI MEVni o'g'irlab ketdi. DEX (markazlashtirilmagan almashinuv) shartnomasida AI standart naqshlarni toza deb topdi, ammo oldingi zaiflikni aniqlay olmadi; chunki bu protokolning ishlash tartibiga xos edi. Inson auditori va simulyatsiya ushlangan. Dars: MEV/oldindan ishlash kabi protokolga xos xavflar AIning zaif sohasidir.
3-holati - noto'g'ri pozitivga vaqt sarflashdan qoching. AI qayta kirish haqidagi ogohlantirish aslida noto'g'ri ijobiy ekanligini tushuntirganda, jamoa keraksiz qayta yozishdan qutuldi (funktsiya allaqachon himoyalangan edi). Ammo jamoa buni baribir bitta sinov bilan tasdiqladi. Dars: AI ustuvorlik qiladi; Tasdiqlash yana sinov bilan birga keladi.
Skanerlash chegaralari
Skanerlash ma'lum naqshlarni topadi. Asbob ham, AI ham yangi, noyob yoki protokolga xos zaiflikni aniqlashga kafolat bermaydi. Shuning uchun skrining tekshiruvi auditning bir qismidir; o'zi emas. “Skanerlash toza, demak u xavfsiz degani” degan fikr bu sohadagi eng xavfli noto‘g‘ri tushunchalardan biridir. Cho'kish past osilgan mevalarni oladi; Chuqur va o'ziga xos xavflar uchun inson tajribasi, sinovlar, noaniqlik va rasmiy audit muhim ahamiyatga ega.
Diqqat: Skanerlash vositasi yoki AIning "toza" hisoboti xavfsizlik sertifikati emas. Uni shu tarzda taqdim etish - ayniqsa investorlarga - noto'g'ri va axloqiy emas.
Umumiy xatolar
- Tekshirish uchun skriningni almashtirish. Skanerlash butun emas, balki bir qatlamdir.
- Asboblarsiz AIdan foydalanish. Statik tahlil + AI + insonning birgalikda ishlashi.
- Tasdiqlashsiz noto'g'ri pozitivlarni yo'q qilish. Har bir ekran sinovdan o'tgan/inson tomonidan tasdiqlangan.
- AIga tayanib, protokolga xos xavflarni (MEV) chetlab o'tish. AIning zaif maydoni.
- "Toza skanerlash" = "xavfsiz" deb o'ylash. Noma'lum narsani topa olmaydi.
- Ekspluatatsiya kodini yaratish. Faqat mudofaaviy xavf tavsifi qonuniydir.
Xulosa
- Zaiflikni skanerlash avtomobil + AI + inson bilan ma'lum zaiflik modellarini qidiradi.
- AI statik tahlil vositasi chiqishini tushuntirish va ustuvorlik qilishda kuchli.
- Qayta kirish va kirishni boshqarish kabi aniq naqshlarda ishonchli; MEV va biznes mantig'ida zaif.
- Hatto noto'g'ri pozitivlarni yo'q qilish ham tasdiqlashni talab qiladi.
- "Toza skanerlash" xavfsizlik sertifikati emas; Bu nazorat o'rnini bosa olmaydi.
Ilova vazifasi
Shartnoma namunasida statik tahlil vositasini ishga tushiring (agar iloji bo'lsa) yoki tayyor Slither hisobotini toping. AIga "asbob chiqishi tavsifi" so'rovini qo'llang. AI: (1) ogohlantirishlarni to'g'ri tushuntiradimi yoki yo'qligini baholang, (2) noto'g'ri pozitivlarni farqlashda mantiqiy va (3) protokolga xos xavfni o'tkazib yuboradi. Jadvaldagi "avtomobil topildi / AI tushuntirdi / inson tomonidan tasdiqlandi" ustunlarini to'ldiring.
nazorat ro'yxati
- [ ] Men lyukni boshqaruv qatlami sifatida joylashtirdim.
- [ ] Men statik tahlil vositasi + AI + insonni birgalikda ishlatganman.
- [ ] Men maʼlum naqshlarni toifalar boʻyicha qidirdim.
- [ ] Tasdiqlash bilan noto'g'ri pozitivlarni yo'q qildim.
- [ ] Men MEV/biznes mantig'i kabi zaif sohalarda odamlarga tayandim.
- [ ] Men kafolat sifatida "toza tozalash" ni taklif qilmadim.
- [ ] Men faqat mudofaa maqsadida ishladim; Men ekspluatatsiya yaratmadim.