• XSS.stack #1 – первый литературный журнал от юзеров форума

Статья Дорожная карта для аудита Web3/смарт-контрактов 2022 / 2023 особо ничего не поменялось

Всех приветсвую, камрады. вавилонец тебе отдельное спасибо за интересный матерьял, благодаря твоим статьям начал вникать в тему аудита смарт-контрактов. С mythril я уже разобрался - это сканер для поиска логических багов. Но меня больше интересуют фаззеры для поисков инжектов и стресс тестов такие как Echidna и Manticore. Echidna сейчас сложнейшая штука для меня , хотелось бы понять как надо тестить каждую функцию.Частично mythril покрывает ее функционал, но тут больше базовые тесты.
Буду благодарен если кто нибудь поделится опытом в работе с Echidna и ответит на пару моих вопросов.
1. Что такое fuzzer Echidna, и в чем принцип его работы, объясните простыми словами
2. На что способен Echidna
3. Как пользоваться Echidna, для поиска уязвимостей контрактов.
4. Как обнаружить поле ввода или место контракта уязвимое к injection
5. Какие именно тэги нужно указывать в функциях для поиска чего либо.
6. Как правильно проводить базовые тесты контрактов с помошью Echidna, нужен пример.




Wahsidin tjan - Ethereum and Solidity, The Complete Guide for Developer
--
Если найдешь, пиши. Сделаю авто перевод на ru.
 
Всех приветсвую, камрады. вавилонец тебе отдельное спасибо за интересный матерьял, благодаря твоим статьям начал вникать в тему аудита смарт-контрактов. С mythril я уже разобрался - это сканер для поиска логических багов. Но меня больше интересуют фаззеры для поисков инжектов и стресс тестов такие как Echidna и Manticore. Echidna сейчас сложнейшая штука для меня , хотелось бы понять как надо тестить каждую функцию.Частично mythril покрывает ее функционал, но тут больше базовые тесты.
Буду благодарен если кто нибудь поделится опытом в работе с Echidna и ответит на пару моих вопросов.
1. Что такое fuzzer Echidna, и в чем принцип его работы, объясните простыми словами
2. На что способен Echidna
3. Как пользоваться Echidna, для поиска уязвимостей контрактов.
4. Как обнаружить поле ввода или место контракта уязвимое к injection
5. Какие именно тэги нужно указывать в функциях для поиска чего либо.
6. Как правильно проводить базовые тесты контрактов с помошью Echidna, нужен пример.
очень просто отвечу на твой вопрос по ехидне - это такая австралийская живность, с удивительной ухмылкой) на хаскел написанная софтина которая подставляет все мыслемые и не мыслемые параметры в функции, коими снабжен солидити и проверяет что их этого выйдет. Грубо говоря тыкает палкой в лужу и смотрит какие круги по воде идут.
Способна ехидна на тест солидити кода, и чем больше параметров вы ей скормите тем больше наблюет вариантов протестит. принцип прост, к примеру, функция должна принимать int / uint вот он тебе и накидает столько возможных значений, хоть кашу вари / без топора / ИМХО если ты не пишешь код, то не заморачивайся за поиск ошибок. Все что может как-то облегчить твое существование спрятано в функция помеченных payable и onlyowner с вариациями. Ошибки эти в продакшене не встретить почти, ну если кодер не полное УГ, а если и довелось то в основном они заложены туда специально для извлечения прибыли в дальнейшем самостоятельно. Такие вот они говнокодеры. Основные модели получения / черной / прибыли базируются на скаме или драйнерах. И то хороший проект надо еще поискать. Научились инвесторы читать функции. Тему с поиском ошибок солилиди можно считать малопригодной для наживы.
 
очень просто отвечу на твой вопрос по ехидне - это такая австралийская живность, с удивительной ухмылкой) на хаскел написанная софтина которая подставляет все мыслемые и не мыслемые параметры в функции, коими снабжен солидити и проверяет что их этого выйдет. Грубо говоря тыкает палкой в лужу и смотрит какие круги по воде идут.
Способна ехидна на тест солидити кода, и чем больше параметров вы ей скормите тем больше наблюет вариантов протестит. принцип прост, к примеру, функция должна принимать int / uint вот он тебе и накидает столько возможных значений, хоть кашу вари / без топора / ИМХО если ты не пишешь код, то не заморачивайся за поиск ошибок. Все что может как-то облегчить твое существование спрятано в функция помеченных payable и onlyowner с вариациями. Ошибки эти в продакшене не встретить почти, ну если кодер не полное УГ, а если и довелось то в основном они заложены туда специально для извлечения прибыли в дальнейшем самостоятельно. Такие вот они говнокодеры. Основные модели получения / черной / прибыли базируются на скаме или драйнерах. И то хороший проект надо еще поискать. Научились инвесторы читать функции. Тему с поиском ошибок солилиди можно считать малопригодной для наживы.
Тему с поиском ошибок солилиди можно считать малопригодной для наживы,то есть аудит не прибылный?
 
Тему с поиском ошибок солилиди можно считать малопригодной для наживы,то есть аудит не прибылный?
прибыльный, от 2к ценник в среднем, быстрых и больших $ нет. Я завязал с этим
 
2к за 1 аудит?
есть кто и за 200$ делает, сканера ответ тебе вышлет разбавленный водой о том что все хорошо или плохо
 
Парни а кто автора статить последние дни слышал?)
никто, его тут небыло
 
Лучший, спасибо за инфу
щя буду продолжать учиться сам и делиться контентом, была пауза и потеря мотивации, но пошло оно всё нах.!., создал группу в токсе, ссылки через лс, т.к. токс не дает ссылок, можно только приглашать друзей. Тематика одна - обучение взлому аудиту контрактов. По дородной карте дошел до echidn'ы, сейчас изучаю ее. Пытался промптами нейросети нагрузить - полную еренду выдают, забил на это и сейчас начинаю писать ручками, инварианты учиться собирать, а там по курсе amm фазинг. Супер мудростей не ждите, я как вы разбираюсь и ищу "попутчиков". Welcome MTF!
 
создал группу в токсе,
интересно даже...поди толпа народу, да все креативщики?)
Пытался промптами нейросети нагрузить - полную еренду выдают,
аналогично

Можно наивный вопрос: а не проще сосредоточится на одном объекте, и искать баги в нем, нежели фаззить все подряд?)
 
Можно наивный вопрос: а не проще сосредоточится на одном объекте, и искать баги в нем, нежели фаззить все подряд?)
фаззинг примерно то и есть, ты сосредотачиваешься на одном объекте, к примеру на Uniswap v4 и фаззишь его до посинение, предварительно "смазав слитером",
и чем больше ты написал инвариантов, тем больше ехидна выдала запросов к коду, тем больше состояний она может просчитать. Фаззингом можно просчитать запросы от разных пользователе с "сохранением состояния блокчейна" выявляя тем самым атаки повторного входа явно не видимые
 
Йоу, если автор еще живой, подскажи. Приходилось ли тебе проводить аудиты и какие сервисы можешь посоветовать? Надо проверить пачку контарктов.
отписал пм
 


Напишите ответ...
  • Вставить:
Прикрепить файлы
Верх