Năm 2025 là một năm của các vụ tấn công vào Hợp đồng thông minh. Các giao thức đã vượt qua nhiều cuộc kiểm toán hợp đồng thông minh, các giao thức đã được thử nghiệm trong nhiều năm, các giao thức được xây dựng bởi các nhóm có chuyên môn bảo mật sâu rộng. Tất cả đều trở thành nạn nhân của các cuộc tấn công đã tiết lộ điều gì đó khó chịu: chúng ta đang trở nên tốt hơn trong việc tìm ra các lỗi truyền thống, nhưng chúng ta vẫn còn bỏ sót những lỗ hổng cơ bản trong cách các giao thức nghĩ về kinh tế, toán học và thiết kế hệ thống.
Bài phân tích này xem xét các sự cố thú vị nhất về mặt kỹ thuật trong năm, được sắp xếp theo những gì chúng dạy chúng ta về bảo mật Hợp đồng thông minh. Chúng ta sẽ khám phá cách vi phạm bất biến kinh tế cho phép kẻ tấn công tạo ra token vô hạn, cách lỗi độ chính xác trong toán học AMM biến những sai sót làm tròn nhỏ thành các vụ khai thác hàng triệu đô la, và cách lỗi ranh giới hệ thống làm lộ các lỗ hổng mà không một cuộc kiểm toán hợp đồng thông minh nào có thể phát hiện.
Những vụ hack này tiết lộ các vấn đề cơ bản trong thiết kế giao thức, những lỗi vượt xa những sai lầm đơn giản và chạm đến các giả định cốt lõi về cách các hệ thống DeFi(Decentralized Finance) nên hoạt động.
Tháng 12 năm 2025
Yearn Finance phải chịu hai vụ khai thác liên quan vào tháng 12 năm 2025, cả hai đều nhắm vào cơ sở hạ tầng cũ vẫn còn trên chuỗi sau khi nâng cấp giao thức.
Vụ khai thác đầu tiên: Vi phạm bất biến kinh tế ($9 triệu) — 1 tháng 12
Pool yETH stableswap cũ của Yearn Finance đã bị rút cạn trong một giao dịch duy nhất. Kẻ tấn công đã tìm thấy một lỗ hổng trong logic tính toán cổ phần cho phép tạo ra số lượng token yETH gần như vô hạn. Khoảng 1,000 ETH (trị giá khoảng 3 triệu đô la) đã được gửi đến Tornado Cash.
Kẻ tấn công đã tìm thấy một trường hợp đặc biệt trong công thức stableswap nơi các phép tính cổ phần có thể bị thao túng. Lỗ hổng tồn tại trong chính logic kế toán. Khi giao thức tính toán cổ phần cho tiền gửi hoặc rút tiền, phép toán có thể bị thao túng để tạo ra cổ phần từ hư không.
Vụ khai thác thứ hai: Rủi ro hợp đồng cũ ($300K) — 17 tháng 12
Sau vụ khai thác đầu tiên, các Hợp đồng thông minh V1 của Yearn đã bị nhắm mục tiêu. Khi các giao thức nâng cấp, các hợp đồng cũ không biến mất. Chúng vẫn còn trên chuỗi, có khả năng giữ giá trị. Trong trường hợp của Yearn, các Hợp đồng thông minh V1 vẫn còn tiền bị khóa trong đó, và những khoản tiền đó đã trở thành mục tiêu sau khi vụ khai thác đầu tiên thu hút sự chú ý đến cơ sở hạ tầng cũ của Yearn.
Tại sao điều này quan trọng (góc độ kiểm toán và tổ chức):
Vụ khai thác đầu tiên cho thấy một khoảng trống quan trọng trong phương pháp kiểm toán. Các công cụ phân tích tĩnh không xác minh các bất biến kinh tế. Fuzzer kiểm tra đường dẫn mã, không phải mô hình kinh tế. Quy trình kiểm toán cần xác minh rõ ràng rằng logic kế toán duy trì các bất biến dự định trên tất cả các chuỗi hoạt động.
Vụ khai thác thứ hai nêu bật rằng các hợp đồng cũ đại diện cho rủi ro đang diễn ra. Vụ khai thác đầu tiên có thể đã thu hút sự chú ý đến cơ sở hạ tầng cũ của Yearn, dẫn đến vụ thứ hai. Các giao thức cần có kế hoạch rõ ràng để ngừng các hợp đồng cũ, di chuyển giá trị còn lại và giám sát các tương tác không mong muốn.
Giảm thiểu: Triển khai các bài kiểm tra bất biến khẳng định mối quan hệ cổ phần-giá trị được duy trì trên tất cả các hoạt động. Sử dụng fuzzing khác biệt để so sánh các phép tính kế toán với các triển khai tham chiếu. Có các chiến lược ngừng hoạt động rõ ràng cho các hợp đồng cũ với giám sát liên tục.
Loại lỗ hổng: Vi phạm bất biến kinh tế và rủi ro hợp đồng cũ.
Phân tích sâu: Yearn Finance DeFi Project Hacked for $9M | PeckShield Alert | Yearn Finance V1 Exploit
3 tháng 11, 2025
Các lỗi làm tròn nhỏ trong các phép tính pool ổn định của Balancer đã được khuếch đại thông qua các giao dịch hoán đổi hàng loạt tần suất cao, dẫn đến việc rút cạn $70–128 triệu trên nhiều chuỗi. Kẻ tấn công đã thực hiện hàng trăm hoặc hàng nghìn giao dịch hoán đổi, với mỗi giao dịch hoán đổi khuếch đại lỗi làm tròn trước đó cho đến khi những lỗi nhỏ đó tích lũy thành khai thác giá trị khổng lồ.
Cách hoạt động:
Các pool ổn định của Balancer sử dụng các công thức phức tạp để duy trì sự ổn định giá. Các công thức này liên quan đến làm tròn ở nhiều bước. Trong hoạt động bình thường, lỗi làm tròn là nhỏ. Nhưng kẻ tấn công đã tìm cách cấu trúc các giao dịch hoán đổi hàng loạt liên tục hưởng lợi từ hướng làm tròn, trích xuất giá trị thông qua các hoạt động lặp đi lặp lại.
Tại sao điều này quan trọng (góc độ nhà thiết kế giao thức):
Toán học AMM cần chính xác trong các điều kiện đối nghịch. Mọi quyết định làm tròn đều trở thành vector tấn công tiềm ẩn khi xử lý vốn lớn và khả năng thực hiện nhiều giao dịch nhanh chóng. Các nhà thiết kế cần suy nghĩ theo cách đối nghịch: điều gì xảy ra nếu kẻ tấn công thực hiện hoạt động này một nghìn lần?
Những gì các cuộc kiểm toán đã bỏ lỡ: Quy trình kiểm toán tiêu chuẩn đã kiểm tra các giao dịch hoán đổi riêng lẻ, không phải chuỗi hàng trăm hoặc hàng nghìn. Lỗi làm tròn được đo là ít hơn 1 wei mỗi giao dịch hoán đổi và được coi là không đáng kể. Không có bất biến nào được khẳng định trên N hoạt động lặp lại. Fuzzer không có mô hình chuỗi trạng thái không thể phát hiện điều này.
Giảm thiểu: Khẳng định các bất biến được duy trì trên các hoạt động lặp lại. Kiểm tra với kích thước lô đối nghịch. Sử dụng xác minh chính thức để chứng minh giới hạn lỗi làm tròn vẫn chấp nhận được dưới bất kỳ chuỗi hoạt động nào.
Loại lỗ hổng: Lỗi độ chính xác toán học trong công thức AMM.
Phân tích sâu: Balancer DeFi Protocol Suffers Massive Exploit | Balancer Hack Explained with Multi-Chain Details
9 tháng 7, 2025
GMX, một giao thức giao dịch perpetual xử lý hàng tỷ khối lượng giao dịch, đã bị khai thác $42 triệu. Vụ khai thác không đến từ lỗi trong logic giao dịch cốt lõi. Nó xuất hiện ở ranh giới giữa các thành phần: nơi oracle gặp các phép tính ký quỹ, nơi logic thanh lý tương tác với cơ sở hạ tầng cầu nối cross-chain.
Cách hoạt động:
Lỗ hổng tồn tại trong cách các thành phần này tương tác, không phải trong bất kỳ thành phần đơn lẻ nào. Khi oracle cập nhật giá, yêu cầu ký quỹ thay đổi và logic thanh lý phản hồi. Kẻ tấn công có thể đã tìm cách thao túng các tương tác này, có lẽ bằng cách định thời gian cập nhật oracle với các phép tính ký quỹ. Khoảng $9,6 triệu đã được chuyển qua cầu nối cross-chain sang Ethereum ngay sau vụ khai thác, cho thấy sự lập kế hoạch cẩn thận.
Tại sao điều này quan trọng (góc độ kiến trúc hệ thống):
Các thành phần riêng lẻ được kiểm toán tốt vẫn có thể thất bại khi tích hợp. Lỗ hổng không tồn tại trong bất kỳ hợp đồng đơn lẻ nào. Nó tồn tại trong không gian giữa các thành phần, trong cách chúng giao tiếp và tương tác. Khi các giao thức trở nên phức tạp hơn và có thể kết hợp được, bề mặt tấn công tăng lên ở ranh giới thành phần.
Những gì các cuộc kiểm toán đã bỏ lỡ: Quy trình kiểm toán truyền thống thường tập trung nhiều vào các thành phần một cách độc lập. Kiểm tra tích hợp tồn tại, nhưng nó có thể không bao gồm các tình huống đối nghịch nơi kẻ tấn công có thể định thời gian các hoạt động qua ranh giới thành phần.
Giảm thiểu: Triển khai các bài kiểm tra tích hợp mô phỏng hành vi hệ thống đầy đủ. Sử dụng các framework mô phỏng đối nghịch có thể mô hình hóa các tương tác giữa các thành phần. Kiểm tra các cuộc tấn công về thời gian nơi các hoạt động được sắp xếp để khai thác các tương tác thành phần.
Loại lỗ hổng: Lỗi tích hợp hệ thống.
Phân tích sâu: GMX Exploit Coverage
28 tháng 5, 2025
Cork Protocol đã mất khoảng 3,761 wstETH (trị giá khoảng $12 triệu) do lỗ hổng trong cách xử lý các phái sinh Staking Token thanh khoản. Các phái sinh Staking Token thanh khoản như stETH, wstETH và osETH tạo ra những thay đổi trạng thái ẩn. Tỷ giá hối đoái giữa wstETH và ETH thay đổi theo thời gian khi phần thưởng Staking Token tích lũy.
Cách hoạt động:
Vụ khai thác liên quan đến sự không khớp giữa cách Cork Protocol mô hình hóa tích lũy giá trị của wstETH và cách nó thực sự hoạt động. Giao thức có thể đã giả định mối quan hệ tĩnh 1:1 không tồn tại. Kẻ tấn công có thể gửi wstETH khi tỷ giá hối đoái thuận lợi, đợi nó tích lũy giá trị, sau đó rút nhiều hơn mức họ có thể.
Tại sao điều này quan trọng (góc độ tổ chức):
Điều này nêu bật khoảng trống kiến thức của tổ chức. Nhiều nhóm phát triển coi tất cả các token ERC-20 giống nhau, nhưng các phái sinh Staking Token thanh khoản hoạt động khác nhau. Đây không chỉ là vấn đề mã. Đó là vấn đề quản lý kiến thức. Các nhóm cần quy trình để xác định và ghi lại các hành vi cụ thể của token trước khi tích hợp.
Giảm thiểu: Luôn sử dụng các hàm tỷ giá hối đoái của token (ví dụ: wstETH.getStETHByWstETH()). Không bao giờ giả định mối quan hệ 1:1. Tính đến tích lũy giá trị theo thời gian trong bất kỳ phép tính nào liên quan đến LSD.
Loại lỗ hổng: Hiểu lầm cơ chế token.
Phân tích sâu: Cork Protocol Hacked for $12M, Smart Contracts Paused
Những vụ hack này tiết lộ các bài học hẹp hơn nhưng vẫn hữu ích về các lớp lỗ hổng cụ thể.
2 tháng 9, 2025
Bunni, một giao thức thanh khoản tập trung, đã bị khai thác thông qua lỗi độ chính xác/làm tròn trong hệ thống kế toán LP của nó. Thiệt hại chính xác khác nhau theo nguồn ($2,4 triệu được báo cáo ban đầu, phân tích sau này cho thấy lên đến $8,3 triệu).
Cách hoạt động:
Kẻ tấn công đã tìm cách thực hiện gửi và rút lặp đi lặp lại khai thác làm tròn có lợi cho họ. Mỗi hoạt động trích xuất một lượng nhỏ, nhưng qua nhiều hoạt động, những lượng nhỏ đó cộng lại thành hàng triệu.
Tại sao điều này quan trọng (góc độ phương pháp kiểm tra):
Hầu hết các bộ kiểm tra mô hình hóa các hoạt động đơn lẻ, không phải chuỗi hoạt động. Một bài kiểm tra có thể xác minh rằng một khoản tiền gửi duy nhất tính toán cổ phần chính xác, nhưng nó sẽ không phát hiện lỗi độ chính xác chỉ xuất hiện sau hàng chục hoạt động. Fuzzer không mô hình hóa chuỗi trạng thái bỏ lỡ những vấn đề này.
Giảm thiểu: Sử dụng các thư viện toán học đã được thiết lập (ví dụ: PRBMath, ABDKMath). Kiểm tra chuỗi hoạt động, không chỉ các hoạt động đơn lẻ. Xem xét sử dụng độ chính xác cao hơn bên trong ngay cả khi giao diện bên ngoài sử dụng độ chính xác tiêu chuẩn.
Loại lỗ hổng: Lỗi độ chính xác/làm tròn trong kế toán LP.
Phân tích sâu: Bunni V2 Exploit: $8.3M Drained
30 tháng 10, 2025
Garden Finance đã bị khai thác $5,5 triệu cộng trên nhiều chuỗi. Kẻ tấn công khai thác trên một chuỗi, sau đó sử dụng các cầu nối cross-chain để di chuyển tài sản bị đánh cắp sang các chuỗi khác, hoán đổi chúng qua các DEX khác nhau để che giấu dấu vết.
Tại sao điều này quan trọng (góc độ mô hình hóa mối đe dọa):
Triển khai đa chuỗi tạo ra bề mặt tấn công mới. Mô hình mối đe dọa cần tính đến các vector tấn công Cross-chain. Kẻ tấn công có thể khai thác giao thức của bạn trên một chuỗi, sau đó sử dụng cơ sở hạ tầng Cross-chain để trốn thoát hoặc che giấu dấu vết của chúng.
Giảm thiểu: Thiết kế các mô hình mối đe dọa bao gồm các vector tấn công Cross-chain. Hiểu cách các cầu nối hoạt động và các giả định bảo mật của chúng. Xem xét triển khai giám sát và cảnh báo Cross-chain.
Loại lỗ hổng: Mô hình tấn công đa chuỗi.
Phân tích sâu: Garden Finance Breach Coverage
8 tháng 9, 2025
Nemo Protocol trên Sui đã bị khai thác $2,4 triệu. Kẻ tấn công đã chuyển USDC bị đánh cắp qua Circle từ Arbitrum sang Ethereum. Vụ khai thác xảy ra bất chấp các tính năng an toàn của Move.
Tại sao điều này quan trọng (góc độ công cụ):
Hệ thống kiểu của Move ngăn chặn một số lỗi nhất định, nhưng nó không giải quyết toàn bộ một lớp lỗ hổng cấp giao thức. Nếu logic kinh tế của giao thức bạn bị lỗi, nếu kiểm soát truy cập của bạn yếu, nếu tích hợp oracle của bạn dễ bị tổn thương, hệ thống kiểu của Move không giúp được.
Loại lỗ hổng: Lỗi logic kinh tế trong hệ sinh thái non-EVM.
Phân tích sâu: Nemo Protocol Exploit Details
Một số vụ hack khác trong năm 2025 đại diện cho các lỗi hoạt động đơn giản hơn là các lỗ hổng kỹ thuật mới:
Các sự cố này theo các mô hình nổi tiếng: khóa quản trị viên bị xâm phạm, phê duyệt token quá mức và lỗi kiểm soát truy cập. Các giải pháp đã được biết: sử dụng multisig cho các chức năng quản trị, triển khai kiểm soát truy cập phù hợp, giám sát phê duyệt quá mức.
Nhìn lại các vụ hack năm 2025, một số mô hình xuất hiện. Tính chính xác kinh tế quan trọng như bảo mật mã. Lỗi tạo vô hạn của Yearn và lỗi làm tròn của Balancer cho thấy các giao thức cần xác minh chính thức các mô hình kinh tế của họ, không chỉ kiểm toán mã. Ranh giới hệ thống ẩn giấu sự phức tạp. Vụ khai thác của GMX chứng minh rằng các thành phần được kiểm toán tốt vẫn có thể thất bại khi tích hợp. Kiểm tra tích hợp và mô phỏng đối nghịch là cần thiết.
Độ chính xác và làm tròn vẫn nguy hiểm. Vụ khai thác của Bunni là lời nhắc nhở rằng các lỗ hổng số học điểm cố định vẫn tồn tại. Kiểm tra chuỗi hoạt động, không chỉ các hoạt động đơn lẻ. Cross-chain tạo ra bề mặt tấn công mới. Garden Finance và Nemo Protocol cho thấy các triển khai đa chuỗi yêu cầu các mô hình bảo mật tính đến các vector tấn công Cross-chain. An toàn ngôn ngữ không loại bỏ lỗi kinh tế. Nemo Protocol chứng minh rằng các ngôn ngữ an toàn kiểu ngăn chặn một số lỗi nhất định nhưng không giải quyết lỗi logic kinh tế. Hợp đồng cũ là rủi ro đang diễn ra. Các vụ khai thác tháng 12 của Yearn cho thấy rằng các hợp đồng không được dùng nữa vẫn dễ bị tổn thương, và một vụ khai thác có thể thu hút sự chú ý đến cơ sở hạ tầng cũ. Có các chiến lược ngừng hoạt động rõ ràng và giám sát liên tục.
Audited, Tested, and Still Broken: Smart Contract Hacks of 2025 was originally published in Coinmonks on Medium, where people are continuing the conversation by highlighting and responding to this story.


