- PVSM.RU - https://www.pvsm.ru -
Захотелось мне сделать хитрый код, который бы не давал отладчику remix себя отлаживать.
Идея проста.
Отладчик загружает код, парсит его, получает последовательность команд.
А что если в аргумент команды PUSHnn запихнуть тоже код и на него потом прыгнуть?
Код такой:
0x600556735b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b
00 PUSH1 05
01 JUMP
02 PUSH20 5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b5b
«5b» разворачивается в JUMPDEST
Запустил я транзакцию на создание контракта и получил «Bad jump destination».
Получается, что не только отладчик, но и все клиенты сети парсят код только один единственный раз при загрузке.
Автор: Tsvetik
Источник [1]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/kriptovalyuty/294388
Ссылки в тексте:
[1] Источник: https://habr.com/post/424883/?utm_source=habrahabr&utm_medium=rss&utm_campaign=424883
Нажмите здесь для печати.