Nghiên cứu mới hé lộ về các bot chạy trước trên Ethereum

Nghiên cứu mới từ ví tiền điện tử ZenGo đã làm sáng tỏ thêm về các cuộc tấn công chạy trước (front-running) xảy ra trên blockchain Ethereum.

Ethereum

Được phác thảo lần đầu tiên trong “Ethereum Is a Dark Forest” (tạm dịch: Ethereum là một khu rừng đêm đen), nhà đầu tư DeFi Dan Robinson và Georgios Konstantopoulos đã thu hút sự chú ý đến một loạt các cuộc tấn công bởi những bot đang lang thang khắp nơi trên blockchain Ethereum để tìm kiếm con mồi.

Báo cáo mới từ ZenGo phác thảo cách các nhà nghiên cứu xác định và cô lập bot chạy trước trong khi đánh giá hiệu quả của chúng cũng như khả năng một giao dịch bị truy lùng, đồng thời thử nghiệm cách phòng tránh.

Nhà nghiên cứu blockchain Alex Manuskin tại ZenGo đã tham gia nghiên cứu cho biết:

“Chạy trước nói chung không phải là điều gì đó mới mẻ trên Ethereum. Điểm mới lạ ở đây là chúng tôi đã xem xét các bot tìm kiếm lợi nhuận, ngay cả trong hợp đồng mà chúng chưa từng thấy trước đây, khá phức tạp và thực hiện một số lệnh nội bộ đến các hợp đồng khác”.

Chạy trước

Theo báo cáo của ZenGo, chạy trước là “hành động đưa một giao dịch vào hàng đầu tiên trong hàng đợi thực hiện, ngay trước khi một giao dịch trong tương lai đã biết xảy ra”.

Giá trên sàn giao dịch là một ví dụ về chạy trước. Nếu ai đó chuẩn bị mua lượng lớn ETH trên Uniswap, đến mức đẩy giá lên cao hơn, thì một cách để kiếm tiền là mua ETH ngay trước khi giao dịch mua lớn diễn ra và bán ngay sau đó.

Chạy trước trên Ethereum xảy ra bởi vì các bot có thể đặt “giá gas cao hơn một chút cho giao dịch, khuyến khích miner đặt lệnh sớm hơn khi xây dựng khối. Các giao dịch trả tiền cao hơn được thực hiện đầu tiên. Do đó, nếu hai giao dịch tạo ra lợi nhuận từ cùng một lệnh hợp đồng được đặt trong cùng một khối, thì chỉ có giao dịch đầu tiên thu được lợi nhuận”.

Manuskin cho biết:

“Ở khía cạnh nào đó, mọi giao dịch tìm đường đến blockchain đều có những cuộc chiến khốc liệt tranh giành từng chút lợi nhuận. Nếu bạn tình cờ gặp cơ hội kinh doanh chênh lệch giá hoặc thậm chí nhận thấy lỗi trong hợp đồng nào đó, rất có thể sẽ khó lấy giá trị này mà không tự vận hành một bot để chống lại những kẻ chạy trước, kết nối và trả tiền cho một miner để che giấu giao dịch lợi nhuận cao của bạn hoặc làm cho giao dịch phức tạp đến mức những kẻ chạy trước không nhận thấy”.

Dẫn dụ bot

Các nhà nghiên cứu bắt đầu thu hút bot chạy trước tổng quát. Để đạt được điều này, họ phải đầu tư đủ tiền vào giao dịch honeypot (dẫn dụ) của mình để khiến nó trở nên hấp dẫn đối với bot như vậy.

Các nhà nghiên cứu viết:

“Lần này, chúng tôi đã thành công. Giao dịch chờ xử lý trong ~3 phút trước khi khai thác mà không nhận được giá trị từ hợp đồng honeypot. Nhìn vào giao dịch nội bộ của hợp đồng, chúng tôi có thể thấy tiền đã được chuyển đến tay người khác.

Giao dịch của kẻ chạy trước đã sử dụng nhiều gwei hơn một chút (là đơn vị nhỏ nhất của ETH), chính xác là nhiều hơn 0.000001111 gwei và được khai thác trong cùng một khối với sự cố gắng trừu tượng hóa của họ. Frances Coppola nói:

“Theo định nghĩa, thị trường tiền điện tử là thị trường dễ nhận thấy. Vì vậy, những kẻ săn mồi có thể nhìn thấy con mồi đang lao tới. Con mồi cũng có thể nhìn thấy chúng nhưng không thể trốn thoát. Khi bạn gửi một giao dịch Ethereum, nó phải đợi trong mempool cho đến khi miner chọn nó mà không có nơi nào khác để đi. Mọi kẻ săn mồi trong pool đều có thể nhìn thấy. Do vậy, giao dịch dễ dàng bị sao chép, chạy trước hoặc đánh cắp. Điều kỳ diệu là bất kỳ giao dịch hợp pháp nào cũng được xác minh”.

Sau khi xác định được bot, họ có thể theo dõi số lượng mà nó thu được kể từ khi bắt đầu hoạt động. Sử dụng Dune Analytics, nhà nghiên cứu ước tính bot bắt đầu hoạt động vào tháng 5/2018 và phỏng đoán thu về tổng cộng khoảng 10,000 đô la ETH. Mặc dù thoạt nhìn có vẻ không phải là số tiền lớn, nhưng hãy nhớ rằng, một cá nhân có thể tạo ra nhiều bot để thay mặt họ.

Ethereum

Số tiền bot thu được theo thời gian | Nguồn: Dune Analytics

Bằng giao dịch honeypot lớn hơn một chút và phức tạp hơn, các nhà nghiên cứu đã thu hút được một bot khác. Khi nhà nghiên cứu cố gắng trích tiền từ giao dịch mồi nhử của họ, họ đã che khuất lệnh bằng một hợp đồng ủy quyền. Loại chức năng hợp đồng này liên quan đến hợp đồng hoàn toàn riêng biệt và không công bố lên blockchain công khai.

Họ đã “triển khai hợp đồng ProxyTaker và sử dụng hàm thích hợp nhằm trích xuất tiền”.

Giao dịch đã nhanh chóng bị một bot khác chạy trước.

Họ viết:

“Lần này ấn tượng hơn nhiều. Không chỉ bot có thể phát hiện giao dịch của chúng tôi mà còn xác định được nó từ trong lệnh nội bộ, từ một hợp đồng hoàn toàn khác! Hoàn thành điều này trong thời gian kỷ lục. Giao dịch trích tiền của chúng tôi bị khai thác trong vài giây (và của bot cũng vậy)”.

Bot này phức tạp hơn nhiều và không chỉ tập trung vào các giao dịch ETH; thay vào đó, nó đã thực hiện nhiều loại giao dịch chênh lệch giá liên quan đến nhiều loại tiền tệ.

Xem tài khoản thu tiền, các nhà nghiên cứu nhận thấy nó thành công hơn so với bot trước đó và đang nắm giữ 300 ETH, tương đương $180K.

Kết quả từ việc theo dõi bot

Nghiên cứu làm sáng tỏ các phương pháp của một số bot khá phức tạp trong việc lùng sục blockchain để tạo ra giao dịch có lợi nhuận, mặc dù các bot khác có thể có thông số hành vi khác.

Họ viết:

“Các yếu tố như mức tăng tiềm năng, mô hình giao tiếp và độ phức tạp tối thiểu (ví dụ: giới hạn gas) có thể ảnh hưởng đến cách chúng vận hành”.

Manuskin nói rằng vẫn còn rất nhiều nghiên cứu cần được thực hiện, nhưng anh có một số bài học kinh nghiệm cấp cao.

“Những kẻ chạy trước hoành hành hơn chúng ta nghĩ. Bất kỳ lệnh hợp đồng nào có thể mang lại lợi nhuận đều rất có khả năng rơi vào tầm ngắm của chúng”.

Ngoài ra, việc tránh bị những kẻ chạy trước phát hiện là có thể nhưng không dễ dàng.

“Mỗi loại hoạt động khác nhau và có thể được kích hoạt bởi các yếu tố khác nhau của giao dịch. Bản thân các bot đang cạnh tranh với nhau xem ai sẽ nhận được phần thưởng. Đây chỉ là phần nổi của tảng băng chìm trong bức tranh đầy đủ về các bot ngoài kia, điều này khiến nó càng thú vị hơn”.

Thuỳ Trang

Theo Coindesk

Theo dõi trang Twitter | Theo dõi kênh Telegram | Theo dõi trang Facebook