Channel logo
MarginATM
Save
Copy link

Flash Loans là gì? Tấn công Flash Loans ảnh hưởng như thế nào?

Thời gian qua các vụ hack DeFi cũng tăng nhanh chóng. Trong đó, Flash Loans Attack là một cái tên đáng chú ý. Vậy Flash Loans là gì? Tìm hiểu ngay tại đây.
Avatar
Sammie
Published Feb 02 2022
Updated Jul 20 2022
18 min read
thumbnail

Tài chính phi tập trung đang dần trở nên phổ biến hơn và với sự ra đời của phương thức cho vay Flash Loans, nhu cầu sử dụng DeFi của người dùng cũng ngày càng tăng. Điều đó khiến nó trở thành miếng mồi ngon cho những kẻ xấu. Nhiều sự cố đã xảy ra trong thời gian qua và các vụ hack DeFi cũng tăng nhanh chóng. Trong số đó, Flash Loans Attack là một cái tên đáng chú ý. 

Bài viết hôm nay sẽ giúp bạn hiểu thêm về:

  • Flash Loans là gì?
  • Cách thức hoạt động và đặc điểm của Flash Loans.
  • Các ứng dụng của Flash Loans.
  • Flash Loans Attack và ảnh hưởng của nó đến không gian DeFi.
  • Các cuộc tấn công Flash Loans nổi bật.
  • Cách phòng tránh Flash Loans Attack.

Flash Loans là gì?

Flash Loans là một hình thức cho vay phi tập trung được thực hiện bởi các smart contract do Aave - một trong những giao thức cho vay hàng đầu trong DeFi, tiên phong.

Theo Aave, Flash Loans là "tùy chọn cho vay phi tập trung đầu tiên trong DeFi", được thiết kế để cho phép người dùng vay ngay lập tứcdễ dàng.

Flash Loans là hình thức cho vay phi tập trung được thực hiện bởi các smart contract

Trong thị trường tài chính truyền thống, có hai loại hình cho vay bao gồm: cho vay có bảo đảm, và cho vay không có bảo đảm, tức là không cần tài sản thế chấp. 

Cho vay không bảo đảm có nghĩa là người vay có thể vay một khoản tiền mà không cần phải thế chấp tài sản của mình. Một ví dụ điển hình về khoản vay không có thế chấp là khi bạn vay từ ngân hàng. Một số ngân hàng sẵn sàng cho bạn vay số tiền đó với điều kiện bạn không có tên trong danh sách nợ xấu ở các ngân hàng khác.

Tuy nhiên, nếu số tiền bạn định vay quá lớn, thì việc cho vay tín chấp sẽ là rất rủi ro, ngay cả khi bạn chưa từng có nợ xấu. Vì vậy, thông thường các ngân hàng sẽ yêu cầu bạn cung cấp tài sản thế chấp như nhà, xe, sổ đỏ,... Nó được gọi là cho vay có bảo đảm.

Tương tự như tài chính truyền thống, Flash Loans về cơ bản là các khoản vay không có bảo đảm trong không gian DeFi: không yêu cầu tài sản thế chấp, không cần kiểm tra tín dụng cũng như không giới hạn số tiền bạn có thể vay, miễn là bạn có thể trả lại khoản vay trong cùng một giao dịch. 

Flash Loans hoạt động như thế nào?

Phần quan trọng nhất của việc thực hiện Flash Loans là tìm một nhà cung cấp dịch vụ. Các dự án như Aave hay dYdX đã phát triển các smart contract cho phép người dùng DeFi mượn các tài sản tiền điện tử khác nhau từ một pool được chỉ định với điều kiện chúng phải được hoàn trả trong cùng một giao dịch.

Thường sẽ có một khoản phí cố định liên quan đến việc sử dụng các khoản vay Flash Loans. 
Ví dụ: Aave yêu cầu người vay trả lại số tiền ban đầu cùng một khoản phí tương đương với 0,09% số tiền đã vay. 70% phí sẽ được chia cho những người cho vay (Depositors). 30% còn lại tiếp tục được chia một phần cho Intergrators - những người hỗ trợ sử dụng Flash Loans API của Aave và một phần được chuyển đổi thành AAVE token rồi mang đi đốt. 

Cách Flash Loans hoạt động

Bên cạnh đó, Flash Loans không bị kiểm soát bởi bất kỳ bên thứ ba hoặc trung gian nào. Nó thúc đẩy khả năng tiếp cận tài chính phi tập trung ở một mức độ lớn hơn vì tất cả mọi người đều có khả năng sử dụng nó. Ngoài ra, khi vay bằng Flash Loans, bạn sẽ không cần phải tiết lộ bất kỳ thông tin cá nhân nào của mình. 

Đặc điểm của Flash Loans

  • Smart Contract: Flash Loans sử dụng smart contract để mã hóa các quy tắc cần thiết hỗ trợ các giao dịch. Trong trường hợp này, quy tắc là người đi vay sẽ vay và phải trả lại khoản vay trước khi giao dịch kết thúc, nếu không, smart contract sẽ đảo ngược giao dịch đó. Điều này tức là nó giống như khoản vay chưa bao giờ được xảy ra ngay từ lúc ban đầu.
  • Cho vay không thế chấp: Thông thường người cho vay yêu cầu người đi vay thế chấp tài sản của mình để đảm bảo rằng nếu người đi vay không thể trả lại khoản vay, người cho vay vẫn có thể lấy lại tiền của họ. Nhưng với hình thức Flash Loans thì không cần thế chấp tài sản. Điều này không có nghĩa là người cho vay không thể lấy lại số tiền của họ. Các giao dịch Flash Loans đảm bảo an toàn cho người cho vay thông qua các quy tắc được mã hóa bởi smart contract.
  • Tức thì: Thông thường, để vay được một khoản tiền là cả một quá trình dài. Hai bên cần phải trao đổi với nhau các điều khoản trong thỏa thuận cho vay, chuyển tài sản qua lại và người vay phải trả lại trong một thời gian từ vài ngày đến vài tháng. Tuy nhiên, cho vay theo hình thức Flash Loans là tức thì. Các khoản vay nhanh sử dụng các smart contract để đặt ra các điều khoản và thực hiện hoạt động vay và cho vay chỉ trong một giao dịch.

Các trường hợp sử dụng của Flash Loans

Giao dịch chênh lệch giá (Arbitrage Trading)

Giao dịch chênh lệch giá là trường hợp sử dụng phổ biến nhất của Flash Loans vì nó cho phép các trader kiếm tiền từ chênh lệch giá giữa các sàn giao dịch khác nhau. 

Ví dụ: LINK hiện có giá $30 trên sàn giao dịch A và $35 trên sàn giao dịch B. Người dùng có thể vay một khoản thông qua Flash Loans và mua 100 LINK với giá $3,000 tại sàn giao dịch A, sau đó bán tất cả chúng với giá $3,500 tại sàn giao dịch B và thanh toán trả lại khoản vay $3,000. Lúc này, người dùng sẽ có thể thu được một khoản lợi nhuận là $500 chưa trừ phí.

Hoán đổi tài sản thế chấp (Collateral Swaps)

Người dùng DeFi cũng có thể tận dụng việc hoán đổi tài sản thế chấp để vay tiền thông qua các ứng dụng cho vay.

Ví dụ: Nếu bạn đã vay Dai từ Compound bằng cách thế chấp ETH, nhưng sau đó bạn muốn đổi ETH sang UNI thì bạn cần:

  • Vay Flash Loans một số lượng DAI đúng bằng số DAI mà bạn đã vay trong Compound.
  • Trả lại DAI cho Compound và nhận lại ETH.
  • Swap ETH sang UNI.
  • Thế chấp UNI vào Compound để vay lại DAI.
  • Dùng DAI trả Flash Loans và phí.

Vậy là bằng Flash Loans, bạn đã swap thành công tài sản thế chấp của mình từ ETH sang UNI.

Tiết kiệm phí giao dịch

Flash Loans hỗ trợ tất cả các giao dịch phức tạp, thường phải trải qua nhiều bước, chỉ trong một bước duy nhất. Do đó, bạn có thể thấy phí giao dịch được tiết kiệm nhiều hơn với các giao dịch Flash Loans. Hơn nữa, các trader cũng có thể tiết kiệm phí giao dịch bằng cách tận dụng các khoản vay Flash Loans để mua và bán các token.

Flash Loans có an toàn không? 

Có thể thấy, sức mạnh của Flash Loans phụ thuộc nhiều vào smart contract. Đây cũng là điểm yếu lớn nhất đối với các giao dịch cho vay này. Các smart contract dễ bị tấn công bởi Flash Loans Attack - một trong những cuộc tấn công bảo mật phổ biến và nguy hiểm nhất trong không gian DeFi hiện nay.

Flash Loans Attack có thể hiểu là những cuộc tấn công trong đó hacker lợi dụng hình thức cho vay Flash Loans và những lỗ hổng bảo mật trong giao thức để trục lợi cá nhân.

Phổ biến nhất là kẻ tấn công thường vay rất nhiều tiền thông qua Flash Loans. Sau đó, chúng thao túng giá của một tài sản tiền điện tử trên một sàn giao dịch và nhanh chóng bán lại nó trên một sàn giao dịch khác.

Quá trình này diễn ra rất nhanh và kẻ tấn công lặp lại nó nhiều lần trước khi kết thúc và biến mất không để lại dấu vết cùng khoản lợi nhuận đáng kể.

Ảnh hưởng của Flash Loans Attack đến không gian DeFi

Mặc dù Flash Loans có những ưu điểm riêng nhưng lỗ hổng bảo mật của nó dễ dàng bị khai thác đến mức các vụ Flash Loans Attack liên tiếp xảy ra khiến các ứng dụng DeFi thiệt hại những khoản tiền lớn lên đến hàng triệu đô la.

Theo số liệu nghiên cứu, chỉ tính riêng năm 2021, tổng số tiền thiệt hại gây ra bởi Flash Loans Attack đã vượt mức $69 triệu. Trong đó, thiệt hại cao nhất thuộc về dự án Harvest Finance với số tiền bị hack lên đến $33,8 triệu.

Trên thực tế, trước đây khi rất ít người biết về Flash Loans, cách thức tấn công của các hacker chủ yếu nhằm vào việc thao túng giá của các dự án chỉ sử dụng nguồn cấp dữ liệu giá từ 1 sàn DEX nào đó.

Nhưng cùng với sự tăng lên về số lượng người dùng Flash Loans, những cuộc tấn công cũng ngày càng nhiều và phức tạp hơn, kéo theo đó số tiền bị thiệt hại cũng gia tăng chóng mặt, thường là trên $10 triệu.

Có thể thấy, Flash Loans Attack đang là yếu tố khiến cho các dự án DeFi đã và sắp ra mắt phải suy nghĩ đến việc tăng cường sử dụng các giải pháp bảo mật để chống lại các cuộc tấn công Flash Loans Attack từ các hacker.

Nhờ đó, các dự án DeFi sẽ trở nên hoàn thiện hơn rất nhiều và an toàn, bảo mật hơn cho người sử dụng. Khi đó, các sản phẩm DeFi mới giành được sự tin tưởng và tồn tại lâu dài trong thế giới tiền điện tử nhiều biến động.

Các cuộc tấn công Flash Loans nổi bật

Các cuộc tấn công Flash Loans nổi bật

bZx

Một trong những cuộc tấn công Flash Loans Attack khét tiếng nhất từng xảy ra trong không gian DeFi là trên giao thức bZx, nơi những kẻ tấn công đã mượn tiền từ nền tảng và nhanh chóng hoán đổi chúng bằng stablecoin (sUSD). 

stablecoin được điều chỉnh bởi một smart contract, kẻ tấn công đã thao túng giá của nó bằng cách đặt một lệnh mua lớn sUSD, điều này đã đẩy giá của stablecoin lên $2, tăng gấp đôi giá trị thực của nó. Sau đó, hacker đã lợi dụng lỗ hổng định giá dữ liệu của bZx, đưa sUSD làm tài sản thế chấp cho một lượng lớn ETH trên nền tảng. 

Sau khi hoàn trả các khoản vay Flash Loans của mình, hacker đã bỏ trốn cùng với khoản lợi nhuận trị giá 2,378 ETH.

Cream Finance

Cream Finance đã bị tấn công nhiều lần vào năm 2021. Một trong những vụ tấn công lớn nhất liên quan đến $130 triệu. Như với phần lớn các vụ hack giao thức DeFi khác, những kẻ tấn công đã sử dụng nhiều khoản vay Flash Loans và thao túng giá của oracles. Cho đến nay thủ phạm vẫn chưa bị bắt giữ.

May mắn thay, với sự giúp đỡ của Yearn Finance, Cream đã nhanh chóng vá lỗ hổng bảo mật này.

Alpha Homora

Vào tháng 2/2021, một vụ tấn công vào giao thức Alpha Homora đã dẫn đến thiệt hại $37 triệu. Kẻ tấn công cũng sử dụng Iron Bank của Cream thông qua một loạt các khoản vay Flash Loans. Iron Bank là một nhánh cho vay của giao thức Alpha Homora.

Các tin tặc đã lặp lại quá trình này nhiều lần cho đến khi chúng tích lũy được CreamY USD (hoặc cyUSD), sau đó sử dụng các token này để vay các loại tiền điện tử khác. Vụ hack này khá phức tạp và bao gồm nhiều bước. Về cơ bản, kẻ tấn công đã thao túng rất nhiều sUSD pool của HomoraBank v2 để thực hiện một loạt các giao dịch Flash Loans.

dYdX

Vụ tấn công Flash Loans Attack đầu tiên vào năm 2020 liên quan đến ứng dụng cho vay phi tập trung dYdX. Kẻ tấn công đã sử dụng nền tảng này để có được khoản vay Flash Loans, sau đó chia nhỏ tiền và sử dụng chúng trên hai nền tảng giao dịch - Fulcrum và Compound.

Phần đầu tiên được sử dụng trên Fulcrum để đổi từ ETH sang WBTC. Trong quá trình này, Kyber Network đã nhận được đơn đặt hàng thông qua Uniswap’s DEX. Thanh khoản thấp của Uniswap đã khiến giá của wBTC cao ngất ngưởng.

Đồng thời, kẻ tấn công đã sử dụng phần thứ hai của khoản vay trên nền tảng Compound để nhận một khoản vay nhanh WBTC. Khi giá tăng vọt trên Uniswap, kẻ tấn công đã nhanh chóng thực hiện trao đổi - và thu về một khoản lợi nhuận bất hợp pháp đáng kể.

PancakeBunny

Vào tháng 5/2021, một hacker đã đánh cắp $45 triệu từ nền tảng PancakeBunny. Trong cuộc tấn công này, tin tặc đã thao túng giá của các cặp giao dịch BUNNY/BNB và USDT/BNB.

Đầu tiên, chúng đã vay hơn $700 triệu BNB từ 7 pool của PancakeBunny, cũng như gần $3 triệu USDT từ một nguồn khác. Sau đó hacker thao túng giá BNB bằng cách sử dụng một quy trình phức tạp gồm sáu giai đoạn, khai thác vào lỗ hổng bảo mật trong pool thanh khoản BNB-USDT của PancakeBunny. Khoản tiền sau khi khai thác được này đã được bán với giá khoảng 2,4 triệu BNB. 

Sau khi hoàn trả các khoản vay Flash Loans ban đầu, hacker còn lại 114.631 BNB, tương đương với khoảng $45 triệu.

Toàn bộ cuộc tấn công này đã khiến giá của PancakeBunny giảm sốc từ $146 xuống còn $6,17.

Cuộc tấn công này đã khiến giá của PancakeBunny giảm mạnh

Làm sao để tránh Flash Loans Attack?

Sử dụng các Oracles phi tập trung cho dữ liệu giá

Vì hầu hết các cuộc tấn công Flash Loans Attack phụ thuộc vào việc thao túng giá, nên các giao thức DeFi có thể cân nhắc việc sử dụng các giải pháp định giá phi tập trung thay vì dựa vào một DEX đơn lẻ cho nguồn cấp dữ liệu giá của mình. Ví dụ điển hình là Chainlink và Band Protocol. Các nền tảng này giữ cho tất cả các giao thức được an toàn bằng cách đưa ra mức giá chính xác của các loại tiền điện tử khác nhau.

Ví dụ: Các cuộc tấn công DeFi như cuộc tấn công xảy ra với dYdX sẽ không thể thực hiện được vì các giao thức sẽ không nhận được nguồn cấp dữ liệu giá của chúng từ một DEX duy nhất.

Một trong những nền tảng DeFi đầu tiên sử dụng phương pháp này là Alpha Homora với Alpha Oracle Aggregator để ngăn lịch sử lặp lại. Chúng ta có thể sẽ thấy nhiều hệ thống như thế này hơn nữa khi quy mô của thị trường DeFi tăng lên.

Triển khai nền tảng bảo mật DeFi

Hệ sinh thái DeFi sử dụng các công nghệ tiên tiến đang định hình lại triển vọng của hệ thống tài chính quốc tế. Điều này đã tạo ra gánh nặng lớn cho toàn bộ hệ thống, đặc biệt là về vấn đề bảo mật.

Tin tốt là đã có những nền tảng cụ thể giải quyết các thách thức bảo mật hiện tại. OpenZeppelin là một ví dụ hoàn hảo. Nền tảng này gần đây đã khởi chạy một chương trình có tên OpenZeppelin Defender cho phép các nhà quản lý dự án phát hiện các hoạt động khai thác smart contract và các hoạt động bất thường khác, giúp họ phản ứng nhanh chóng và vô hiệu hóa các cuộc tấn công. Vai trò của nó trong toàn bộ hệ sinh thái là bảo vệ các smart contract và nền tảng DeFi nói chung.

Ngoài khả năng kiểm tra smart contract, các giải pháp như Defender Sentinels cung cấp khả năng bảo vệ liên tục khỏi các cuộc tấn công Flash Loans Attack. Các nhà phát triển có thể sử dụng công cụ này để tự động hóa các chiến lược phòng thủ của họ, nhanh chóng tạm dừng toàn bộ hệ thống và triển khai các bản sửa lỗi.

Đây là điều rất cần thiết để giảm thiểu thiệt hại có thể xảy ra bởi Flash Loans Attack.

Các giao dịch quan trọng phải được thực hiện qua hai block

Dragonfly Research đã đề xuất giải pháp tránh Flash Loans Attack là buộc các Flash Loans phải đi qua hai block thay vì một block như thông thường. Tuy nhiên, đây không phải là một giải pháp hoàn chỉnh vì nếu nó được thiết kế không chính xác, kẻ tấn công có thể chỉ đơn giản là tấn công cả hai block. Hơn nữa, điều này có thể ảnh hưởng đáng kể đến giao diện người dùng của các giao thức DeFi vì các giao dịch sẽ không còn đồng bộ nữa.

Tìm hiểu thêm Cách nhận biết & tránh dự án có dấu hiệu Rug Pull.

Kết luận

Flash Loans đóng vai trò quyết định trong việc hình thành tương lai của DeFi. Tuy nhiên để làm được điều đó, cốt lõi cần phải giải quyết là chấm dứt các cuộc tấn công Flash Loans Attack.

Bất chấp tất cả các giải pháp đã đề xuất, thực tế rằng công nghệ DeFi vẫn chưa thực sự được phát triển đầy đủ. Flash Loans nói riêng và DeFi nói chung vẫn luôn có các lỗ hổng mới bị tin tặc lợi dụng để trục lợi.

Cách duy nhất mà các nhà phát triển có thể làm để đối phó với Flash Loans Attack là tối đa hóa các giải pháp hiện có và phát triển thêm nhiều giải pháp bảo mật mới để hoàn thiện không gian DeFi.

RELEVANT SERIES