Back to Blog

Loopring (LRC) Protokollvorfall

Code Auditing
December 3, 2020
4 min read

Hash(ti)(mod2248)=[b0,b1,,b247]T,wobei bi{0,1}\text{Hash}(t_i) \pmod{2^{248}} = [b_0, b_1, \dots, b_{247}]^T, wobei\ b_i \in \{0, 1\}

Im November 2020 ermöglichte eine kritische Schwachstelle im LRC Protocol Fee Vault von Loopring Angreifern, Zugriffskontrollschwächen auszunutzen und Tokenpreise durch Flash-Loan-Angriffe zu manipulieren. Dieser Vorfall unterstreicht die Bedeutung robuster Zugriffskontrollen und kontinuierlicher DeFi-Sicherheitsüberwachung, um kostspielige Exploits zu verhindern.

Einführung in den Vorfall des Loopring (LRC) Protokolls

Ende 2020 erlebten mehrere Ethereum-basierte DeFi-Plattformen, darunter Pickle Finance und 88mph, Sicherheitsvorfälle. Um solche Schwachstellen zu erkennen, entwickelte BlockSec das ThunderForecast-System, das verdächtige Transaktionen mit ungewöhnlich großen Handelsratenunterschieden und konsistenten Ether-Gewinnen desselben extern besessenen Kontos (EOA) identifizierte.

Mithilfe unseres EthScope-Systems analysierten wir diese Transaktionen und entdeckten einen Exploit, der auf eine Schwachstelle im Vault-Protokoll von Loopring abzielte, insbesondere auf den LRC Protocol Fee Vault (LRCPFV). Dieser Blogbeitrag beschreibt den Angriff, seine Auswirkungen und die Lehren für die DeFi-Sicherheits-Community.


Überblick über den LRC Protocol Fee Vault

Loopring ist ein Open-Source-dezentrales Exchange (DEX)-Protokoll auf Ethereum. Sein nativer Token, LRC (ERC-20), wird innerhalb des Ökosystems verwendet. Der Vault-Protokoll von Loopring, bekannt als LRC Protocol Fee Vault (LRCPFV), speichert Protokollgebühren und ermöglicht den Umtausch von Gebühren in LRC-Token.

Die anfällige Funktion in LRCPFV ist sellTokenForLRC, die den Umtausch von Tokens gegen LRC ohne ordnungsgemäße Zugriffskontrolle ermöglicht und es jedem erlaubt, sie aufzurufen.

function sellTokenForLRC(
    address token,
    uint amount
)
    external
    nonReentrant
{
    require(amount > 0, "ZERO_AMOUNT");
    require(token != lrcAddress, "PROHIBITED");

    address recipient = tokenSellerAddress == address(0) ? owner : tokenSellerAddress;

    if (token == address(0)) {
        recipient.sendETHAndVerify(amount, gasleft());
    } else {
        token.safeTransferAndVerify(recipient, amount);
    }

    require(
        tokenSellerAddress == address(0) ||
        ITokenSeller(tokenSellerAddress).sellToken(token, lrcAddress),
        "SELL_FAILURE"
    );

    emit TokenSold(token, amount);
}

Da dieser Funktion die Zugriffskontrolle fehlt, konnten Angreifer sie wiederholt aufrufen, um Tokenpreise zu manipulieren und von Arbitragemöglichkeiten zu profitieren.


Details des Angriffs

Wir analysierten eine repräsentative Angriffstransaktion: 0x00b2c.... Der Angriff umfasste sechs wichtige Schritte:

  1. Flash Loan: 3.773,88 ETH von einem Flash-Loan-Anbieter (0xEB7e...) ausgeliehen.
  2. Erster Swap: 3.773,88 ETH in 5.014,68 LRC auf Uniswap V1-LRC zu einem Kurs von 1 ETH = 1,32878 LRC umgetauscht.
  3. Fee Vault Swap: 0,231 ETH Gebühr, die im LRCPFV gespeichert sind, in 0,000219 LRC umgetauscht, indem die anfällige Funktion sellTokenForLRC aufgerufen wurde. Dieser nicht autorisierte Aufruf manipulierte den LRC-Preis auf Uniswap und erhöhte dessen Wert gegenüber ETH drastisch (1 ETH = 0,00094 LRC).
  4. Profitabler Swap: 5.014,68 LRC auf Uniswap V1-LRC zurück in 3.774,09 ETH getauscht und aufgrund des manipulierten Preises zusätzliche 0,215 ETH gewonnen.
  5. Darlehensrückzahlung: Die 3.773,88 ETH Flash Loan zurückgezahlt.
  6. Gewinnübertragung: Die 0,215 ETH Gewinn an die EOA des Angreifers gesendet.

Dieser Exploit nutzte einen Flash-Loan-Angriff in Kombination mit Preismanipulation und mangelnder Zugriffskontrolle im Vault-Vertrag aus.


Auswirkungen und Ausmaß des Angriffs

Die analysierte Transaktion fand am 13. Oktober 2020 statt. Laut CoinGecko-Daten lag der LRC-Preis zu dieser Zeit bei etwa 0,0005175 ETH.

Unsere Untersuchung ergab:

  • Bösartige Verträge: 3 vom Angreifer bereitgestellt (0xa896..., 0x414a..., 0xd91d...).
  • Angriffsvolumen: 90 Transaktionen, die seit Block 9.644.449, als LRCPFV bereitgestellt wurde, von der EOA des Angreifers (0x81e8...) gestartet wurden.
  • Maximaler Gewinn: Eine Transaktion (0x33eab...) brachte einen Gewinn von 9,89 ETH.
  • Gesamtgewinn: Ungefähr 80,97 ETH (~48.849 USD per 1. Oktober 2020).

Die Grundursache war die fehlende Zugriffskontrolle in der Funktion sellTokenForLRC, die eine wiederholte Ausnutzung ermöglichte.


Beginnen Sie mit Phalcon Security

Erkennen Sie jede Bedrohung, alarmieren Sie, was wichtig ist, und blockieren Sie Angriffe.

Jetzt kostenlos testen

Gelernte Lektionen und das Ende

Mit dem Wachstum des Ethereum DeFi-Ökosystems werden Sicherheitsprobleme wie Schwachstellen bei der Zugriffskontrolle immer kritischer. Während aufsehenerregende Angriffe oft Aufmerksamkeit erregen, können weniger auffällige Schwachstellen erhebliche finanzielle Verluste verursachen, wie dieser Vorfall gezeigt hat.

Loopring verlor durch diesen Exploit etwa 80,97 ETH, was die Notwendigkeit rigoroser Smart-Contract-Audits und kontinuierlicher Sicherheitsüberwachung unterstreicht.

Für DeFi-Protokolle sind die Implementierung strenger Zugriffskontrollen, die Nutzung von Tools wie dem Smart Contract Audit und Phalcon Security von BlockSec sowie proaktives Risikomanagement unerlässlich, um digitale Assets zu schützen.


MetaSleuth Investigation erkunden

Spuren verfolgen und Beweise für Ermittlungen sammeln

Jetzt kostenlos testen

Zeitplan des Vorfalls

  • 2020/11/30: Verdächtige Transaktionen von ThunderForecast erkannt.
  • 2020/12/01: Detaillierte Analyse mit EthScope abgeschlossen.
  • 2020/12/02: Schwachstelle dem Loopring-Team gemeldet.
  • 2020/12/03: Schwachstelle bestätigt; Korrektur implementiert.
  • 2020/12/03: Öffentliche Offenlegung der Vorfallsdetails.
  • 2021/01/03: CVE-2020-35962 der Schwachstelle zugewiesen.

Referenzen und weiterführende Lektüre

Sign up for the latest updates
The Decentralization Dilemma: Cascading Risk and Emergency Power in the KelpDAO Crisis
Security Insights

The Decentralization Dilemma: Cascading Risk and Emergency Power in the KelpDAO Crisis

This BlockSec deep-dive analyzes the KelpDAO $290M rsETH cross-chain bridge exploit (April 18, 2026), attributed to the Lazarus Group, tracing a causal chain across three layers: how a single-point DVN dependency enabled the attack, how DeFi composability cascaded the damage through Aave V3 lending markets to freeze WETH liquidity exceeding $6.7B across Ethereum, Arbitrum, Base, Mantle, and Linea, and how the crisis forced decentralized governance to exercise centralized emergency powers. The article examines three parameters that shaped the cascade's severity (LTV, pool depth, and cross-chain deployment count) and provides an exclusive technical breakdown of Arbitrum Security Council's forced state transition, an atomic contract upgrade that moved 30,766 ETH without the holder's signature.

Weekly Web3 Security Incident Roundup | Apr 13 – Apr 19, 2026
Security Insights

Weekly Web3 Security Incident Roundup | Apr 13 – Apr 19, 2026

This BlockSec weekly security report covers four attack incidents detected between April 13 and April 19, 2026, across multiple chains such as Ethereum, Unichain, Arbitrum, and NEAR, with total estimated losses of approximately $310M. The highlighted incident is the $290M KelpDAO rsETH bridge exploit, where an attacker poisoned the RPC infrastructure of the sole LayerZero DVN to fabricate a cross-chain message, triggering a cascading WETH freeze across five chains and an Arbitrum Security Council forced state transition that raises questions about the actual trust boundaries of decentralized systems. Other incidents include a $242K MMR proof forgery on Hyperbridge, a $1.5M signed integer abuse on Dango, and an $18.4M circular swap path exploit on Rhea Finance's Burrowland protocol.

Weekly Web3 Security Incident Roundup | Apr 6 – Apr 12, 2026
Security Insights

Weekly Web3 Security Incident Roundup | Apr 6 – Apr 12, 2026

This BlockSec weekly security report covers four DeFi attack incidents detected between April 6 and April 12, 2026, across Linea, BNB Chain, Arbitrum, Optimism, Avalanche, and Base, with total estimated losses of approximately $928.6K. Notable incidents include a $517K approval-related exploit where a user mistakenly approved a permissionless SquidMulticall contract enabling arbitrary external calls, a $193K business logic flaw in the HB token's reward-settlement logic that allowed direct AMM reserve manipulation, a $165.6K exploit in Denaria's perpetual DEX caused by a rounding asymmetry compounded with an unsafe cast, and a $53K access control issue in XBITVault caused by an initialization-dependent check that failed open. 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