BTC
$96,000
5.73%
ETH
$3,521.91
3.97%
HTX
$0.{5}2273
5.23%
SOL
$198.17
3.05%
BNB
$710
3.05%
lang
简体中文
繁體中文
English
Tiếng Việt
한국어
日本語
ภาษาไทย
Türkçe
Trang chủ
AI AI
Tin nhanh
Bài viết
Sự kiện
BlockBeats Pro
Thêm
Thông tin tài chính
Chuyên đề
Hệ sinh thái chuỗi khối
Mục nhập
Podcast
Data
OPRR
Partnered With:

Slow Mist: Phân tích chi tiết về sự cố tấn công DAO Maker

Đọc bài viết này mất 10 phút
Vườn ươm tiền điện tử DAO Maker bị nghi ngờ bị hack khiến một lượng lớn USDC bị chuyển ra khỏi hợp đồng.
Tiêu đề gốc: " Game of Thrones - Phân tích hack DAO Maker 》
Nguồn gốc: SlowMist Technology


Vào ngày 12 tháng 8 năm 2021, theo tin tức từ SlowMist District, vườn ươm mã hóa DAO Maker đã được bị nghi ngờ Bị hacker tấn công dẫn đến một lượng lớn USDC bị chuyển ra khỏi hợp đồng. Đội ngũ bảo mật SlowMist đã ngay lập tức can thiệp vào quá trình phân tích và chia sẻ kết quả phân tích như sau.    


Đối tượng tấn công


Trong cuộc tấn công này, kẻ tấn công đã triển khai và tạo nguồn mở cho một hợp đồng tấn công (0x1c) để nhanh chóng trở thành nạn nhân hàng loạt từ DAO Maker. Ăn cắp tiền từ hợp đồng (0x41).


Địa chỉ của kẻ tấn công 1:

0xd8428836ed2a36bd67cd5b157b50813b30208f50

Địa chỉ của kẻ tấn công 2:

0xef9427bf15783fb8e6885f9b5f5da1fba66ef931

p>

Hợp đồng tấn công:

0x1c93290202424902a5e708b95f4ba23a3f2f3cee

Hợp đồng nạn nhân của DAO Maker:

0x41B856701BB8c24CEcE2Af10651BfAfEbb57cf49

Nạn nhân của DAO Maker người triển khai hợp đồng: 0x054e71D5f096a0761dba7dBe5cEC5E2Bf898971c

Quản trị viên hợp đồng nạn nhân của DAO Maker:0x0eba461d9829c4e464a68d4857350476cfb6f559


Chi tiết cuộc tấn công


Sự khác biệt giữa cuộc tấn công này và các cuộc tấn công thông thường là hợp đồng nạn nhân DAO Maker (0x41) không phải là nguồn mở mà là hợp đồng tấn công (0x1c).


图片


Từ Chúng ta có thể thấy từ hợp đồng tấn công nguồn mở và các bản ghi trên chuỗi trong hình trên: 


1. Hacker gọi hàm h của hợp đồng tấn công (0x1c). Hàm h sẽ lặp để gọi hàm f. Hàm f lấy số tiền gửi USDC của người dùng thông thường trong hợp đồng nạn nhân (0x41) thông qua 0x4b4f892a của hợp đồng nạn nhân DAO Maker.


2. Sau đó, hàm h gọi hàm drawFromUser(0x50b158e4) của hợp đồng nạn nhân DAO Maker ( 0x41) , chuyển địa chỉ người dùng gửi tiền của người dùng, địa chỉ USDC và số tiền cần rút.


3. Sau đó, hợp đồng nạn nhân của DAO Maker (0x41) chuyển USDC trong hợp đồng sang hợp đồng tấn công Trung bình (0x1c).


Qua phân tích hành vi trên, chúng ta có thể thấy rằng: hợp đồng tấn công (0x1c) gọi Chức năng rút khỏi người dùng của hợp đồng nạn nhân (0x41 ), hợp đồng nạn nhân (0x41) sẽ trực tiếp chuyển số tiền được quản lý bởi hợp đồng sang hợp đồng tấn công (0x1c). Chúng tôi trực tiếp dịch ngược hợp đồng nạn nhân (0x41) và xem hàm drawFromUser để phân tích đơn giản:


图片

p>


Thông qua mã dịch ngược, chúng ta có thể thấy rằng chức năng này có kiểm tra quyền, chỉ hợp đồng DAO Chức năng này có thể được gọi để chuyển tiền của người dùng. Nhưng hợp đồng tấn công (0x1c) rõ ràng không phải là hợp đồng DAO, vì vậy hợp đồng DAO của nó chắc chắn đã được kẻ tấn công thay thế.


Thông qua phân tích trên chuỗi, chúng ta có thể thấy rõ:


1. Người triển khai hợp đồng nạn nhân (0x05) triển khai hợp đồng nạn nhân (0x41)  lúc 08:33:45 UTC ngày 12 tháng 4. 0x0eba461d9829c4e464a68d4857350476cfb6f559 Địa chỉ được đặt thành vai trò quản trị viên:


Băm Tx:

0xa1b4fceb671bb70ce154a69c2f4bd6928c11d98cbcfbbff6e5cdab9961bf0e6d


图片

2. Sau đó, người triển khai hợp đồng nạn nhân (0x05) đã từ bỏ việc quản lý hợp đồng nạn nhân (0x41) bằng cách gọi hàm revokeRole. Quyền:

Tx Hash: 

0x773613398f08ddce2cc9dcb6501adf4f5f159b4de4e9e2774a559bb1c588c1b8

图片


3 . Và quản lý Nhà điều hành đặt hợp đồng DAO là hợp đồng tấn công (0x1c) lúc 01:27:39 UTC  12 tháng 8:


Tx Hash: 

0x2fba930502d27f9c9a2f2b9337a0149534dda7527029645752b2a6507ca6b0d6


图片


Do đó kẻ tấn công có thể sử dụng hợp đồng tấn công này ( 0x1c) Ăn cắp tiền của người dùng trong hợp đồng nạn nhân (0x41). Số tiền bị đánh cắp hiện đã được chuyển đổi thành ETH và được chuyển đến địa chỉ kẻ tấn công 2 (0xef).


Tóm tắt


Cuộc tấn công này có thể xuất phát từ việc rò rỉ khóa riêng của quản trị viên trong hợp đồng nạn nhân DAO Maker. Sau khi đánh cắp khóa riêng, kẻ tấn công đã thay thế hợp đồng DAO của hợp đồng nạn nhân bằng hợp đồng tấn công và kẻ tấn công đã chuyển tiền của người dùng trong hợp đồng thông qua hợp đồng được thay thế. Vì người triển khai hợp đồng từ bỏ quyền quản lý hợp đồng sau khi thiết lập quản trị viên hợp đồng nên nhóm dự án hiện tại có thể không lấy lại được quyền kiểm soát hợp đồng một cách hiệu quả.


Liên kết gốc


Chào mừng bạn tham gia cộng đồng chính thức của BlockBeats:

Nhóm Telegram đăng ký: https://t.me/theblockbeats

Nhóm Telegram thảo luận: https://t.me/BlockBeats_App

Tài khoản Twitter chính thức: https://twitter.com/BlockBeatsAsia

举报 Báo lỗi/Báo cáo
Chọn thư viện
Thêm mới thư viện
Hủy
Hoàn thành
Thêm mới thư viện
Chỉ mình tôi có thể nhìn thấy
Công khai
Lưu
Báo lỗi/Báo cáo
Gửi