おはようございます、今日も朝の独り言配信の時間がやってきました。飽きるまで続けようと思って始めたこの独り言ですが、なんか楽しみにしてくれている方がいるとかいないとかなのでもう少しは続けてみようかなと思います(まだ5日目)。
今日はAAVEの話をしようと思っていたんですが、8月4日の日付が変わる手前にCurveハッカーがalETHの返還を始めたので急遽内容を変更してお届けします。
一連のCurve騒動の流れと進展を8月5日5時30分時点の情報で解説します。いつものことだがまたまた徹夜で記事を書いてしまった。
※全体的にパソコンからのほうが見やすいです。
c0ffeebabe.eth
ハッカーの悪意あるトランザクションにFront-running(フロントランニング)を行い莫大な利益を生み出したウォレットがあります。それは「c0ffeebabe.eth」です。MEV botを作成し運用していたc0ffeebabeは、この1つのトランザクションで2,800ETH超えを手にしました。でもc0ffeebabeはwhite hat(善意あるハッカー)だったため後に全額をCurveに返還することになります。
その一部始終はオンチェーンでトランザクションによるメッセージが残っているので、時系列順にどんな会話があったのか見てみましょう。
※下記メッセージは私が意訳したもので、時間に関しては日本時間です。
時間: 7月30日19時31分11秒
c0ffeebabe → c0ffeebabe
トランザクション: 0xc52c…
Cold walletに資金を移しました。影響を受けたプロトコルはEtherscan chatで連絡してきてください。
時間: 7月30日19時32分35秒
Curve.fi: Deployer 2 → c0ffeebabe
トランザクション: 0x6567…
CurveのDeployerです、さっきfront-ranしたトランザクションはCRV/ETH poolのハッキングのやつでした。返してくれますか?
時間: 7月30日19時32分35秒
トランザクション: 0x31f9…
c0ffeebabe → Curve.fi: Deployer 2
もちろんです、Etherscan chatで連絡先を教えてください。
時間: 7月30日19時42分35秒
トランザクション: 0xa56c…
Curve.fi: Deployer 2 → c0ffeebabe
0x3941…(swiss-stake.eth)から連絡が行くと思います。
最後のトランザクションの約1時間後に話し合いが完了したのか、Curve.fi: Deployerアドレス(0xC447…)に0.1ETHのテスト送金を行い、全額の2,879.54210353ETHを返還しました。ほんとにc0ffeebabe氏には感謝ですね。
※TransactionのInput Dataを使うことで、ガス代のみでアドレス宛にメッセージを送ることができます。Input Dataに入れたい文章は16進数に返還してから入力しますが、EtherscanなどのExplorerでUTF-8に変換して読むことができます。
Dear hacker
Curveチームはc0ffeebabe氏とのやり取りのように、ハッカーへのメッセージ送信も行っていました。登場人物から整理します。
それでは時系列順に見ていきましょう。
7月30日20時25分59秒
Curve.fi: Deployer 2 → CRV/ETH Exploiter
7月30日20時26分23秒
Curve.fi: Deployer 2 → CRV/ETH Exploiter 2
どこで私たちは話し合うべき?(同じ内容を上記2アドレスに送信)
時間: 8月3日15時13分11秒
トランザクション: 0xc45e…
Curve.fi: Deployer 2 → CRV/ETH Exploiter 2
時間: 8月3日16時21分59秒
トランザクション: 0x6264…
Curve.fi: Deployer 2 → Alchemix/CurveFinance Exploiter
Curve、Metronome、Alchemixは、直近のExploitについて関係者とBounty(バグの発見者などに送られる報奨金などのこと)について話をしたいと思っています。結論から言うと、盗んだ資金の90%を返還してくれた場合は、残りの資金の10%をBountyとして差し上げます。
資金を変換してくれた場合は、これ以上の追求と法執行機関からの言及など一切のリスクを負いません。仮に資金の自主返還に8月6日8時(UTC)までに応じなかった場合は、Bountyの対象者をハッカー以外に適応し、法定で有罪判決につながる犯人の特定情報を提供してくれた人に差し上げます。そのとき私たちはあらゆる方面から法の限りを尽くしてあなた(犯人)を言及することを忘れないでください。
自主返還までの猶予期間が迫っているので、早めにこちらまで連絡をください。curvenegotiation@protonmail.com
なお上記メールアドレス宛に連絡が来た場合でも、まずはオンチェーンでのアドレス所有権の検証から始めさせていただきます。(同じ内容を上記2アドレスに送信)
時間: 8月4日21時55分59秒
トランザクション: 0x215e…
Alchemix/CurveFinance Exploiter → Curve.fi: Deployer 2
0xbabe…9f67のアドレスがCurveのもので合ってるかを、間違いのないようにTwitterで検証してください。
時間: 8月4日22時10分11秒
トランザクション: 0x0af1…
Curve.fi: Deployer 2 → Alchemix/CurveFinance Exploiter
alETH poolのハッキングに関する資金をAlchemixのマルチシグウォレットである0x9e2b…BBF9に返還してください。
CRV/ETH Exploiterからの連絡はまだないものの、alETH poolのハッカーからは連絡が無事返ってきて資金返還の兆しが見えてきました。
ハッカーは資金返還を選択
alETH poolのハッカーは今回のハッキングに関する資金を返還することを選択しました。関連するトランザクションを見てみましょう。
時間: 8月4日22時21分35秒
トランザクション: 0x4197…
1alETHを返還
時間: 8月4日22時39分47秒
トランザクション: 0xaf7d…
1,000alETHを返還
時間: 8月4日22時57分11秒
トランザクション: 0x9d0b…
3,819.55046476alETHを返還
この時点でAlchemixのExploiterが保有しているすべてのalETHをAlchemixのマルチシグウォレットに返還完了しました。
時間: 8月4日23時20分35秒
トランザクション: 0x25bc…
1ETHを返還
時間: 8月4日23時37分59秒
トランザクション: 0x4ab8…
1,000ETHを返還
時間: 8月5日1時11分35秒
トランザクション: 0xfa85…
1,258ETHを返還
これでAlchemixとは円満に解決できたように見えましたがよくよく確認してみると、AlchemixのExploiterアドレスにまだ5,000ETHちょい残っています。
すでに返還済みの資産をまとめました。
4,820.55046476alETH
2,259ETH
なんかここからもうひと悶着ありそうな予感がします、、、
ハッカーの追加要求は
あれ、なんで5,000ETHぐらい残ってあるんだろうと思いながらAlchemix宛のトランザクションを見てみると、なんだこれ。ハッカーからメッセージが届いていました。
時間: 8月5日4時00分23秒
トランザクション: 0x7ad3…
Alchemix/CurveFinance Exploiter → Alchemix Finance: Dev Multisig
今回のハッキングはすべて始めからwhite hatとしての行動でした。JPEG’dのハッキングを発見したのは休暇中のときのことでしたが、何が起こっているのか確認するためにパソコンを開く場所を探しました。
なんでnonreentrant decoratorが貫通されたのか。ほんとに混乱しましたが、すべてを解析して理解するための十分な時間がなかったので、すぐにコードを書いてすべてのETH poolでテストをしました。他の人も同じようなことをするだろうと暗に予想できたので、ハッキングされて返金されるかわからないような状況になるぐらいなら彼らを倒して先に資金を奪う必要があると。
Bountyに関するメッセージは確かに受け取りましたが、資金の20%、つまりは2,000ETHの報酬が妥当だと考えているので話し合いたいですね。
そして0x60eE…3736についてはオンチェーンアクティビティを見ました。本当にとんでもないろくでなしですねあなたは。
まとめると、10%から20%に報酬アップを交渉したく2,000ETHが妥当だ、そして0x60eE…に関してはろくでなしだと思ってる。って感じですね。
メッセージの中に出てきてる0x60eE…は何をしたんでしょうか。AlchemixのExploiterから数日前にメッセージが送られていたので見てみましょう。
時間: 7月31日14時52分35秒
Alchemix/CurveFinance Exploiter → 0x60eE…
トランザクション: 0x0dc5…
私がユーザーの資金を保護するときにちょっとしたミスを犯したので棚ぼた的に得たお金でしょ?返したほうが良いのでは?
このメッセージから、Curveらが警告とBountyのメッセージを出すよりも時系列的に前なのでビビって証拠作りに走ったとかではなく、white hatである可能性が高いことがわかりますね。ちなみにこのアドレスはExploitが起きた時に価格差を使ってアービトラージをして利益を得たアドレスらしいです。他にももう一個alETHの価格崩壊で大儲けしていたアドレスがあったような、、、
探してみたらこのアドレス(0xb8b9…958b)でした。Exploiterからのメッセージは確認できませんでしたが、fbi-crime-complaint-center-ic3-wdc.ethとかいう偽物っぽいアドレスからはやっつけ警告文が送られていました。でもちょっと気になったので中身を読んでみましたが、記載されているメールアドレスがProtonというフリーメールだったので本物である可能性は極めて低いでしょう。
まとめ
ここ数日情報が入れ混じっていますが、こういうときに多く詐欺被害が発生する傾向にあります。基本的にDeFiでは被害が収束する前に資金の返還やアナウンスを行うことはありませんのでみなさん注意するようにしてください。
現時点(8月5日6時10分)でAlchemixからの報酬アップ交渉に関する公式発表は無いので、これについての発表があれば事が前に進みそうですね。
また速報的な情報があれば昨日みたいに号外で独り言を書き連ねます。よかったらみんなメアド登録していってね、、、