Нещодавно, кросчейн-протокол взаємодії Poly Network зазнав атаки хакера, що викликало широке обговорення. За аналізом команди безпеки, ця атака відбулася не через витік приватного ключа keeper, а тому що зловмисник шляхом ретельно продуманих даних змінив keeper контракту EthCrossChainData на вказану адресу.
Атака ядра
Ключ до атаки полягає в функції verifyHeaderAndExecuteTx контракту EthCrossChainManager. Ця функція може виконати певну міжланцюгову транзакцію через функцію _executeCrossChainTx. Оскільки право власності на контракт EthCrossChainData належить контракту EthCrossChainManager, останній може викликати функцію putCurEpochConPubKeyBytes першого контракту, щоб змінити його keeper.
Процес атаки
Зловмисник використовує функцію verifyHeaderAndExecuteTx, передаючи ретельно розроблені дані.
Виконати виклик функції putCurEpochConPubKeyBytes контракту EthCrossChainData через функцію _executeCrossChainTx.
Успішно змінено роль keeper на адресу, вказану атакувальником.
Після завершення заміни keeper, зловмисник може вільно створювати транзакції, щоб витягти будь-яку кількість коштів з контракту.
Вплив атаки
Після завершення атаки, через те, що keeper був змінений, нормальні транзакції інших користувачів були відхилені.
Схожі моделі атак також реалізуються в мережі Ethereum.
!
Події та їх наслідки
У дизайні контракту необхідно більш суворе управління правами доступу.
Виконання ключових функцій повинно мати багатоетапну перевірку.
Регулярний аудит безпеки та перевірка на вразливості є надзвичайно важливими.
Безпека крос-чейн операцій потребує більшої уваги та вдосконалення.
Ця подія знову підкреслила важливість безпеки блокчейну, особливо в складних крос-ланцюгових сценаріях. Команда розробників повинна постійно вдосконалювати заходи безпеки, щоб протистояти дедалі складнішим методам атак. Водночас користувачі також повинні підвищити обізнаність про безпеку і обережно брати участь у різних проектах блокчейну.
Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
14 лайків
Нагородити
14
6
Поділіться
Прокоментувати
0/400
0xSleepDeprived
· 07-31 04:09
Знову keeper не заблокував
Переглянути оригіналвідповісти на0
TestnetScholar
· 07-30 22:30
Яка група проекту не провела аудит?
Переглянути оригіналвідповісти на0
ForkTongue
· 07-28 22:40
Ще одна чорна компанія. У ці часи бути обдуреним — це, мабуть, нормальна практика.
Переглянути оригіналвідповісти на0
SchrodingerAirdrop
· 07-28 15:56
Знову вина винна смарт-контрактів.
Переглянути оригіналвідповісти на0
SybilSlayer
· 07-28 15:54
Стара пастка, який день не буде вкрадений
Переглянути оригіналвідповісти на0
YieldWhisperer
· 07-28 15:41
інший день, інша експлуатація... математика контракту зберігача була невірною з першого дня
Аналіз атаки на Poly Network: зміна keeper призвела до втрати коштів
Аналіз інциденту атаки Хакера на Poly Network
Нещодавно, кросчейн-протокол взаємодії Poly Network зазнав атаки хакера, що викликало широке обговорення. За аналізом команди безпеки, ця атака відбулася не через витік приватного ключа keeper, а тому що зловмисник шляхом ретельно продуманих даних змінив keeper контракту EthCrossChainData на вказану адресу.
Атака ядра
Ключ до атаки полягає в функції verifyHeaderAndExecuteTx контракту EthCrossChainManager. Ця функція може виконати певну міжланцюгову транзакцію через функцію _executeCrossChainTx. Оскільки право власності на контракт EthCrossChainData належить контракту EthCrossChainManager, останній може викликати функцію putCurEpochConPubKeyBytes першого контракту, щоб змінити його keeper.
Процес атаки
Вплив атаки
!
Події та їх наслідки
Ця подія знову підкреслила важливість безпеки блокчейну, особливо в складних крос-ланцюгових сценаріях. Команда розробників повинна постійно вдосконалювати заходи безпеки, щоб протистояти дедалі складнішим методам атак. Водночас користувачі також повинні підвищити обізнаність про безпеку і обережно брати участь у різних проектах блокчейну.