вступ
Фальшива атака на поповнення означає, що зловмисник надсилає підроблену інформацію про транзакції на адресу гаманця біржі, використовуючи вразливі місця або системні помилки в процесі поповнення біржі. Цю підроблену інформацію про транзакції приймає біржа за справжні запити на поповнення рахунку валюти на рахунок зловмисника. Використовуючи цей метод, зловмисники можуть отримати неоплачені цифрові активи, що призводить до втрати активів на біржі.
Ця стаття має на меті детально дослідити, як атаки на фальшиві депозити можуть зламати механізм захисту біржі. Ми розберемо принципи фейкових атак поповнення та виявимо вразливості та стратегії, якими користуються зловмисники. У той же час ми проаналізуємо фальшиві атаки поповнення на прикладах, щоб краще зрозуміти методи атаки та вплив. Крім того, ми також обговоримо надзвичайні та профілактичні заходи для бірж щодо боротьби з атаками на фальшиві депозити, щоб надати відповідні пропозиції щодо захисту активів і реагування на подібні атаки.
Аналіз принципу перезарядки
Перш ніж зрозуміти фальшиве поповнення, нам потрібно спочатку зрозуміти принцип поповнення обміну.
Типовий процес такий:
1. Генерація адреси гаманця
Біржа призначає кожному користувачеві унікальну адресу гаманця для отримання депозитів користувача. Зазвичай ці адреси автоматично генеруються системою біржі. Коли користувачі поповнюють рахунок, їм потрібно надіслати цифрові активи на певну адресу гаманця в обліковому записі обміну.
2. Сканування реєстру блокчейнів
Вузли біржі будуть синхронізуватися з іншими вузлами в мережі блокчейну, щоб отримати останній статус блокчейну та інформацію про транзакції. Коли вузол обміну отримує новий блок, він витягує ідентифікатор транзакції поповнення користувача та відповідну суму з вмісту транзакції, що міститься в блоці, або події виконання транзакції, ініційованої блокуванням, і додає його до списку для поповнення.
3. Підтвердити вхід в обліковий запис
Біржі зазвичай вимагають, щоб транзакція отримала певну кількість підтверджень у мережі блокчейн, перш ніж вважатиметься дійсною. Підтвердження означає, що на блок транзакції посилається певна кількість блоків і перевіряється та підтверджується іншими майнерами. Кількість підтверджень, встановлених біржами, може відрізнятися залежно від різних цифрових активів і мереж.
як показано на малюнку:

Режим фальшивої атаки поповнення
Біржі найбільше постраждали від хакерів, тому біржі зазвичай розміщують свої сервери за потужними системами захисту, і навіть мають розміщувати їх в автономному режимі для основних служб, які керують коштами. Однак через вимоги до цілісності даних системи блокчейн зловмисні транзакції не будуть перехоплені периферійною системою безпеки.
Слід зазначити, що атака підробленого поповнення не є вразливістю блокчейну, але зловмисник використовує деякі характеристики блокчейну для створення спеціальних транзакцій. Ці зловмисні транзакції призведуть до того, що біржа сприйме це за справжній запит на поповнення або обробить один і той самий запит на поповнення кілька разів. Після тривалого реального бою команда безпеки SlowMist узагальнила кілька поширених методів фальшивої атаки поповнення:

З 2018 року команда безпеки SlowMist вперше розкрила численні фальшиві атаки поповнення, зокрема:
Аналіз безпеки підроблених переказів USDT [1]
EOS fake recharge (hard_fail status attack) red alert розкриття деталей і план ремонту [2]
Розкрито деталі вразливості токена Ethereum «фальшиве поповнення» та план усунення [3]
Аналіз ризику підробленого поповнення Bitcoin RBF [4]
На додаток до цих фальшивих атак поповнення, які були розкриті, існує також багато класичних методів атак, які ми не розкрили, а також деякі універсальні методи атак. Наприклад:
Підроблене мультипідписне поповнення Bitcoin
Підроблене поповнення часткової оплати Ripple
Filecoin подвійно витрачати фейкове поповнення
TON rebound фейковий депозит
Якщо ви хочете дізнатися більше деталей, будь ласка, зв’яжіться з нами для детального обговорення.
Приклад: TON rebound fake recharge
Майже всі блокчейни мають проблеми з підробленим поповненням, але деяких атак легко уникнути, а для інших потрібне дуже глибоке вивчення характеристик блокчейну.
На прикладі фальшивого депозиту TON ми покажемо вам, як хитрі зловмисники можуть використовувати характеристики TON для атаки на біржі.
TON (The Open Network) — це блокчейн-проект, запущений відомим комунікаційним програмним забезпеченням Telegram, який підтримує розгортання смарт-контрактів на облікових записах користувачів.
Коли біржа підключається до TON для поповнення, вона спочатку генерує адресу поповнення для користувача згідно з раніше описаним методом, потім користувач переносить активи на адресу поповнення і, нарешті, підтверджує депозит.
Як біржа підтверджує, що транзакція належить її користувачеві? Ми використовуємо інтерфейс RPC для перегляду звичайної передачі:

Зазвичай біржа визначає, чи є пункт призначення в in_msg адресою поповнення рахунку користувача. Якщо так, то значення суми буде конвертовано відповідно до точності та зараховано на рахунок користувача. Але чи безпечно це?
Особливістю транзакцій TON є те, що майже всі внутрішні повідомлення, які надсилаються між смарт-контрактами, мають бути відкиданими, тобто для них має бути встановлений прапор відмов. Таким чином, якщо цільовий смарт-контракт не існує або під час обробки цього повідомлення виникне необроблений виняток, повідомлення буде «відскочено» назад із залишком початкового значення (мінус усі збори за передачу повідомлень і газ).
Іншими словами, якщо зловмисник переказує гроші на обліковий запис, який не розгорнув контракт, встановивши позначку відмов, суму поповнення буде повернуто на початковий рахунок після вирахування комісії за обробку. Біржа виявила запис поповнення рахунку користувача, але не очікувала, що поповнені монети дійсно повернуться на рахунок зловмисника.
Давайте подивимося на цю транзакцію. Порівняно зі звичайною транзакцією, ми можемо виявити додатковий out_msg – це операція повернення коштів на початковий рахунок.

Якщо біржа перевіряє лише in_msg, вона помилково врахує зловмисника, спричиняючи втрату активів платформи.
Найкращі методи запобігання фальшивим атакам поповнення рахунку
Нижче наведено кілька основних стратегій запобігання атакам підробленого поповнення:
1. Механізм багаторазового підтвердження: встановіть вимоги до багаторазового підтвердження для поповнення, щоб гарантувати, що транзакції вважаються дійсними лише після достатнього підтвердження в блокчейні. Кількість підтверджень має бути встановлено на основі безпеки різних цифрових активів і швидкості підтвердження блокчейну;
2. Суворе зіставлення транзакцій: під час фільтрації транзакцій користувача з блоку можна автоматично налаштувати кредитування лише для транзакцій, які повністю відповідають звичайному режиму переказу, і, нарешті, необхідно перевірити зміни балансу;
3. Система контролю ризиків: створіть повну систему контролю ризиків для моніторингу та виявлення ненормальної торгової діяльності. Система може ідентифікувати потенційні ризики та аномальну поведінку, аналізуючи такі фактори, як моделі поповнення, частота транзакцій, розмір транзакцій тощо;
4. Перевірка вручну: для більших сум або транзакцій із високим ризиком для додаткової перевірки використовується механізм перевірки вручну. Перевірка вручну може підвищити довіру до транзакцій, виявити ненормальні транзакції та запобігти зловмисним поповненням;
5. Безпека API: Виконайте автентифікацію безпеки та авторизацію на зовнішніх інтерфейсах API, щоб уникнути несанкціонованого доступу та потенційної вразливості. Регулярно перевіряйте безпеку інтерфейсів API і своєчасно вносьте оновлення та виправлення безпеки;
6. Обмеження на зняття: після поповнення користувачі тимчасово не можуть зняти поповнені активи. Це дасть біржі достатньо часу, щоб підтвердити дійсність поповнення та запобігти потенційним атакам підробленого поповнення;
7. Оновлення безпеки: своєчасно оновлюйте програмне забезпечення та системи обміну для усунення можливих вразливостей безпеки. Постійно контролюйте стан безпеки біржі та співпрацюйте з експертами з кібербезпеки для проведення регулярних перевірок безпеки та тестів на проникнення.
Щоб запобігти фальшивим поповненням на певному блокчейні, вам потрібно прочитати офіційну документацію, щоб зрозуміти характеристики транзакції.
Система виявлення підроблених поповнень Badwhale
Команда безпеки SlowMist розробила систему тестування підробленого поповнення Badwhale на основі тривалої наступальної та оборонної практики, спеціально розробленої для платформ управління цифровими активами. Система розроблена, щоб допомогти їм виявити та оцінити їхню здатність запобігати фальшивим атакам поповнення та оптимізувати їхні механізми захисту для забезпечення безпеки активів користувачів і надійності платформ керування цифровими активами.
Badwhale — це унікальна комерційна система для команди безпеки SlowMist, яка розроблялася протягом багатьох років. Вона обслуговує десятки платформ протягом багатьох років і уникає ризику помилкових поповнень, вартість яких оцінюється в мільярди доларів.
Особливість:
1. Симулюйте фальшиві атаки поповнення: Badwhale може імітувати різні типи фальшивих атак поповнення та автоматично надсилати фальшиві запити на поповнення на тестовану платформу керування цифровими активами. Це допомагає оцінити слабкі сторони платформ керування цифровими активами та виявити потенційні вразливості та ризики безпеки;
2. Різноманітні тестові сценарії: система надає різноманітні тестові сценарії та режими атак, які можуть комплексно перевірити захист від підробленого поповнення платформи управління цифровими активами відповідно до фактичної ситуації;
3. Висока масштабованість: Badwhale розроблена як високомасштабована система тестування, яка підтримує тестування для різних платформ управління цифровими активами та блокчейн-платформ, і може гнучко адаптуватися до потреб різних системних архітектур і технічних середовищ.
Наразі Badwhale підтримує фальшиві тести поповнення сотень публічних мереж і десятків тисяч токенів, зокрема:
Сімейства біткойнів (BTC/LTC/DOGE/QTUM...)
BitcoinCash
Сімейства Ethereum
(ETH/BSC/HECO/RON/CFX-evm/FIL-evm/AVAX-evm/FTM-evm/RSK/GNO/MOVR-evm/GLMR-evm/KLAY/FSN/CELO/CANTO/EGLD/AURORA-evm /TLC/WEMIX/CORE/VS/WAN/KCCL/OKX...)
Токени ERC20 (USDT...)
Ethereum L2 (ARB/OP/METIS...)
Багатокутник
Багатокутні жетони
Космічні родини (ATOM/LUNA/KAVA/IRIS/OSMO...)
Сімейства EOS і токени EOS (EOS/WAX/XPR/FIO/TLOS...)
пульсація
Потік
Квартири
Солана
Токени Solana SPL
Конфлюкс
Сімейства Polkadot (DOT/ASTR/PARA/MOVR/GLMR...)
Трон
Filecoin
тонна
Міна
Давай
Порядкові номери (ORDI...)
…
Завдяки потужним функціям Badwhale платформа керування цифровими активами може проводити комплексні тести захисту від підроблених поповнень, щоб зрозуміти її ефективність проти атак підроблених поповнень, оптимізувати свій механізм захисту та покращити безпеку активів користувачів. Представлення Badwhale допоможе платформі управління цифровими активами посилити захист, покращити її здатність протистояти атакам фальшивих поповнень, а також забезпечити надійність транзакцій цифрових активів і довіру користувачів.
Висновок
Завдяки поглибленому вивченню революційних методів фальшивих атак поповнення ми можемо краще зрозуміти важливість платформ керування цифровими активами для захисту активів користувачів і підтримки безпеки. Платформи управління цифровими активами зможуть ефективно протистояти фальшивим атакам поповнення та іншим загрозам безпеці, а також забезпечувати довіру та надійність транзакцій цифрових активів, лише посилюючи заходи захисту безпеки, постійно відстежуючи вразливості та вживаючи відповідних контрзаходів.
Довідкові посилання:
[1] https://mp.weixin.qq.com/s/CtAKLNe0MOKDyUFaod4_hw
[2] https://mp.weixin.qq.com/s/fKINfZLW65LYaD4qO-21nA
[3] https://mp.weixin.qq.com/s/3cMbE6p_4qCdVLa4FNA5-A
[4] https://mp.weixin.qq.com/s/OYi2JDbAoLEdg8VDouqbIg
