Це стара проблема з переповненням цілих, оце ж яка безтурботна логіка написана для цього перетворення

Переглянути оригінал
CoinNetwork
Повідомлення з Crypto界网: за даними моніторингу SlowMist, децентралізований протокол дотиску Drips Network було атаковано, збитки становлять приблизно 24,9 тис. DAI. У ході аналізу SlowMist встановлено, що першопричина атаки полягає в недоліку перетворення цілочисельних типів у функції give(address,uint128) у контракті daidripshub: ця функція без перевірки того, чи вхідний параметр перевищує максимальне значення int128, перетворює суму типу uint128 на тип int128. Атакувальник, передавши певне значення, що виходить за межі діапазону int128, змусив суму після перетворення стати від’ємною, що призвело до реверсу напрямку переказу. Контракт резервів здійснив аномальне вилучення коштів на рахунок атакувальника, і в підсумку резервні кошти було повністю вичерпано.
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
  • Нагородити
  • Прокоментувати
  • Репост
  • Поділіться
Прокоментувати
Додати коментар
Додати коментар
Немає коментарів
  • Закріплено