ブロックチェーンセキュリティプラットフォームのImmunefiが11月15日に発表したレポートによると、2022年のWeb3サービスへの攻撃で失われた仮想通貨の約半分は、Web2のセキュリティ問題、つまり漏洩した秘密鍵などによるものであるという。

レポートは、2022年の仮想通貨攻撃の歴史を振り返り、さまざまな脆弱性を分類。その結果、2022年の攻撃で失われた仮想通貨の46.48%は、スマートコントラクトの欠陥ではなく、「インフラの脆弱性」または開発企業のコンピュータシステムの問題によるものであったと結論づけた。

Categories of Web3 vulnerabilities. Source: Immunefi

仮想通貨の価値ではなく、インシデントの数で見ても、Web2の脆弱性に関するものは全体の26.56%と、依然として2番目に多いカテゴリとなった。

Immunefiのレポートは、出口詐欺や市場操作のみによって発生した攻撃は除外した。セキュリティ脆弱性によって発生した攻撃のみを検討したところ、攻撃は3つに大きく分類されることがわかった。

第一に、スマートコントラクトに設計上の欠陥があるために攻撃が発生する。Immunefiは、BNBチェーンブリッジのハックを、このタイプの脆弱性の例として挙げた。

第二に、スマートコントラクトの設計は良好でも、それを実装するコードに欠陥があるために攻撃が発生する。Immunefiは、Qbitのハックを、このカテゴリの例として挙げた。

最後に、第三のカテゴリの脆弱性は「インフラの脆弱性」であり、Immunefiはこれを「スマートコントラクトが動作するITインフラストラクチャ、たとえば仮想マシン、秘密鍵など」と定義した。Immunefiは、Roninブリッジのハックを、このタイプの脆弱性の例として挙げた。このハックは、攻撃者がRoninノードのバリデーター署名のうち5つを制御したことによって引き起こされた。

Immunefiは、これらのカテゴリをさらにサブカテゴリに分類。インフラの脆弱性の場合、従業員が秘密鍵を漏洩させた場合(たとえば、安全でないチャネルを介して送信した場合)、鍵保管庫に脆弱なパスフレーズを使用した場合、二段階認証の問題、DNSハイジャック、BGPハイジャック、ホットウォレットの侵害、または脆弱な暗号化手法を使用してプレーンテキストで保存した場合などが挙げられる。

インフラの脆弱性が他のカテゴリーと比較して最大の損失を引き起こしたものの、損失の2番目に大きな原因は、「マークルツリーエラー、署名の再利用可能性、予測可能な乱数生成など暗号化の問題」だった。暗号化の問題は、2022年の損失総額の20.58%に相当した。

レポートによると、もう1つの一般的な脆弱性は、「弱い/欠落したアクセス制御および/または入力検証」だ。このタイプの欠陥は、価値ベースでは損失のわずか4.62%にしか相当しなかったが、インシデントの数では最大の原因であり、全インシデントのうちの30.47%がこれによって引き起こされた。