Аудит вне рамок - 9
Отличный пример логического недочета, который нашел только Trust, в протоколе Forgeries.
Он указывает на то, что, не смотря на использование безопасного и общепринятого Chainlink VRF для генерации случайного числа, сама функция в контракте может иметь уязвимость.
Обращаем внимание при аудите
Даже если в функции используются общепринятые безопасные решения сторонних протоколов, тот же Chainlink, Uniswap и т.д., это не значит, что сама функция также безопасна.
В таких случаях, нам потребуется также изучать те сторонние решение, чтобы понять, как они используются и что, может пойти не так.
В данном случае, у контракта всегда на балансе должно быть некоторое количество токенов Link, для успешной генерации новых чисел, иначе транзакция зависает на 24 часа до пополнения баланса. В течение этого времени, админ протокола может "играть" с выдачей результатов функции в свою пользу.
Меня всегда поражало, как такие аудиторы, как Trust, могут думать вне рамок контракта. Хочу научиться также.
#audit #outofbox
Post #739
495
- ❤ 1