У Move мові виявлено вразливість переповнення цілих чисел, що викликає ризик краху Ноди, на який підписатися.

У Move знову виявлено небезпечну уразливість: переповнення цілих чисел може призвести до краху Ноди

Нещодавно, фахівці з безпеки під час глибокого аналізу мови Move виявили новий вразливість переповнення цілого числа, що може призвести до краху ноди. Ця вразливість існує в модулі перевірки безпеки посилань мови Move і стосується аналізу базових блоків та процесу злиття станів.

Numen Cyber ексклюзивно виявив ще одну вразливість у мові move

Мова Move виконує перевірку коду перед виконанням байт-коду, що складається з 4 етапів. Виявлена вразливість виникає на етапі перевірки посилань безпеки (reference_safety). Цей етап аналізує базові блоки в функції та перевіряє законність посилальних операцій.

Numen Cyber ексклюзивно виявив ще одну критичну уразливість мови move

Під час верифікації буде підтримуватись структура AbstractState, що містить локальні змінні (locals) та граф позик (borrow graph). Під час аналізу базових блоків буде виконуватись генерація post state для інструкцій у блоці, а потім їх об'єднання з pre state для оновлення стану.

Numen Cyber ексклюзивно виявив ще одну небезпечну уразливість мови move

Вразливість виникає в функції join_, що перебуває в стані злиття. Ця функція перебирає змінну locals, але locals містить параметри функції та локальні змінні. Коли сума кількості параметрів і кількості локальних змінних перевищує 256, через використання типу u8 для ітерації може статися переповнення цілого числа.

Numen Cyber ексклюзивно виявив ще одну критичну вразливість у мові move

Зловмисник може створити спеціальні циклічні блоки коду, використовуючи цей переповнення для зміни стану. Під час наступного аналізу деякі інструкції можуть звертатися до неіснуючих локальних індексів, що призводить до паніки і викликає крах Ноди.

Numen Cyber ексклюзивно виявило ще одну небезпечну уразливість мови move

Дослідники представили концепт валідації (PoC), налаштувавши 264 локальні змінні, які можуть викликати паніку під час другого етапу аналізу. Це виявляє недостатню кількість перевірок безпеки в Move мові під час виконання.

Numen Cyber ексклюзивно виявила ще одну високу вразливість move мови

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

Numen Cyber ексклюзивно виявив ще одну високоякісну вразливість у мові move

Numen Cyber ексклюзивно виявив ще одну високонебезпечну вразливість у мові move

Numen Cyber ексклюзивно виявив ще одну високу вразливість мови move

Numen Cyber ексклюзивно виявив ще одну високу уразливість мови move

Numen Cyber ексклюзивно виявила ще одну високий ризик уразливість move мови

Numen Cyber ексклюзивно виявив ще одну небезпечну уразливість мови move

Numen Cyber ексклюзивно виявила ще одну високу уразливість мови move

Numen Cyber ексклюзивно виявив ще одну високу вразливість у мові move

Numen Cyber ексклюзивно виявив ще одну критичну уразливість мови move

MOVE2.98%
Переглянути оригінал
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
  • Нагородити
  • 5
  • Репост
  • Поділіться
Прокоментувати
0/400
SmartContractPhobiavip
· 08-02 02:38
move провалився, оригінал теж провалився
Переглянути оригіналвідповісти на0
CoconutWaterBoyvip
· 07-30 03:38
move знову підвів, давно вже варто було поміняти
Переглянути оригіналвідповісти на0
SchrodingerWalletvip
· 07-30 03:36
move знову провалився.
Переглянути оригіналвідповісти на0
0xDreamChaservip
· 07-30 03:34
move знову обвалився? Випуску не вистачає швидкості.
Переглянути оригіналвідповісти на0
GasFeeCryvip
· 07-30 03:25
move знову трапилася проблема
Переглянути оригіналвідповісти на0
  • Закріпити