Tin nóng ⇢

Cùng xem lại sự kiện $15M bị lấy cắp từ Starstream

Starstream là nền tảng cung cấp bộ sản phẩm liên quan đến công cụ tổng hợp và tạo doanh thu (yield aggregator và yield generator) trên rollup L2 của Metis.

Vào lúc 00:43:36 sáng ngày 8 tháng 4 (GMT+7), đội kỹ thuật bảo mật của CertiK đã phát hiện ra rằng nền tảng tổng hợp doanh thu của Starstream đã bị phá hoại có chủ ý do tồn tại những lỗ hổng liên quan đến Hàm thực thi trong hợp đồng của nó, dẫn đến đánh mất khoảng 15 triệu đô la tài sản.

Sau đó, các tin tặc đã gửi số token STARS bị đánh cắp vào hợp đồng lending của Agora DeFi và vay nhiều tài sản khác nhau bao gồm METIS, WETH và m.USDC.

Starstream tập trung vào cung cấp các công cụ tổng hợp và tạo doanh thu (yield aggregator và yield generator) trên rollup L2 của Metis. Protocol được duy trì bởi các nhà phát triển khác nhau, và được quản lý bởi các chủ sở hữu token STARS.

Các mốc thời gian

Vào lúc 01:47 sáng ngày 8 tháng 4 (GMT+7), một người dùng đã có những lo ngại về rủi ro từ Starstream và đăng tải một snapshot có liên quan lên Twitter. Sau đó, vào lúc 02:11 sáng, một người nào đó đã thông báo với cộng đồng Starstream trên Discord rằng nguồn ngân quỹ đã cạn kiệt và đề nghị người dùng gửi tài sản của họ trên Agora càng sớm càng tốt.

Vào lúc 03:36 sáng, một đối tượng khác đã gửi những tin nhắn đến cộng đồng của Starstream trên Discord với nội dung rằng Hàm thực thi (execute function) có nguy cơ bị tấn công.

Quá trình tấn công

Hacker đã lợi dụng Hàm thực thi công khai (public execute function) trong hợp đồng DistributorTreasury và rút token STARS từ hợp đồng StarstreamTreasury.

Phân tích lỗ hổng trong hợp đồng

Nguyên nhân cốt lõi của lỗ hổng này là do hợp đồng DistributorTreasury (đây là chủ sở hữu của hợp đồng Starstream contract) dùng Hàm thực thi công khai mà gắn với Hàm cấp thấp (low-level call). Hacker đã dùng hàm này để tạo nên những thông báo rút tiền và rút token STARS từ hợp đồng StarstreamTreasury.

Trong cuộc tấn công này, kẻ tấn công đã lấy hết toàn bộ token STARS trong StarstreamTreasury thông qua hàm thực thi mà đống vai trò như một kho ngân quỹ phân phối.

Rà soát tài sản

Theo CertiK SkyTrace, hacker này đã chuyển thành công số tiền bị đánh cắp sang Tornado Cash vào lúc 4:00 giờ sáng ngày 8 tháng 4.

Những thông tin chi tiết về các giao dịch

Một trong những giao dịch lợi dụng lỗ hổng: Tại đây

Địa chỉ của kẻ tấn công: Tại đây

Hợp đồng địa chỉ tấn công: Tại đây

Hợp đồng của Distributor Treasury: Tại đây

Hợp đồng của Starstream Treasury: Tại đây

Hợp đồng của token Starstream (STARS): Tại đây

Đánh giá cuối

Sự cố có thể được tìm thấy thông qua các rủi ro liên quan đến kiểm định bảo mật (security audit). Qua quá trình kiểm định, có thể thấy rằng hàm này có thể được gọi bởi bất kỳ ai và hàm này chứa một phép gọi hàm cấp thấp tương ứng gắn liền với nó. Các chuyên gia về bảo mật của CertiK đã có những khuyến nghị như sau:

Trong quá trình phát triển, bạn nên chú ý đến khả năng hiển thị của các chức năng. Nếu có các lệnh gọi hoặc logic đặc biệt trong hàm, bạn cần xác nhận xem hàm có cần kiểm soát quyền tương ứng hay không.

Cách đây một thời gian, một số lượng lớn các dự án đã bị tấn công do Hàm đốt công khai. Nguyên nhân gốc rễ của cuộc tấn công này cũng tương tự như việc thiếu kiểm soát quyền cần thiết.

Đôi nét về Certik: Là công ty đi đầu trong lĩnh vực bảo mật blockchain, CertiK có những cam kết về việc cải thiện mức độ bảo mật và minh bạch trong tiền điện tử và DeFi. Cho đến nay, CertiK đã được 3.200 khách hàng doanh nghiệp công nhận, bảo vệ hơn 311 tỷ đô la tài sản kỹ thuật số khỏi bị mất mát.



Có thể bạn quan tâm

Mục lục