TGViewer
Noobing Security Research Noobing Security Research @web3securityresearch · 278 subscribers
Post #37 236
Noobing Security Research 3. Использовать "dead shares"
А что такое deadshares?

Для того, чтобы атакующий не мог размыть долю вкладчика, используются так называемые dead shares, т.е. мертвые доли

Например, при инициализации пула мы можем сминтить 1000 shares и отправить их на нулевой адрес

function initialize() public {
uint256 deadAmount = 1000; // Или 1e6, в зависимости от decimals
_mint(address(0), deadAmount); // Минтим и "сжигаем" на нулевом адресе
}


Размыть 1000 долей намного сложнее, чем манипулировать отправной точкой 0, то есть мы не закрываем уязвимость, но делаем эксплуатацию сильно дороже, потому что в

sharesAmount = totalShares * assetAmount / asset.balanceOf(address(this))

totalShares теперь равен 1000, а не 1, как было показано в примере атаки

UPD. Мне попалась классная атака с обходом deadshares, так что этот пост нужен для контекста разбора

https://t.me/web3securityresearch
  • ❤ 5
More from @web3securityresearch
  1. Sep 22, 2026Прочитал лекцию про атаки на память, оставлю слайды и здесь
  2. Sep 10, 2026Post #100
  3. Aug 27, 2026я бы рад писать короче, но тема очень широкая. Сегодня статья про HMAC-подписи записей аге…
  4. Aug 27, 2026Post #98
  5. Aug 18, 2026Post #97
  6. Aug 12, 2026Исследователи нашли первый подробно задокументированный, почти автономный, взлом государст…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →