銀行・クラウド・セキュリティ ― Capital One事件とは何だったのか
銀行・クラウド・セキュリティ ―― 三題噺としては、これ以上食い合わせの悪い組み合わせも思いつかない。いずれか二つだけでも十分に食い合わせが悪いが、三つ揃うと関係者が抱える悩みは3乗に比例する。
CSP(クラウド・サービス・プロバイダ)が繰り返す盛んなキャンペーンに反して、米国においても金融業界のクラウド利用はそれほど進展しているわけではない。欧州のように規制当局からの圧力が少ないこともあり、米銀のクラウドシフトのスピードは緩やかで、むしろ公共領域である連邦政府の方がホワイトハウス主導の強引なイニシアティブでパブリッククラウドの受容は早いくらいである。銀行がセキュリティを錦の御旗にクラウドシフトを渋るのは、日米共通の現象だ。
それに加え、昨年(2019年)、この「銀行・クラウド・セキュリティ」について、長く暗い影を落とす事件が発生した。それがCapital One 情報漏洩事件である。本稿では、その事件の概要と、この事件が金融機関とCSPにとってどのような含意を持つのかを考えてみたい。
Capital Oneとはどんな銀行か
Capital Oneは、多くの日本人にとってなじみ深い銀行ではない。日本でも操業していたCiti、米銀の代名詞Bank of America(通称バンカメ)、ゴールドラッシュの立役者として長い歴史を持つ西海岸の名門Wells Fargoなどに比べると、規模としては小さく中堅クラスである。クレジットカードも扱っているが、AMEXなどが高所得者層(プライム層)をターゲットするのに対し、貸し倒れリスクの高い、いわゆる「サブプライム層」をメインターゲットにしてきた。伝統的にハイリスクハイリターンのビジネスを行う銀行である。
前田真一郎『米国金融機関のリテール戦略』より
しかし、このCaital Oneは、IT業界では非常に有名な存在である。その理由は、2015年にAWSを全面的に採用して既存および新規のすべてのアプリケーションをAWS上に構築するという計画を発表したからである。
https://aws.amazon.com/jp/solutions/case-studies/capital-one-enterprise/
当然ながら、金融分野への進出を渇望するAWSからは最重要のパートナーとして扱われており、イベントにも頻繁に登壇している。2019年にも「AWS上でいかにしてセキュリティとコンプライアンスに取り組んだか」を講演している。
いわば、クラウド急進派とも言うべき存在で、日米問わず金融機関のクラウドシフトという文脈ではベンチマークとして参照される銀行である。そのCapital Oneが昨年、大規模な情報漏洩を起こしてしたのである。
Capital One事件の概要
事件が発覚したのは、2019年7月だった。Capital Oneが1億人以上のクレジットカードの情報が流出したと発表したのだ。しかも、その中には国民IDである14万人分のSSNとそれに紐づく口座情報も含まれており、個人情報漏洩事件としては史上最大クラスの惨事となった。SSNはマイナンバーのようなものだが、米国では銀行口座開設やクレジットカードの申し込みにも利用するため、銀行もデータを保持している。これが漏れるとあらゆる金融活動でなりすましが可能になる。日本もマイナンバーと銀行口座の紐づけが議論されているが、けっこう危険なので慎重に議論した方がいい。
Capital One事件を伝えるWall Street Journalの記事
余談だが、筆者もCapital Oneに口座を持っていたので、このニュースを知ったときは生きた心地がしなかった。
Capital One事件 ―― 技術的考察
Capital Oneがこのような大規模情報漏洩を起こした原因は、外部からのハッキングだった。犯人が元AWS社員だったことから、インサイダーしか知りえない特権情報の使用も疑われたが、事実としてはAWS上にCapital Oneが構築したWAFの脆弱性が突かれ、SSRF攻撃を受けた。
以下にMITのサイバーセキュリティチームがこの事件を検証した分析レポートから抜粋したアーキテクチャ図を掲載する。
MIT - A Case Study of the Capital One Data Breach
上図からわかるように、犯人は以下のようなステップを踏んで個人情報を持ち出した。
(1)TORで発信元IPアドレスを隠蔽
(2)EC2上にあるWAFの設定ミスを攻撃し、内部サーバへコマンド発行
(3)内部領域のメタデータサービスに攻撃コマンドを転送
(4)S3へのアクセスするための資格情報を取得
(5)個人情報が格納されているS3にアクセス
この事件はよく、「パブリッククラウドはやっぱり怖いよね」という文脈で引き合いに出されるが、流出メカニズムを見てわかるのは、別にクラウドでなくても起きるということである。WAFの設定をミスって内部サーバへの侵入を許すというのは、オンプレであっても起きるときは起きる。この事件から技術的な教訓を引き出すとすれば、「クラウドコワイコワイ」ではなく、既知の脆弱性を放置するという基本動作がなっていなかったことと、流出してから半年間自力で気づけなかったことだろう(この事件は、犯人がGitHub上で自分の「功績」を自慢したことで発覚した。慎み深い犯人だったら、永遠に発覚しなかったかもしれない)。
Capital One事件 ―― 政治的考察
2020年8月、金融規制当局はCapital Oneに対して$80Mの制裁金を科した。いくつか民事訴訟も起きているようだが、事件としては一応の決着を見た形である。
しかし、この事件は単なる情報漏洩にとどまらず、思わぬ波紋を呼ぶことになった。「AWSに責任はないのか」を問う問題提起がなされたのである。
「AWSの責任を問うべきではないか」と語るウォーレン
2019年10月、民主党の政治家エリザベス・ウォーレンらは、FTCに対して「Capital One事件についてAmazonの責任を問うべきか調査せよ」という書簡を送った。その中で、ウォーレンは次のように語っている。
Amazonは、AWSがSSRF攻撃に対して脆弱性があることを知っていた、または知っているべきだった。競合他社はすでにこの脆弱性に対応していたにもかかわらず、Amazonは欠陥のあるクラウド・コンピューティング・サービスを企業、政府機関、および広く一般社会に提供し続けてきました。ゆえに、AmazonはCpital Oneの1億人の顧客に責任の一部を負っている。
ウォーレンという政治家は、民主党の中でも左派の代表格で大企業に対して厳しく、消費者保護を重視することで知られている。オバマ政権時代に消費者金融保護局(CFPB)設立に尽力し、財務長官顧問も務めた。持論はGAFA解体である。
このウォーレンからの指摘に対して、Amazonはスポークスマンを通じて次のような声明を出した。
書簡の主張は根拠のないものであり、日和見主義的な政治家による売名行為である。Capital Oneが説明しているように、犯人はCapital Oneのファイアウォールのアプリケーション層の設定ミスを攻撃した。この事件で使われたSSRF という技術は、犯人がCapital Oneのシステムにアクセスした後に実行した多くの手順の一つに過ぎず、その時点で得られていたアクセスのレベルを考えると、他の多くの代わりの攻撃方法もあった。
全否定、である。実際、ウォーレンは当時民主党の大統領候補選に立候補していたので、売名行為という側面があった可能性はある。しかし、この声明において重要な点はそこではない。AmazonがEC2上に存在するWAFを「Capital Oneのファイアウォール(Capital One firewall)」と呼んだことである。
責任共有モデルは責任放棄モデルか
実際、AWSの責任共有モデルにおいては、IaaSで利用する場合、WAFはユーザの責任とされる。逆に言うと、AWSはそこについて責任を負わない。
この責任分界は契約上明確であり、報道を見る限りこの点についてCapital OneとAmazonが責任を押し付けあったりはしていない(裏でモメた可能性はゼロではないが)。「契約は契約」である。AWSのユーザは、自分の責任範囲とリスクを承知の上でクラウドを利用している、というのがAWSの言い分である。
ではウォーレンの主張に耳を傾けるべきポイントがないか、と言えばそうとも言い切れない。ウォーレンは書簡において、Amazonの不作為の罪を問うている。いやしくも金融や公共という社会インフラを担うプラットフォームになろうと言うのなら、自分たちの責任を都合よく限定し、ユーザに押し付けて事足れりとする態度には問題があるのではないか、というわけだ。現実問題、銀行や政府のエンジニアだけで全部のセキュリティ対策をカバーしきれるのか、と。
これを敷衍すると「社会インフラ領域におけるクラウド利用の最適なモデルは何か」という問いになり、責任共有モデルに対するかなり根源的な問いを突き付ける。ウォーレン・アジェンダは、今後の公共・金融分野のクラウドジャーニー全体に影響を及ぼす可能性がある。私企業の利益追求は公共に対する責任と相反するのか ―― 反トラスト訴訟が視界に入っている現在、このアジェンダ設定に乗ることは、クラウドのビジネスモデルを崩壊させる危険がある。Amazonもその危うさを感じたから人格攻撃スレスレの反論に訴えたのだ。ここを譲ったら、スケーラビリティが出せず旧来のSIerのような収益性の低いビジネスに甘んじることになる。ウォーレンはバイデン政権が成立すれば入閣もありえる大物だが、その政治家に啖呵を切ってでも、引くわけにはいかない絶対国防圏である。
社会インフラ領域におけるクラウド利用の最適なモデルは何か ―― その答えは世界中の政府と銀行が知りたいところだろうが、まだ解がない。これから多くの試行と錯誤を積み重ねながら模索することになるだろうし、その過程で本件に匹敵する「事件」もいくつか起きるだろう。
今年のre:inventでもCapital Oneはプラチナ・スポンサーになっており、もしかすると講演を行うかもしれない。本件に対する総括、新たなクラウドセキュリティ対策、クラウドシフト計画への影響について語られるとすれば、多くの金融業界のIT関係者が最も注目するセッションになるだろう。一般の技術者の観点とはだいぶズレて恐縮だが、筆者もいま一番re:inventで気になるポイントである。セッションがある場合は、続報をレポートしたい。