Back to Blog

Kurze Analyse der Profanity-Tool-Schwachstelle

Code Auditing
September 21, 2022
4 min read

Wintermute wurde mit einem Verlust von über 160 Millionen Dollar ausgenutzt. Die Grundursache ist, dass der private Schlüssel des Wintermute-Projekts aufgrund einer Schwachstelle im Profanity-Tool kompromittiert wurde, das von Wintermute zur Generierung des privaten Schlüssels und des Ethereum-Kontos verwendet wurde.

In diesem Blog beschreiben wir die Grundursache der Schwachstelle in Profanity und wie die Schwachstelle ausgenutzt werden kann.

Die Ethereum-Adresse

Die Ethereum-Adresse wird aus dem Keccak-256-Hash des öffentlichen Schlüssels generiert und als Hexadezimalzahl dargestellt. Der öffentliche Schlüssel wird mithilfe der elliptischen Kurvenmultiplikation aus dem privaten Schlüssel generiert, was umkehrbar ist. Wir können einen öffentlichen Schlüssel aus einem privaten Schlüssel erhalten. Ohne Brute-Force können wir jedoch keinen privaten Schlüssel erhalten, wenn wir einen öffentlichen Schlüssel haben. Beachten Sie, dass die Länge des privaten Schlüssels 256 Bit beträgt. Bei einem gegebenen öffentlichen Schlüssel benötigen Sie maximal 2^256 Berechnungen, um den entsprechenden privaten Schlüssel zu finden.

Kurz gesagt, die Beziehung zwischen dem privaten/öffentlichen Schlüssel und der Ethereum-Adresse wird in der folgenden Abbildung gezeigt.

Die Grundursache der Schwachstelle

Der Zweck von Profanity ist es, eine spezielle Ethereum-Adresse zu finden, z. B. die ersten fünf Ziffern der Adresse sind Null. Zu diesem Zweck wendet Profanity die folgende Methode an.

Die detaillierte Implementierung kann leicht abweichen.

Beachten Sie, dass die Länge von private_key 256 Bit beträgt (2^256 verschiedene Werte). Es gibt jedoch eine Schwachstelle bei der Generierung des privaten Schlüssels. Insbesondere ist der Seed (in Schritt 1) nur 32 Bit lang, und der Prozess vom Seed in Schritt 1 zum private_key in Schritt 2 ist deterministisch.

Welche Sicherheitsauswirkungen hat dies?

Wie man ausnutzt

Nehmen wir an, wir haben eine Ethereum-Adresse mit vielen wertvollen Vermögenswerten. Wenn wir ihren privaten Schlüssel erhalten können, können wir dieses Konto besitzen und alle Vermögenswerte transferieren. Wie bereits erläutert, müssen wir jedoch den gesamten 2^256-Raum mit Brute-Force durchsuchen, um den privaten Schlüssel zu finden, was fast unmöglich ist.

Aber was ist, wenn die Ethereum-Adresse mit dem Profanity-Tool generiert wurde? Wir können mit Brute-Force die Schwierigkeit, den privaten Schlüssel zu finden, erheblich reduzieren. Wir müssen nur den Seed von 0 bis 2^32-1 angeben und den gleichen Prozess wiederholen, bis wir den privaten Schlüssel finden, der denselben öffentlichen Schlüssel (und dieselbe Ethereum-Adresse) generieren kann. Da wir nur höchstens 2^32 * loop_threashold Berechnungen benötigen. Dies ist in ein paar Stunden oder Tagen/Wochen machbar, wenn wir einen leistungsstarken GPU-Cluster haben.

Dies ist jedoch immer noch ein optimierter Algorithmus. Weitere Details finden Sie im Artikel von Slowmist.

Fazit

Die Sicherung eines DeFi-Projekts ist keine leichte Aufgabe. Neben der Code-Prüfung sollten wir unserer Meinung nach proaktiv den Projektstatus überwachen und den Angriff blockieren, bevor er überhaupt stattfindet.

Über BlockSec

BlockSec ist ein führendes Blockchain-Sicherheitsunternehmen, 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 breite Akzeptanz zu fördern. Zu diesem Zweck bietet BlockSec Sicherheitsauditing-Dienste für Smart Contracts und EVM-Chains, die Phalcon-Plattform für die Sicherheitsentwicklung und die proaktive Blockierung von Bedrohungen, die MetaSleuth-Plattform für die Verfolgung und Untersuchung von Geldern sowie die MetaSuites-Erweiterung für Web3-Entwickler, die sich effizient in der Krypto-Welt bewegen.

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 an US-Dollar erhalten.

Offizielle Website: https://blocksec.com/

Offizielles Twitter-Konto: https://twitter.com/BlockSecTeam

Sign up for the latest updates
~$15.9M Lost: Trusted Volumes & More | BlockSec Weekly
Security Insights

~$15.9M Lost: Trusted Volumes & More | BlockSec Weekly

This BlockSec bi-weekly security report covers 11 notable attack incidents identified between April 27 and May 10, 2026, across Sui, Ethereum, BNB Chain, Base, Blast, and Berachain, with total estimated losses of approximately $15.9M. Three incidents are analyzed in detail: the highlighted $1.14M Aftermath Finance exploit on Sui, where a signed/unsigned semantic mismatch in the builder-fee validation allowed an attacker to inject a negative fee that was converted into positive collateral during settlement; the $5.87M Trusted Volumes RFQ authorization mismatch on Ethereum; and the $5.7M Wasabi Protocol infrastructure-to-contract-control compromise across multiple EVM chains.

Newsletter - April 2026
Security Insights

Newsletter - April 2026

In April 2026, the DeFi ecosystem experienced three major security incidents. KelpDAO lost ~$290M due to an insecure 1-of-1 DVN bridge configuration exploited via RPC infrastructure compromise, Drift Protocol suffered ~$285M from a multisig governance takeover leveraging Solana's durable nonce mechanism, and Rhea Finance incurred ~$18.4M following a business logic flaw in its margin-trading module that allowed circular swap path manipulatio

~$7.04M Lost: GiddyDefi, Volo Vault & More | BlockSec Weekly
Security Insights

~$7.04M Lost: GiddyDefi, Volo Vault & More | BlockSec Weekly

This BlockSec weekly security report covers eight attack incidents detected between April 20 and April 26, 2026, across Ethereum, Avalanche, Sui, Base, HyperLiquid, and MegaETH, with total estimated losses of approximately $7.04M. The highlighted incident is the $1.3M GiddyDefi exploit, where the attacker did not break any cryptography or use a flash loan but simply replayed an existing on-chain EIP-712 signature with the unsigned `aggregator` and `fromToken` fields swapped out for a malicious contract, demonstrating how partial signature coverage turns any historical signature into a generic permit. Other incidents include a $3.5M Volo Vault operator key compromise on Sui, a $1.5M Purrlend privileged-role takeover, a $413K SingularityFinance oracle misconfiguration, a $142.7K Scallop cross-pool index injection, a $72.35K Kipseli Router decimal mismatch, a $50.7K REVLoans (Juicebox) accounting pollution, and a $64K Custom Rebalancer arbitrary-call exploit.

Best Security Auditor for Web3

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

BlockSec Audit