В екосистемі Solana знову з'явились зловмисні Боти: у конфігураційних файлах захований Закритий ключ для крадіжки
На початку липня 2025 року один користувач звернувся до команди безпеки з проханням про допомогу, стверджуючи, що його криптоактиви були вкрадені. Під час розслідування було виявлено, що інцидент стався через те, що користувач скористався відкритим проектом, розміщеним на GitHub, що призвело до прихованих дій з крадіжки монет. Нещодавно ще один користувач повідомив про крадіжку активів через використання подібного відкритого проекту. Команда безпеки розпочала глибокий аналіз цієї ситуації.
Статичний аналіз
Аналіз виявив, що підозрілий код розташований у файлі конфігурації /src/common/config.rs, переважно зосереджений у методі create_coingecko_proxy(). Цей метод спочатку викликає import_wallet() для отримання Закритий ключ, а потім перевіряє довжину Закритий ключ:
Якщо менше 85, виведіть повідомлення про помилку та потрапте в безкінечний цикл
Якщо більше 85, перетворіть закритий ключ на об'єкт Keypair і упакуйте
Потім зловмисний код декодує жорстко закодовану URL-адресу, отримуючи реальну адресу:
Код створює HTTP-клієнта, перетворює закритий ключ у рядок Base58, формує JSON-тіло запиту та за допомогою POST-запиту надсилає закритий ключ за цією URL-адресою. Незалежно від того, який результат поверне сервер, шкідливий код продовжуватиме виконуватись, щоб уникнути виявлення.
метод create_coingecko_proxy() також включає отримання ціни та інші нормальні функції для приховування злочинної діяльності. Цей метод викликається під час запуску додатка, знаходиться на етапі ініціалізації конфігураційного файлу main.rs.
Аналіз показує, що IP-адреса сервера зловмисника знаходиться в США. Проект нещодавно (2025 року 17 липня ) було оновлено, основні зміни стосуються шкідливого кодування URL у config.rs.
Динамічний аналіз
Для наочного спостереження за процесом крадіжки дослідники написали сценарій для генерації тестових пар ключів Solana та налаштували HTTP-сервер для прийому POST-запитів. Адресу тестового сервера закодовано, замінивши оригінальну шкідливу адресу, та тестовий закритий ключ замінено у файлі .env на PRIVATE_KEY.
Після запуску шкідливого коду тестовий сервер успішно отримав JSON-дані, що містять інформацію про Закритий ключ.
Підсумок
Зловмисники маскуються під законні проєкти з відкритим вихідним кодом, щоб спонукати користувачів виконувати шкідливий код. Код зчитує чутливу інформацію з локального середовища і передає її на сервер зловмисника. Такі атаки часто поєднуються з методами соціальної інженерії.
Рекомендується, щоб розробники та користувачі були обережними з проектами GitHub, джерело яких невідоме, особливо коли це стосується гаманців або операцій із закритими ключами. Якщо потрібно виконати налагодження, це слід робити в ізольованому середовищі, уникаючи виконання програм і команд з невідомих джерел.
Ця сторінка може містити контент третіх осіб, який надається виключно в інформаційних цілях (не в якості запевнень/гарантій) і не повинен розглядатися як схвалення його поглядів компанією Gate, а також як фінансова або професійна консультація. Див. Застереження для отримання детальної інформації.
10 лайків
Нагородити
10
4
Репост
Поділіться
Прокоментувати
0/400
DaoDeveloper
· 07-28 10:34
буду перевіряти кожен відкритий коміт, як яструб, після цього... вже був у такій ситуації, втратив 3 sol через подібну експлуатацію минулого місяця
Екосистема Solana знову стикається з прихованою загрозою: у проекті GitHub заховано код для крадіжки Закритих ключів
В екосистемі Solana знову з'явились зловмисні Боти: у конфігураційних файлах захований Закритий ключ для крадіжки
На початку липня 2025 року один користувач звернувся до команди безпеки з проханням про допомогу, стверджуючи, що його криптоактиви були вкрадені. Під час розслідування було виявлено, що інцидент стався через те, що користувач скористався відкритим проектом, розміщеним на GitHub, що призвело до прихованих дій з крадіжки монет. Нещодавно ще один користувач повідомив про крадіжку активів через використання подібного відкритого проекту. Команда безпеки розпочала глибокий аналіз цієї ситуації.
Статичний аналіз
Аналіз виявив, що підозрілий код розташований у файлі конфігурації /src/common/config.rs, переважно зосереджений у методі create_coingecko_proxy(). Цей метод спочатку викликає import_wallet() для отримання Закритий ключ, а потім перевіряє довжину Закритий ключ:
Потім зловмисний код декодує жорстко закодовану URL-адресу, отримуючи реальну адресу:
Код створює HTTP-клієнта, перетворює закритий ключ у рядок Base58, формує JSON-тіло запиту та за допомогою POST-запиту надсилає закритий ключ за цією URL-адресою. Незалежно від того, який результат поверне сервер, шкідливий код продовжуватиме виконуватись, щоб уникнути виявлення.
метод create_coingecko_proxy() також включає отримання ціни та інші нормальні функції для приховування злочинної діяльності. Цей метод викликається під час запуску додатка, знаходиться на етапі ініціалізації конфігураційного файлу main.rs.
Аналіз показує, що IP-адреса сервера зловмисника знаходиться в США. Проект нещодавно (2025 року 17 липня ) було оновлено, основні зміни стосуються шкідливого кодування URL у config.rs.
Динамічний аналіз
Для наочного спостереження за процесом крадіжки дослідники написали сценарій для генерації тестових пар ключів Solana та налаштували HTTP-сервер для прийому POST-запитів. Адресу тестового сервера закодовано, замінивши оригінальну шкідливу адресу, та тестовий закритий ключ замінено у файлі .env на PRIVATE_KEY.
Після запуску шкідливого коду тестовий сервер успішно отримав JSON-дані, що містять інформацію про Закритий ключ.
Підсумок
Зловмисники маскуються під законні проєкти з відкритим вихідним кодом, щоб спонукати користувачів виконувати шкідливий код. Код зчитує чутливу інформацію з локального середовища і передає її на сервер зловмисника. Такі атаки часто поєднуються з методами соціальної інженерії.
Рекомендується, щоб розробники та користувачі були обережними з проектами GitHub, джерело яких невідоме, особливо коли це стосується гаманців або операцій із закритими ключами. Якщо потрібно виконати налагодження, це слід робити в ізольованому середовищі, уникаючи виконання програм і команд з невідомих джерел.