Back to Blog

Die wahre Ursache des Vee Finance Sicherheitsvorfalls

Code Auditing
September 22, 2021

VEE finance hat einen Bericht über den jüngsten Sicherheitsvorfall veröffentlicht. In dem Bericht geben sie an, dass die Hauptursache darin liegt, dass „die Manipulation des Preises der Vee Finance Orakelmaschine und die Ermittlung des Preises der Orakelmaschine nicht mit Dezimalstellen verarbeitet wurden, was dazu führte, dass die erwartete Slippage-Prüfung vor dem Tausch nicht funktionierte.“

„Die Hauptursache des Unfalls war, dass im Prozess der Erstellung einer Order für gehebelten Handel nur der Preis des Pangolin-Pools vom Orakel als Quelle des Preis-Feeds verwendet wurde und der Pool-Preis um mehr als 3 % schwankte. Das Orakel aktualisierte den Preis, was den Angreifer dazu veranlasste, den Preis des Pangolin-Pools zu manipulieren. Die Manipulation des Preises der Vee Finance Orakelmaschine und die Ermittlung des Preises der Orakelmaschine wurden nicht mit Dezimalstellen verarbeitet, was dazu führte, dass die erwartete Slippage-Prüfung vor dem Tausch nicht funktionierte.“ – zitiert aus dem von VEE finance veröffentlichten Bericht.

Nach unserer sorgfältigen Untersuchung stellen wir jedoch fest, dass dies möglicherweise NICHT der Fall ist. Der eigentliche Grund ist, dass der Angreifer ein FAKE ctokenB erstellt und an den Vertrag übergibt. Da das ctokenB vom Angreifer kontrolliert wird, kann es einen beliebigen zugrunde liegenden Token zurückgeben, der zur Berechnung des Tokenpreises verwendet wird. Dies ist die eigentliche Ursache des Angriffs.

Der gesamte Prozess

Es gibt eine externe Funktion namens createOrderERC20ToERC20, die von beliebigen Benutzern aufgerufen werden kann, um einen Token-Tausch zu erstellen, indem das ctoken verwendet wird, das durch Hinterlegung von Sicherheiten im Vertrag erhalten wird. Das ctoken hat einen zugrunde liegenden Token, der den tatsächlichen Token repräsentiert.

In einem normalen Fall muss die Dapp beim Aufruf von createOrderERC20ToERC20 zum Handel eines Token-Paares mit Hebelwirkung sicherstellen, dass der Handel keinen Verlust verursachen kann (andernfalls verliert die Dapp Geld). Dies wird durch den Aufruf der Funktion getAmountOutMin erzwungen.

Angenommen, wir hinterlegen 0,95 ETH in der Dapp und erhalten ein ctoken, das 0,5 ETH wert ist (Überbesicherung). Dann können wir den 3-fachen Hebel nutzen, um die Dapp zu bitten, im Namen des Benutzers 1,5 ETH gegen einen anderen Token (sagen wir TokenX) zu tauschen. In diesem Fall muss die Dapp, um den Verlust zu verhindern, sicherstellen, dass der Wert des gehandelten TokenX nicht unter 0,95 * 1,5 ETH liegen kann (andernfalls besteht für die Dapp das Risiko, Geld zu verlieren). Die Dapp nutzt ein externes Preisorakel, um den Wert von ETH und TokenX zu berechnen.

Die Funktion createOrderERC20ToERC20 validiert jedoch das übergebene ctokenB nicht. Daher konnte der Angreifer seinen eigenen Vertrag als ctokenB implementieren und ihn der Funktion createOrderERC20ToERC20 übergeben. Als Ergebnis kann dieses gefälschte ctokenB den zugrunde liegenden Token als LINK (0x5947bb275c521040051d82396192181b413227a3) zurückgeben, wenn es in createOrderERC20ToERC20 und getAmountOutMin aufgerufen wird, aber den zugrunde liegenden Token als BTC zurückgeben, wenn es in IPriceOracle(oracle).getUnderlyingPrice(createParams.ctokenB) aufgerufen wird. Dadurch kann die Prüfung isRightPrice umgangen werden – da der zur Preisberechnung verwendete Token BTC (anstelle von LINK) ist. Dies kann durch den Rückgabewert von priceB bestätigt werden – 0x15e1549d1216fe9fc032e7c00000 (443783124870000000000000000000000). Dies ist der Preis von BTC.

Schlussfolgerung

Zusammenfassend lässt sich sagen, dass der Angreifer die fehlende Prüfung des ctokenB ausgenutzt hat. Da das ctokenB keine vertrauenswürdige Quelle ist, kann der zugrunde liegende Token, der von ctokenB zurückgegeben wird, nicht vertraut werden. Das Preisorakel wurde bei diesem Angriff jedoch NICHT kompromittiert.

Lektionen für die Zukunft

Ein DeFi-Projekt sicher zu machen, ist keine leichte Aufgabe. Neben der Code-Prüfung sind wir der Meinung, dass die Community einen proaktiven Ansatz verfolgen sollte, um den Projektstatus zu überwachen und den Angriff zu blockieren, bevor er überhaupt stattfindet.

Über BlockSec

BlockSec ist ein wegweisendes Unternehmen für Blockchain-Sicherheit, das 2021 von einer Gruppe weltweit anerkannter Sicherheitsexperten gegründet wurde. Das Unternehmen engagiert sich für die Verbesserung der Sicherheit und Benutzerfreundlichkeit der aufstrebenden Web3-Welt, um deren Massenadoption zu erleichtern. Zu diesem Zweck bietet BlockSec Dienstleistungen für die Prüfung von Smart Contracts und EVM-Chains an, die Phalcon-Plattform für die sichere Entwicklung und proaktive Abwehr von Bedrohungen, die MetaSleuth-Plattform für die Nachverfolgung und Untersuchung von Geldern sowie die MetaSuites-Erweiterung für Web3-Entwickler, die effizient in der Krypto-Welt surfen.

Bis heute hat das Unternehmen über 300 angesehene Kunden wie MetaMask, Uniswap Foundation, Compound, Forta und PancakeSwap betreut und in zwei Finanzierungsrunden von namhaften Investoren wie Matrix Partners, Vitalbridge Capital und Fenbushi Capital zweistellige Millionenbeträge erhalten.

Offizielle Website: https://blocksec.com/

Offizieller Twitter-Account: https://twitter.com/BlockSecTeam

Sign up for the latest updates
Tracing $1.6B in TRON USDT: Inside the VerilyHK Ponzi Infrastructure
Case Studies

Tracing $1.6B in TRON USDT: Inside the VerilyHK Ponzi Infrastructure

An on-chain investigation into VerilyHK, a fraudulent platform that moved $1.6B in TRON USDT through a multi-layered fund-routing infrastructure of rotating wallets, paired payout channels, and exchange exit funnels, with traced connections to the FinCEN-sanctioned Huione Group.

Drift Protocol Incident: Multisig Governance Compromise via Durable Nonce Exploitation
Security Insights

Drift Protocol Incident: Multisig Governance Compromise via Durable Nonce Exploitation

On April 1, 2026 (UTC), Drift Protocol on Solana suffered a $285.3M loss after an attacker exploited Solana's durable nonce mechanism to delay the execution of phished multisig approvals, ultimately transferring administrative control of the protocol's 2-of-5 Squads governance with zero timelock. With full admin privileges, the attacker created a malicious collateral market (CVT), inflated its oracle price, relaxed withdrawal protections, and drained USDC, JLP, SOL, cbBTC, and other assets through 31 rapid withdrawals in approximately 12 minutes. This incident highlights how durable nonce-based delayed execution can decouple signer intent from on-chain execution, bypassing the temporal assumptions that multisig security implicitly relies on.

Weekly Web3 Security Incident Roundup | Mar 23 – Mar 29, 2026
Security Insights

Weekly Web3 Security Incident Roundup | Mar 23 – Mar 29, 2026

This BlockSec weekly security report covers eight DeFi attack incidents detected between March 23 and March 29, 2026, across Ethereum and BNB Chain, with total estimated losses of approximately $1.53M. Incidents include a $679K flawed burn mechanism exploit on the BCE token, a $512K spot-price manipulation attack on Cyrus Finance's PancakeSwap V3 liquidity withdrawal, a $133.5K flash-loan-driven referral reward manipulation on a TUR staking contract, and multiple integer overflow, reentrancy, and accounting error vulnerabilities in DeFi protocols. The report provides detailed vulnerability analysis and attack transaction breakdowns for each incident.

Best Security Auditor for Web3

Validate design, code, and business logic before launch. Aligned with the highest industry security standards.

BlockSec Audit