相次ぐStruts2脆弱性攻撃

平成29年3月10日に、GMO−PGが都税のクレジット支払サイトと住宅金融支援機構の団体生命保険特約料クレジット支払サイト合わせて70万超の個人情報流出の可能性があると発表しました。同社はわが国最大の決済代行会社で、被害を受けた両社のクレジット決済の仲介処理を請け負っています。

原因は、JavaのWebアプリケーションを作成するソフトウェアフレームワークApacheStruts2の脆弱性を悪用されたそうです。この脆弱性は、3月8日に情報処理推進機構が、注意喚起を呼びかけており、GMO−PGはそれを受けて9日から影響調査をした結果、不正アクセスの痕跡を発見しました。同社は代表的な決済代行会社ですから、セキュリティには相当な手当てをしている筈で、気の毒にと思っていたところ、日本郵便、日本放送、岡山県の自治体が共同運営するカタログサイトなど、22日までに8件の被害が確認されています。同様の攻撃は7日に170件、8日に約400件、9日は500件であったとセキュリティ・オペレーション・センターが観測し公表しています。気づいていない、発表していない分を含めると、被害を受けた企業はもっとあるかもしれません。

この脆弱性は、Struts2が設定ファイルを解析するために初期設定されているJakarta Multipart parseにあって、第三者がこれを突くHTTPリクエストを送信すると任意のコードを実行できるという代物だそうです。攻撃が簡単な上に、既に攻撃ツールは公開されている。誰でも簡単に攻撃ツールを入手して、手当たり次第に攻撃できる。何とも恐ろしい話です。米アパッチソフトウェア財団が3月7日に脆弱性を修正したバージョンを公開し、上述のようにIPAが8日に注意喚起していますが、利用企業が対応する前に攻撃を受けてしまったということです。更に、この数日間の間にも攻撃側は手法を進化させているとの話も聞きます。攻める側のスピードと守る側のスピード差が脆弱性となっている。

金融庁は3月17日に、昨年12月までの銀行カード、ネット関連被害発生状況を公表しました。それによると、昨年4-12月の8カ月間でIB関連被害発生件数は630件と前年1年間の1540件から大きく減っています。増えた業態はありません。個人向け、法人向けIBともに減っています。気になるのは、個人向けIBの10-12月が大手行で増加していることくらいです。確かに、銀行のセキュリティ対策は強化されています。OTPなどの施策やセキュリティ担当者も増強されています。これは先進国共通で、銀行の防御が強化され、攻撃側の成功率低下によって攻撃件数自体が減っているようです。個人の信用情報、カード情報等の流通価格も大きく低下しているそうです。

といって、安心ばかりはしておられません。攻撃側は、企業の大口資金を新たな収益源として攻撃手法を改良しながら、ビジネスメール詐欺を拡大しているとか。標的型攻撃で企業内部の事務規程や指揮系統を把握し、上司を騙って偽の送金先に高額な送金をさせます。これは、公表しない企業の方が多いので被害の実態はつかめていません。技術的にはシンプルですが、まさに人間の脆弱性を突くやり方です。

16日には、警視庁がDreamBotの被害を国内で初めて確認したと発表しました。こちらは、銀行取引を狙っています。国内の銀行、数行の顧客を狙っているようです。嫌らしいのは、OTPをかいくぐることです。DreamBotに感染した利用者がIBで送金手続きをすると、送金先を勝手に変えてしまう。OTPを使っていても、偽のOTP入力画面を表示し、そこに利用者が入力した途端に、犯罪者の指定先に送金されるという手口です。これを防ぐには、取引認証がある程度は効果的ですが、これは利用者、銀行の双方にとって煩雑になるので、どの銀行も避けたがっています。もう一つの方法はデバイス認証を強化することでしょう。顧客が事前に指定したデバイス以外からの指図は一切受け付けない。最近、注目されているのが秘密分散割符を使ったデバイス認証です。ベーステクノロジー社のQuixなどが知られています。使い方は簡便で費用も安い。割符という日本の伝統的セキュリティですから、海外の犯罪者はこの防御策を知らない。ただし、MITB攻撃などへの対策はもう一工夫必要かもしれません。

秘密分散技術といえば、グローバルフレンドシップという会社があります。秘密分散法コンソーシアムの中心メンバーです。データを暗号化しても解読・復元の可能性があるので万全とはいえません。暗号化されていてもそのデータは機密情報となります。秘密分散は、データをビットレベルで暗号化し、更に複数のデバイスに分割してしまいます。そこで割符を使うのですが、所定の個数の割符がないと復元できません。逆に言えば、震災などでサーバーが破損しても、PCやUSBなどに必要個数の秘密分散化されたデータ (正確にはデータとしては全く使えない状態のビットの集まり。ですからこれが流出しても機密情報流出にはならない。) があれば、簡単に元データが復元できます。

冒頭のStruts2脆弱性攻撃などは、この秘密分散割符にしておけば、流出騒ぎにはならなかったのですが。とはいえ、全てのデータを秘密分散割符化するとリアルタイム処理に不都合ですし、デバイス上で復元したデータは割符で防備されている訳ではありません。データの状況、利用形態によって、複合的な防御が必要なことに変わりはありません。ただ、いくつかの局面でセキュリティ面の安心が得られるということは、とてもありがたいことです。

今後も、ネット犯罪者との戦いは続きますし、攻撃に対して時間との勝負であることは避けられません。皆で協力することは当然ですが、他人任せだと費用は嵩んで、時間的には自分で制御できません。それにしてもセキュリティ人材が不足です。

                            (平成29年3月29日 島田 直貴)