大きな攻撃はどれも、今日でも読める 1 行か 2 行のコードを残しています。この資料は記録に残る最大級の事件を集めたものです。段階を追った侵入経路、壊れていた関数そのもの、修正方法、そして事後報告へのリンク。
ニュースの一覧ではありません。それぞれの事件は、ご自身のコードに当てはめられる 1 つの教訓へ分解されています。
最初の一手から資金の流出まで。攻撃者が何を、どの順で呼び、なぜその順序でうまくいったのか。
事件当時のその関数の姿。欠陥についての説明ではなく、欠陥そのものを目で読めます。
事後に何が変わったのか、そして最初から防げていた安全な書き方。
各事件が、属する脆弱性のカテゴリと、当社の脆弱性データベースの同カテゴリの項目にリンクします。
元の事後報告と、独立したセキュリティ分析へのリンク。どの数字もご自身で確かめられます。
年、チェーン、脆弱性の種類で絞り込めます — 例えばリエントランシーの事件をまとめて読みたいときに役立ちます。
ツール本体(スキャナー、各ダッシュボード、SAFI ワークスペース)のインターフェースは現時点では英語です。これらのページは、その中に入る前にすべてを日本語で説明するためにあります。
これらの事件は細部では大きく異なりますが、原因においては不安になるほど似ています。
この資料からもっとも居心地の悪い結論はこれです。ここに挙がるプロトコルの多くは、破られる前に監査を通過していました。監査は確率を下げますが、ゼロにはしません。
確率をより下げるのは 1 通のレポートではなく、複数の層です。監査、ローンチ後の継続的モニタリング、支出の上限、そして素早く止血する能力。損失が小さく済んだ事件は、まさに最後の層を持っていたところです。
リエントランシーと権限の中央集権が、損失総額のかなりの部分を説明します。どちらも何年も前から知られており、どちらも今なお繰り返されています。
コントラクトのロジックを変えられる秘密鍵 1 本は、周りのコードがどれほどよく書かれていても、単一障害点です。
ブリッジは巨額の残高を抱え、外部から来るメッセージを信じます。オラクルは操作されうる価格を運び込みます。この 2 つの領域の大きな事件はどれも、同じ考えから生まれています — データを、それが値する以上に信じてしまったこと。
コントラクトアドレスを貼り付ければ、リスクを取る前にオーナー権限、流動性、売却シミュレーションの結果が分かります。1 回ごとに少額の手数料がかかり、金額は署名の前に表示されます — どのプランでも、加入後は無制限に含まれます。