Approval Exploit

Approval exploit არის უსაფრთხოების სისუსტე, როდესაც თავდამსხმელები ბოროტად იყენებენ token allowance-ის ნებართვებს, რათა გადარიცხონ აქტივები იმაზე მეტად, ვიდრე მომხმარებელს სურდა ან ესმოდა, რომ ავტორიზებული ჰქონდა.

განსაზღვრება

Approval exploit არის უსაფრთხოების რისკის ისეთი ტიპი, როდესაც თავდამსხმელი იყენებს token approval-ს ან allowance-ის მექანიზმებს, რათა მსხვერპლის აქტივები გადაადგილოს დამატებითი თანხმობის გარეშე. ეს, როგორც წესი, ხდება მაშინ, როცა smart contract-ი ან ინტერფეისი მომხმარებელს აიძულებს მისცეს ზედმეტად დიდი ან არაუსაფრთხო allowance, რომელსაც შემდეგ თავდამსხმელი იძახებს მავნე ან კომპრომეტირებული კონტრაქტების მეშვეობით. ასეთ შემთხვევაში, exploit ჩვეულებრივ არ არღვევს თვითონ token-ის სტანდარტს, არამედ ბოროტად იყენებს ლეგიტიმურ ავტორიზაციის მოდელს, რომელიც ჩაშენებულია token-ის approval ლოგიკაში. შედეგად, ფონდების გადარიცხვა ტექნიკურად ვალიდურია ბლოკჩეინზე (blockchain), მიუხედავად იმისა, რომ არღვევს მომხმარებლის მოლოდინებს უსაფრთხოების და ნებართვის ფარგლების შესახებ.

ეს რისკი მჭიდროდ არის დაკავშირებული იმასთან, თუ როგორ ინახება და როგორ გამოიყენება token allowance-ის მდგომარეობები smart contract-ებში. როგორც კი თავდამსხმელი მიიღებს წვდომას დიდ ან შეუზღუდავ allowance-ზე, მას შეუძლია განმეორებით გამოიძახოს გადარიცხვის ფუნქციები მომხმარებლის მისამართის სახელით, სანამ დამტკიცებული ბალანსი მთლიანად არ დაიცლება. Approval exploit-ები ხშირად ეყრდნობა მოტყუებით შედგენილ ტრანზაქციის ფანჯრებს, შეცდომაში შემყვან კონტრაქტის სახელებს ან ადრე გაცემული ნებართვების მოულოდნელ გამოყენებას. ძირითადი მახასიათებელია აცდენა იმ შორის, რასაც მომხმარებელი ფიქრობს, რომ ავტორიზაცია მისცა, და იმ რეალურ უფლებებს შორის, რასაც allowance პრაქტიკაში იძლევა.

კონტექსტი და გამოყენება

უსაფრთხოების განხილვებში approval exploit განიხილება როგორც ნებართვების ბოროტად გამოყენების რისკი და არა როგორც უშუალოდ პროტოკოლის მარცხი. ის ხშირად ასოცირდება ERC-20 ტიპის token-ის დიზაინებთან, სადაც ცალკე approval ნაბიჯი ადგენს allowance-ს, რომელსაც სხვა კონტრაქტები ხარჯავენ. როდესაც ეს allowance-ები არასწორად არის კონფიგურირებული, არასდროს უქმდება ან გაიცემა ავნდობელ კონტრაქტებზე, ისინი ქმნიან მუდმივ შეტევის ზედაპირს, რომელსაც თავდამსხმელები მოგვიანებით ააქტიურებენ. შესაბამისად, exploit მდებარეობს smart contract-ის დიზაინის, wallet-ის UX-ის და მომხმარებლის მიერ on-chain ავტორიზაციის სემანტიკის გაგების გადაკვეთაზე.

ეს ტერმინი ხშირად გამოიყენება allowance-ის ცნებასთან ერთად, რათა აღწერონ, რამდენად დეტალური ან მარტივად გასაუქმებელი უნდა იყოს token-ის ნებართვები. უსაფრთხოების აუდიტორები და პროტოკოლის დიზაინერები approval exploit-ებს განიხილავენ როგორც ცალკე კატეგორიის საფრთხეს, რომელიც აუცილებლად უნდა იყოს გათვალისწინებული კონტრაქტის ინტერფეისებისა და ნებართვების ნაკადების დიზაინისას. ინციდენტების ანგარიშებში შეტევის approval exploit-ად მონიშვნა უსვამს ხაზს, რომ თავდამსხმელი მოქმედებდა ფორმალურად მინიჭებული ნებართვების ფარგლებში, მიუხედავად იმისა, რომ ეს ნებართვები მოპოვებული ან სტრუქტურირებული იყო მოტყუებით ან არაუსაფრთხოდ. ასეთი კლასიფიკაცია ეხმარება მის გარჩევას იმ შეცდომებისგან, რომლებიც წარმოიშობა არითმეტიკული ხარვეზებისგან, reentrancy-სგან ან სხვა დაბალ დონეზე არსებული contract-ის ბაგებისგან.

© 2025 Tokenoversity. ყველა უფლება დაცულია.