
Chengdu Lian An: Phân tích sự cố tấn công lặp lại trên giao thức cho vay DeFi Akropolis
Tuyển chọn TechFlowTuyển chọn TechFlow

Chengdu Lian An: Phân tích sự cố tấn công lặp lại trên giao thức cho vay DeFi Akropolis
Akropolis, với tư cách là nhà cung cấp dịch vụ cho vay và lưu trữ DeFi, sử dụng giao thức Curve cho phần lưu trữ của mình, phần này đã bị khai thác trong cuộc tấn công diễn ra vào sáng cùng ngày.
Gần đây, giao thức cho vay DeFi Akropolis đã bị tin tặc tấn công. Ana Andrianova, người sáng lập và CEO của Akropolis, cho biết kẻ tấn công đã sử dụng khoản vay chớp nhoáng (flash loan) từ nền tảng phái sinh dYdX để thực hiện cuộc tấn công re-entrancy, gây thiệt hại 2 triệu USD.
Ngay sau khi nhận được cảnh báo từ nền tảng cảm biến an ninh blockchain do đội ngũ ChainSecurity Thành Đô tự phát triển (Beosin-Eagle Eye), nhóm đã tiến hành điều tra sự cố ngay lập tức và xác định được:
1. Akropolis thực sự đã bị tấn công
2. Địa chỉ hợp đồng tấn công là
0xe2307837524db8961c4541f943598654240bd62f
3. Kỹ thuật tấn công là tấn công re-entrancy
4. Kẻ tấn công thu lợi khoảng 2 triệu USD
Phân tích kỹ thuật tấn công
Thông qua phân tích giao dịch trên chuỗi, phát hiện ra rằng kẻ tấn công đã thực hiện hai lần mint token như hình dưới đây:


Tuy nhiên, theo dữ liệu gọi giao dịch từ oko.palkeo.com, kẻ tấn công chỉ gọi hàm deposit một lần duy nhất, như minh họa trong hình sau:

Bằng cách theo dõi các lời gọi hàm, đội ngũ ChainSecurity Thành Đô phát hiện ra rằng khi gọi hàm deposit của hợp đồng, kẻ tấn công đã đặt tham số token là địa chỉ hợp đồng tấn công do chính chúng tạo ra. Khi hợp đồng thực hiện transferFrom, nó sẽ gọi đến địa chỉ hợp đồng do người dùng chỉ định, như hình minh họa sau:

Phân tích mã nguồn cho thấy, khi gọi hàm deposit, người dùng có thể chỉ định tham số token, như hình minh họa sau:

Trong quá trình gọi hàm deposit, hàm depositToProtocol bên trong có phương thức gọi tới hàm safeTransferFrom tại địa chỉ tkn. Điều này khiến kẻ tấn công có thể khai thác bằng cách xây dựng hàm "safeTransferFrom" để thực hiện tấn công re-entrancy.

Tóm tắt sự việc
Là nhà cung cấp dịch vụ cho vay và lưu trữ tài sản DeFi, phần lưu trữ của Akropolis sử dụng giao thức Curve – từng bị khai thác trước đó trong một cuộc tấn công diễn ra vào sáng cùng ngày. Kẻ tấn công đã rút 50.000 USD DAI từ các pool yCurve và sUSD của dự án này, và trước khi làm cạn kiệt các pool này, đã đánh cắp tổng cộng 2 triệu USD giá trị DAI.
Trong vụ tấn công lần này, tin tặc đã sử dụng kỹ thuật tấn công re-entrancy kết hợp với flash loan từ dYdX để chiếm đoạt bể thanh khoản. Bể tài sản trong giao thức luôn là điểm trọng yếu cần bảo vệ. Đối với nhà phát triển dự án, các biện pháp phòng ngừa và bảo vệ an toàn cho bể thanh khoản phải được ưu tiên hàng đầu. Đặc biệt, để đối phó với các thủ đoạn tấn công ngày càng tinh vi của hacker, việc kiểm tra toàn diện định kỳ và nâng cấp mã nguồn là điều bắt buộc.
Cuối cùng, ChainSecurity Thành Đô kêu gọi mạnh mẽ: Các bên phát triển dự án tuyệt đối không được lơ là kiểm toán an ninh và kiểm tra định kỳ; các nhà đầu tư cần luôn cảnh giác về an ninh, chú ý đến rủi ro đầu tư.
Chào mừng tham gia cộng đồng chính thức TechFlow
Nhóm Telegram:https://t.me/TechFlowDaily
Tài khoản Twitter chính thức:https://x.com/TechFlowPost
Tài khoản Twitter tiếng Anh:https://x.com/BlockFlow_News














