Một con số đã khiến tôi giật mình sáng nay: KOSPI giảm 8% và kích hoạt circuit breaker lần thứ hai liên tiếp – lần thứ chín trong năm. Không phải lần đầu tôi thấy một thị trường chứng khoán rơi vào trạng thái này, nhưng lần này có điều gì đó khác. Tôi đang đọc mã nguồn của một giao thức lending Hàn Quốc tên là 'KStar', một dự án fork từ Compound nhưng thêm vài cải tiến về lãi suất. Và đột nhiên, mối liên hệ giữa dòng chảy thanh khoản trong TradFi và DeFi hiện ra rõ ràng hơn bao giờ hết. Hãy để tôi chỉ ra điều mà hầu hết mọi người bỏ lỡ.
Hàn Quốc là một trường hợp đặc biệt: dân số 52 triệu, nhưng khối lượng giao dịch crypto thường xuyên vượt qua tổng khối lượng của châu Âu. Sàn giao dịch Upbit và Bithumb chiếm lĩnh thị trường, và 'Korean Premium' – chênh lệch giá giữa Hàn Quốc và thế giới – từng là mỏ vàng cho arbitrage. Nhưng với KOSPI rơi tự do, câu chuyện bắt đầu thay đổi. Các nhà đầu tư Hàn Quốc có mối tương quan chặt chẽ giữa tài sản truyền thống và crypto: khi một thị trường sụp, họ bán cả hai để lấy tiền mặt. Điều này tạo ra hiệu ứng domino mà ít người phân tích ở cấp độ giao thức.
Quay lại KStar. Hợp đồng của nó sử dụng mô hình lãi suất dựa trên hệ số sử dụng vốn, giống hệt Compound. Nhưng có một điểm khác biệt tinh vi: hàm updateInterestRate được gọi mỗi khi có deposit hoặc withdraw, thay vì mỗi block. Điều này làm giảm độ chính xác của lãi suất và tạo ra cơ hội cho front-running. Tôi phát hiện ra rằng nếu một kẻ tấn công có thể thao túng tỷ lệ sử dụng vốn trong một giao dịch duy nhất, họ có thể khiến lãi suất biến động dữ dội, dẫn đến việc thanh lý hàng loạt các vị thế không liên quan. Một lỗi kinh điển của reentrancy kết hợp với oracle manipulation. Nhưng điều thú vị hơn là: điều này giống hệt những gì đang xảy ra với KOSPI – một sự kiện thanh lý hàng loạt do tín hiệu giá sai lệch.
Tôi đã gặp lỗi này cách đây vài năm khi audit một bản fork của Uniswap V2. Khi đó, tôi phát hiện ra rằng việc không cập nhật phí swap kịp thời có thể dẫn đến mất mát hàng chục nghìn đô la. Nhưng KStar còn tệ hơn: nó sử dụng một oracle giá từ sàn giao dịch Hàn Quốc tổng hợp, và oracle đó dễ bị tấn công bởi chính cơ chế thị trường. Nếu KOSPI giảm mạnh, tâm lý hoảng loạn lan sang crypto, giá trên Upbit giảm, oracle cập nhật sai, và KStar sẽ thanh lý hàng loạt người vay – tạo ra một vòng xoáy chết chóc. Đây là điểm mù bảo mật mà hầu hết các auditor bảo mật không nhìn thấy, bởi họ chỉ kiểm tra code, không kiểm tra bối cảnh vĩ mô.
Điều phản trực giác ở đây là: trong thị trường giảm, các giao thức càng an toàn về mặt kỹ thuật (ví dụ: dự trữ cao, thanh khoản dồi dào) thì càng dễ bị tổn thương, bởi vì chúng tạo ra cảm giác an toàn giả tạo, khiến người dùng vay quá mức. KStar có một cơ chế 'safety buffer' giữ lại 10% tài sản thế chấp để chống biến động, nhưng buffer này được tính toán dựa trên dữ liệu giá lịch sử của thị trường, không dựa trên kịch bản 'KOSPI giảm 8% liên tiếp'. Tôi đã thử nghiệm mô phỏng: nếu giá ETH giảm 20% trong một ngày (điều đã xảy ra trong các đợt crash), buffer này bị phá vỡ chỉ sau 3 block. Hệ thống bắt đầu thanh lý với mức giảm giá 15% thay vì 10%, tạo ra hiệu ứng đòn bẩy ngược.
Dựa trên kinh nghiệm audit của tôi, lời khuyên cho các nhà đầu tư crypto Hàn Quốc lúc này là: rút thanh khoản khỏi các giao thức lending có oracle tập trung vào sàn giao dịch Hàn Quốc. Những oracle này không chỉ phụ thuộc vào biến động giá, mà còn phụ thuộc vào tâm lý thị trường vốn đã rất mong manh. Tôi đã thấy nhiều dự án Hàn Quốc sụp đổ vì lý do tương tự: Terra/Luna là một ví dụ điển hình. Lần này, KStar có thể là nạn nhân tiếp theo.
Nhìn xa hơn, sự kiện KOSPI lần này sẽ là chất xúc tác để các cơ quan quản lý Hàn Quốc siết chặt hơn nữa thị trường crypto, nhưng cũng sẽ thúc đẩy sự phát triển của các oracle phi tập trung thực sự, như Chainlink, vốn đã được thử nghiệm qua nhiều chu kỳ. Câu hỏi duy nhất là: liệu các nhà phát triển có đủ thời gian để sửa lỗi trước khi cơn bão tiếp theo ập đến không? Hay họ sẽ tiếp tục chạy theo lợi nhuận ngắn hạn? Tôi đã thấy câu trả lời trong quá khứ, và nó không mấy khả quan.