Pool PancakeSwap V2 cặp OCA/USDC trên BSC đã bị khai thác bằng một giao dịch đáng ngờ, khiến gần 500.000 USD giá trị USDC bị rút sạch khỏi thanh khoản trong một lần.
Các nền tảng bảo mật blockchain cho biết kẻ tấn công đã lợi dụng lỗ hổng trong logic sellOCA() dạng giảm phát để thao túng dự trữ của pool, qua đó đẩy giá OCA trên cặp và rút USDC. Số tiền bị lấy đi được báo cáo khoảng 422.000 USD.
- Pool PancakeSwap V2 OCA/USDC trên BSC bị khai thác, USDC bị rút gần 500.000 USD trong một giao dịch.
- Lỗ hổng nằm ở logic sellOCA() và cách swapHelper bị gọi lặp, kết hợp flash loan/flash swap để thao túng dự trữ.
- Các vụ tấn công kiểu flash loan trước đó cho thấy rủi ro đến từ thao túng reserves của AMM qua sync() và callback, không phải bản thân flash loan.
Khai thác OCA/USDC trên PancakeSwap V2 đến từ thao túng dự trữ pool
Kẻ tấn công lợi dụng lỗ hổng trong logic sellOCA() dạng giảm phát để can thiệp dự trữ pool, đẩy giá OCA trên cặp và rút USDC khỏi thanh khoản trong một giao dịch.
Theo báo cáo từ các nền tảng bảo mật blockchain, điểm yếu nằm ở cách cơ chế “deflationary” của sellOCA() tương tác với quy trình swap, tạo điều kiện cho việc điều chỉnh trạng thái dự trữ (reserves) theo hướng có lợi cho kẻ tấn công.
Thiệt hại được mô tả là “gần 500.000 USD” USDC bị rút khỏi thị trường trong một giao dịch. Tuy nhiên, số tiền kẻ tấn công thực sự mang đi được báo cáo khoảng 422.000 USD, cho thấy có thể đã phát sinh chênh lệch do trượt giá, phí, hoặc các bước xử lý trong cùng block.
Flash loan, flash swap và swapHelper bị lợi dụng để rút USDC
Cuộc tấn công kết hợp flash loan và flash swap, đồng thời gọi lặp swapHelper của OCA để rút OCA trực tiếp khỏi pool trong lúc swap, làm giá OCA tăng ảo và mở đường rút USDC.
Trọng tâm kỹ thuật được mô tả là việc “loại bỏ OCA token trực tiếp khỏi pool thanh khoản trong quá trình hoán đổi”, khiến giá OCA trong cặp OCA/USDC bị thổi phồng. Khi giá trên cặp bị đẩy lệch, kẻ tấn công có thể thực hiện các bước swap theo chiều có lợi để rút USDC.
Mô hình này thường dựa vào đặc tính “vay trong một giao dịch” của flash loan: có thể mượn lượng tài sản lớn không cần thế chấp, miễn là hoàn trả cả gốc lẫn phí trong cùng một block. Vì thế, kẻ tấn công có thể tạm thời có sức mua rất lớn để thao túng trạng thái pool.
Cuộc tấn công được thực hiện qua ba giao dịch và có chi phí “builder bribe”
Báo cáo cho biết vụ việc diễn ra qua ba giao dịch, trong đó một giao dịch thực thi khai thác và hai giao dịch còn lại được mô tả là trả thêm “builder bribe” để ưu tiên xử lý.
Theo bài đăng được dẫn nguồn trên X, cuộc tấn công được báo cáo là thực hiện qua ba giao dịch: giao dịch đầu để khai thác, hai giao dịch tiếp theo nhằm phục vụ mục đích bổ sung liên quan đến builder.
“Tổng cộng, 43 BNB cộng 69 BNB đã được trả cho 48club-puissant-builder, để lại lợi nhuận cuối ước tính 340.000 USD.”
– Blocksec Phalcon, bài đăng trên X
Blocksec Phalcon cũng cho biết một giao dịch khác trong cùng block đã thất bại ở vị trí 52, nhiều khả năng do bị kẻ tấn công frontrun, cho thấy mức độ cạnh tranh và tối ưu thứ tự giao dịch (MEV) trong các sự cố dạng này.
Flash loan trên PancakeSwap hoạt động không cần thế chấp nhưng phải trả trong cùng block
Flash loan cho phép vay lượng crypto lớn không cần tài sản thế chấp, nhưng bắt buộc hoàn trả cả gốc và phí trong cùng block, khiến nó trở thành công cụ phổ biến trong arbitrage, liquidation và cả tấn công thao túng AMM.
Theo mô tả, trên Binance Smart Chain, các khoản vay nhanh thường phục vụ chiến lược arbitrage và thanh lý. Việc thực thi thường dựa vào cơ chế flash swap, được nhắc đến là do PancakeSwap V3 hỗ trợ.
Điểm cần phân biệt: flash loan/flash swap là “đòn bẩy tức thời”, còn thiệt hại thường xuất phát từ lỗ hổng logic token, lỗi tích hợp, hoặc thiết kế AMM cho phép thao túng dự trữ khi thiếu các biện pháp ngăn callback độc hại.
Một vụ flash loan khác từng rút 138,6 WBNB khỏi pool DMi/WBNB
Một sự cố khác được ghi nhận vào tháng 12/2025: kẻ tấn công rút khoảng 138,6 WBNB từ pool PancakeSwap cặp DMi/WBNB, thu về xấp xỉ 120.000 USD.
Báo cáo trên X cho biết vụ việc tháng 12/2025 đã cho phép kẻ tấn công rút khoảng 138,6 WBNB khỏi pool thanh khoản PancakeSwap của cặp DMi/WBNB, với lợi nhuận ước tính khoảng 120.000 USD.
Vụ này minh họa cách kết hợp flash loan với thao túng dự trữ nội bộ của cặp AMM thông qua sync() và các hàm callback có thể làm cạn kiệt pool. Quy trình được mô tả gồm triển khai hợp đồng khai thác, gọi một hàm vào chuyên biệt, sau đó vay khoảng 102.693 WBNB từ giao thức Moolah và kích hoạt callback onMoolahFlashLoan(…).
Rủi ro cốt lõi nằm ở khả năng thao túng reserves và callback độc hại, không phải flash loan
Điểm yếu được nhấn mạnh là ở hợp đồng/thiết kế AMM cho phép thao túng dự trữ qua flash swap và sync() mà thiếu cơ chế bảo vệ trước callback độc hại, thay vì bản thân cơ chế flash loan.
Trong mô tả sự cố DMi/WBNB, lỗ hổng “không nằm trong flash loan”, mà nằm ở hợp đồng PancakeSwap cho phép can thiệp reserves bằng cách phối hợp flash swap và sync() mà không có lớp bảo vệ trước những callback được thiết kế để thao túng trạng thái.
Với các pool AMM, reserves là biến cốt lõi để định giá. Nếu quy trình cập nhật reserves hoặc kiểm tra số dư có thể bị làm sai lệch trong cùng một giao dịch, kẻ tấn công có thể tạo “giá ảo” để swap và rút tài sản tốt (như USDC) từ pool.
Những câu hỏi thường gặp
Pool nào trên PancakeSwap bị khai thác trong sự cố lần này?
Pool PancakeSwap V2 cho cặp OCA/USDC trên Binance Smart Chain (BSC) được báo cáo là bị khai thác thông qua một giao dịch đáng ngờ.
Kẻ tấn công đã rút bao nhiêu tiền trong vụ OCA/USDC?
Thiệt hại được mô tả là gần 500.000 USD giá trị USDC bị rút trong một giao dịch, và số tiền kẻ tấn công được báo cáo mang đi khoảng 422.000 USD.
Cơ chế tấn công OCA/USDC dựa vào yếu tố kỹ thuật nào?
Báo cáo cho biết kẻ tấn công lợi dụng lỗ hổng logic sellOCA() dạng giảm phát, kết hợp flash loan/flash swap và gọi lặp hàm swapHelper để thao túng dự trữ, đẩy giá OCA trên cặp và rút USDC.
Flash loan có phải là nguyên nhân gốc của các vụ rút cạn pool không?
Trong các mô tả nêu ra, nguyên nhân gốc được nhấn mạnh thường là lỗ hổng hợp đồng/thiết kế AMM cho phép thao túng reserves và callback độc hại; flash loan chỉ cung cấp nguồn vốn lớn tức thời trong cùng block.



