• Trang trạng thái ghi nhận sự cố lúc 18:05 UTC, phân loại đây là sự cố gián đoạn nghiêm trọng của API Giao dịch Dự đoán.
• Một nhà giao dịch tên Car báo cáo khoản lỗ 800.000 USD và cho biết tất cả các vị thế của anh đã bị bán.
• Theo các ước tính chưa được xác minh, một ví được cho là của bên nhận đã đạt mức cao nhất 2,68 triệu USD vào lúc 18:05 UTC.
Tạm ngừng giao dịch trên sàn quốc tế
Polymarket đã tạm ngừng toàn bộ giao dịch trên sàn quốc tế vào thứ Năm sau khi một nhà cung cấp bên thứ ba bị xâm nhập và người dùng báo cáo rằng tài khoản của họ bị rút sạch tiền. Theo trang trạng thái của công ty, sự cố ảnh hưởng đến Polymarket.com đã được xác định và khắc phục, nhà cung cấp bị xâm nhập đã được trình báo với cơ quan thực thi pháp luật có thẩm quyền, và những người dùng bị ảnh hưởng sẽ được “bồi thường đầy đủ”. Sàn giao dịch không tiết lộ có bao nhiêu tài khoản bị ảnh hưởng hay tổng giá trị tài sản bị lấy đi. Lệnh tạm ngừng áp dụng cho dịch vụ quốc tế dựa trên ví, nơi người dùng giao dịch các thị trường dự đoán bằng tài khoản tự lưu ký; sàn giao dịch tại Mỹ được quản lý riêng và hoạt động theo giấy phép của Ủy ban Giao dịch Hàng hóa Tương lai (CFTC) không được nêu là sàn bị ảnh hưởng. Một tài khoản do cộng đồng điều hành đã đăng một tuyên bố gần như giống hệt trên X ngay sau khi trang trạng thái được cập nhật, với nội dung trùng khớp với thông báo chính thức. Tính đến thời điểm bài viết được đăng, chưa có lịch trình khôi phục toàn bộ hoạt động giao dịch.
Cập nhật (29 Oct 19:11 UTC): Cùng địa chỉ 0x3F99139F1C5854bb628c2e576Aaf638e99dFfc18 được mã hóa cứng trong tập lệnh làm địa chỉ nhận dự phòng, và dữ liệu on-chain cho thấy ví của kẻ tấn công bị nghi ngờ đang nắm giữ khoảng 2,65 triệu đô la POL sau nhiều lần hoán đổi USDC.e sang POL qua Relay.
Chế độ chỉ hủy lúc 18:05 UTC
Trang trạng thái lần đầu ghi nhận sự cố lúc 18:05 UTC thứ Năm, phân loại đây là sự cố nghiêm trọng của Predictions Trading API, sổ lệnh khớp các giao dịch trên thị trường dự đoán. Khi đó, sàn ở chế độ chỉ hủy: người dùng có thể hủy các lệnh hiện có, nhưng không thể xử lý lệnh mới hoặc giao dịch nào; các hoạt động của relayer, dịch vụ thay mặt người dùng gửi giao dịch on-chain, vẫn bị tạm dừng. Quyền truy cập tài khoản, các luồng dữ liệu websocket, dữ liệu vị thế và hoạt động thanh toán trên Polygon vẫn tiếp tục trong suốt thời gian đó. Khoảng 32 phút sau, lúc 18:37 UTC, trang chuyển trạng thái từ “đang điều tra” sang “đã xác định” và quy nguyên nhân cho nhà cung cấp bên thứ ba bị xâm phạm. Loại lệnh duy nhất được phép là hủy các lệnh đang mở, trong khi hệ thống khớp lệnh vẫn ngừng hoạt động, khiến các nhà giao dịch đang có vị thế không thể thoát lệnh.
Thiệt hại của người dùng và khoản thất thoát 2,68 triệu đô la được tuyên bố
Các báo cáo về việc tiền bị rút bắt đầu lan truyền trên X trước khi công ty xác nhận bất cứ điều gì. Một nhà giao dịch dùng tên Car đăng trên X rằng 800.000 đô la đã bị lấy khỏi tài khoản của anh và một người bạn mất 600.000 đô la, đồng thời nói rằng toàn bộ vị thế của anh đã bị bán. Một tài khoản khác, StarPlatinum, lần theo một ví nhận tiền bị nghi ngờ bắt đầu nhận tiền lúc 17:05 UTC, nắm giữ 412.000 đô la vào lúc 17:25, đạt 2,02 triệu đô la lúc 17:50 và lên đỉnh 2,68 triệu đô la lúc 18:05; tài khoản này ước tính ví nhận đã tích lũy 28,6 triệu POL được chuyển đổi từ số dư tiền nạp của người dùng. Tài khoản đó cũng xác định một proxy Deposit Wallet Factory và cáo buộc cơ sở hạ tầng giao dịch được tài trợ của Relay có liên quan. Không con số nào trong số này được xác nhận: các tuyên bố của công ty không nêu số nạn nhân, tổng thiệt hại hay địa chỉ của kẻ tấn công, và chưa có mã băm giao dịch nào được công bố.
Vụ tấn công frontend hồi tháng Sáu và tiền lệ hoàn tiền
Sự việc này tương tự một sự cố hồi tháng Sáu, khi một nhà cung cấp bên thứ ba bị xâm phạm khiến một tập lệnh độc hại được đưa vào frontend của Polymarket đối với một số người dùng. Phân tích on-chain ban đầu ước tính thiệt hại là 2,94 triệu đô la, liên quan đến ít nhất 11 ví; ước tính sau đó lên tới 3,1 triệu đô la. Tiền bị lấy dưới dạng pUSD trên Polygon, chuyển đổi qua Relay, chuyển cầu nối sang Ethereum rồi đổi thành ETH. Khi đó, công ty cho biết đã gỡ bỏ phần phụ thuộc bị ảnh hưởng và sẽ hoàn trả đầy đủ cho khách hàng bị ảnh hưởng. Một nền tảng ngang hàng cũng bị xâm phạm tương tự vài ngày trước đó: Predict.fun xác nhận các giao dịch chuyển tiền trái phép trị giá khoảng 400.000 USDT trong một tuyên bố ngày 27 Oct, truy dấu khả năng bị xâm phạm từ một trang tài liệu API được lưu trữ bên ngoài, đồng thời hứa hoàn trả đầy đủ và công bố báo cáo hậu kiểm chi tiết. Một sự cố hồi tháng Mười Hai liên quan đến dịch vụ đăng nhập một cú nhấp cũng chỉ ra cùng một mắt xích yếu: các phần phụ thuộc của bên thứ ba.
Các nhà nghiên cứu bảo mật tại Hudson Rock đã xác định một phương thức phát tán có khả năng đã được sử dụng: một tập lệnh tải từ DebugBear, dịch vụ giám sát hiệu suất web, chứa mã tìm kiếm phiên giao dịch của người dùng đã đăng nhập rồi tìm cách bán các vị thế và chuyển tài sản của họ. Cùng địa chỉ 0x3F99139F1C5854bb628c2e576Aaf638e99dFfc18 được mã hóa cứng trong tập lệnh làm địa chỉ nhận dự phòng, và dữ liệu on-chain cho thấy ví của kẻ tấn công bị nghi ngờ đang nắm giữ khoảng 2,65 triệu đô la POL sau nhiều lần hoán đổi USDC.e sang POL qua Relay. Hudson Rock cho biết mã trên trang web hoạt động thực tế của Polymarket ghi nhận việc gỡ bỏ tập lệnh, nhưng công ty này chưa xác định được vụ xâm phạm bắt đầu như thế nào hoặc có bao nhiêu người dùng bị ảnh hưởng. Polymarket chưa nêu nguyên nhân.
Mô thức bên thứ ba tái diễn
Ba sự cố trong khoảng mười tháng, tất cả đều thông qua các phần phụ thuộc của nhà cung cấp thay vì các hợp đồng on-chain, cho thấy một điểm yếu mang tính hệ thống trong nền tảng thị trường dự đoán. Polymarket hoạt động trên Polygon, một mạng Layer 2, và từ lâu đã chuyển từ thiết kế nhà tạo lập thị trường tự động ban đầu sang sổ lệnh tập trung; tuy nhiên, bề mặt tấn công nằm ở frontend được lưu trữ, relayer và hạ tầng ví nạp tiền—những thứ không nằm trong phạm vi kiểm toán hợp đồng. Trong mỗi vụ việc, tiền rời khỏi tài khoản ngay khi người dùng ký các yêu cầu độc hại, khiến thiệt hại trở nên không thể đảo ngược sau khi giao dịch được xác nhận. Cách xử lý sửa lỗi và bồi thường của công ty vẫn nhất quán, nhưng một lần nữa công ty chưa công bố mã băm giao dịch, con số thiệt hại được xác nhận hay nguyên nhân gốc rễ về kỹ thuật ngoài việc chỉ đích danh một bên thứ ba. Cho đến khi những chi tiết đó được công bố, chuyển số dư nhàn rỗi vào ví lạnh và tìm hiểu cách hoạt động của ví phần cứng vẫn là biện pháp phòng vệ thiết thực cho người dùng đang giao dịch.
