Logo
Поделиться этой статьей

Криптo приостанавливают работу из-за ошибок в контрактах

Пара недавно опубликованных ошибок позволяет злоумышленнику создать чрезмерное количество токенов ERC-20

Было обнаружено, что более десятка смарт-контрактов ERC-20 на базе Ethereum содержат ошибки, которые позволяют злоумышленникам создавать столько токенов, сколько им нужно.

Хотя ошибки, впервые обнаруженные 22 апреля <a href="https://peckshield.com/2018/04/22/batchOverflow/">https://peckshield.com/2018/04/22/batchOverflow/</a> и 24 апреля <a href="https://peckshield.com/2018/04/25/proxyOverflow/">https://peckshield.com/2018/04/25/proxyOverflow/</a> соответственно в паре сообщений, опубликованных фирмой по безопасности блокчейнов PeckShield, T связаны с самим стандартом ERC-20, эти проблемы побудили ряд бирж приостановить токены ERC-20 на время расследования. В число этих бирж вошли OKEx,ПолониксЧейнджелли,Куойн и HitBTC.

Продолжение Читайте Ниже
Не пропустите другую историю.Подпишитесь на рассылку Crypto Long & Short сегодня. Просмотреть все рассылки

Huobi.Pro

Отдельно 25 апреля было объявлено, что приостановила все монеты, но с тех пор ограничила это токенами на основе ERC-20. На момент публикации Poloniex перешла к восстановлению услуг для токенов ERC-20.

В ONE из примеров злоумышленник перевел колоссальную сумму в 57,9 * 10^57 токенов BeautyChain — как показывают данные транзакции. на Etherscan – 22 апреля, событие, которое побудило начать первоначальное расследование этого вопроса.

«Наше исследование показывает, что такая передача происходит из-за атаки «in-the-wild», которая использует ранее неизвестную уязвимость в контракте. Для уточнения мы называем эту конкретную уязвимость batchOverflow», — поясняется в посте PeckShield от 22-го числа. «Мы отмечаем, что batchOverflow — это по сути классическая проблема целочисленного переполнения».

Бесчисленное количество монет

В сообщении batchOverflow описывается, как функция batchTransfer в контракте имеет максимальное количество токенов, которые могут быть отправлены в транзакции, добавляя, что стоимость передаваемых токенов должна быть меньше общего количества сгенерированных токенов. Однако параметр "_value" — ONE из двух, определяющих общее количество токенов — может быть изменен, что затем изменит другую переменную, в результате чего злоумышленник сможет создать столько токенов, сколько захочет.

Кроме того, злоумышленник может обойти барьеры в контракте, которые обычно гарантируют передачу разумного количества токенов.

количество«Если обнулить, злоумышленник сможет пройти проверки на работоспособность в строках 258–259 и сделать вычитание в строке 261 неактуальным», — поясняется в сообщении, где отмечается:

«Наконец, вот и самое интересное: как показано в строках 262–265, баланс двух получателей будет добавлен к чрезвычайно большому значению _, не тратя ни цента в кармане атакующего!»

Хотя в первоначальных отчетах указывалось, что все токены ERC-20 могут быть затронуты, функция «batchTransfer» не является частью стандарта токенов.

В посте Medium не были перечислены уязвимые проекты, хотя было отмечено, что BeautyChain был первым проектом, который они обнаружили. В знак серьезности этой ошибки OKExсказал24 апреля компания объявила об отмене торгов токеном BeautyChain.

Примерно в то же время биржа объявила, что в связи с обнаруженными ошибками она приостанавливает ввод и вывод средств в рамках проекта под названиемСмартМешторговля из-за «ненормальной торговой деятельности». PeckShield отметил, что это, возможно, было связано сОшибка proxyOverflow, которая, как и batchOverflow, является классической проблемой целочисленного переполнения. Некоторые переменные можно манипулировать для спонтанной генерации большого количества токенов.

ONE из пользователей Twitter отметил, что злоумышленник создал 5 октадециллионов долларов в токенах SmartMesh.

Как отмечалось в ONE из постов, существует опасность того, что кто-то может использовать уязвимую Криптовалюта для манипулирования ценами в свою пользу, торгуя с Bitcoin, эфиром или другой торговой парой.

Представители проектов BeautyChain и SmartMesh не сразу ответили на просьбы прокомментировать ситуацию. Однако заявление на сайте BeautyChainпризнает ошибкуи заявляет, что торговля возобновится в неопределенный момент в будущем.

Аналогичным образом SmartMesh объявила, что предпримет шаги для предотвращения манипулирования ценами, заявив:

«Фонд SmartMesh изымет количество SMT, эквивалентное количеству поддельных монет, и уничтожит его, чтобы компенсировать понесенные убытки, а общий запас SMT KEEP на уровне 3 141 592 653».

Фабиан Фогельштеллер, разработчик, который первым предложил стандарт ERC-20, заявил CoinDesk, что ошибки «лишь показывают, что нам нужны лучшие практики и инструменты для обнаружения этих ошибок».

Примечание:В эту статью были добавлены комментарии разработчиков и разъяснения роли PeckShield в обнаружении ошибок.

Изображение шариковчерез Shutterstock

Nikhilesh De

Никхилеш Де — управляющий редактор CoinDesk по глобальной Политика и регулированию, освещающий деятельность регулирующих органов, законодателей и учреждений. Когда он не пишет о цифровых активах и Политика, его можно увидеть любующимся Amtrak или строящим поезда LEGO. Он владеет < $50 в BTC и < $20 в ETH. В 2020 году он был назван «Журналистом года» Ассоциации журналистов и исследователей Криптовалюта .

Nikhilesh De