開閉ボタン
ユーザーメニュー
ユーザーメニューコンテンツ
ログイン

  • 会員限定
  • 2012/11/09

デジタルボンド社ピーターソンCEOが語る、制御システムセキュリティの動向と対策

なんとアップルIIより古いCPUが使われているPLCも

Stuxnet以降、電力システムや各種工場など、重要な社会インフラのセキュリティ対策の重要性が注目されている。日本でも、今年の3月に制御システムセキュリティセンターが設立され、評価認証、標準化やテストベッドなどの委員会を発足させ、この問題への取り組みを本格化させている。2012年2月に、日本製を含むPLC(制御システムコントローラ)のハッキング方法を公開したことで一躍注目を集めたデジタルボンド社 デール・ピーターソン氏は「これまでの制御システムは、重要インフラが24時間365日稼働することに焦点を当て過ぎていたが、完全性も考えるべきだ」とIPAフォーラム2012で提言した。

フリーランスライター 中尾真二

フリーランスライター 中尾真二

フリーランスライター、エディター。アスキーの書籍編集から、オライリー・ジャパンを経て、翻訳や執筆、取材などを紙、Webを問わずこなす。IT系が多いが、たまに自動車関連の媒体で執筆することもある。インターネット(とは言わなかったが)はUUCPのころから使っている。

PLCの脆弱性を公開し、業界に衝撃を与えた男

photo
米デジタルボンド
CEO
デール・ピーターソン氏
 デジタルボンド社は、電力システムや各種工場などで使われるICS(Industrial Control System)やPCS(Process Control System)と呼ばれる制御系システムのセキュリティに特化した企業である。

 そのCEOであるデール・ピーターソン氏は2012年2月、日本製を含む主要なPLC(Programmable Logic Controller:制御システムのコントローラ)5台について、脆弱性を指摘し実際の攻撃コードを紹介することで業界に警告を与えたことでも知られている。

 デジタルボンド社が指摘した5台のPLCのうち1台が日本ベンダーの製品だったこともあり、国内でもにわかに制御システムの脆弱性やセキュリティ対策が注目を浴びることとなった。

 とはいうものの、日本の制御システムに対するセキュリティ対策が無視されていたわけではない。米国安全保障省の産業制御システムセキュリティ担当機関「ICS-CERT」が発足した2009年前後から、関連の情報収集、対策の検討、業界でのシンポジウムなど、一部ではあるが国内の取り組みは始まっていた。こうした背景もあって、デジタルボンド社の警告は、日本での問題認識を一気に広めることになったと言えるだろう。

 ただし、業界では認知が広がったことを歓迎する一方で、依然として対策がまだ十分ではないといった声も聞こえている。

制御システムの可用性より完全性を重視せよ

 そんな中、ピーターソン氏は、IPAフォーラム2012(主催:独立行政法人情報処理推進機構)で登壇し、新たな警告とともに対策と改善を進めるべき理由とポイントを示した。

 まず、情報セキュリティのCIAという言葉はご存じだろうか。機密性(Confidentiality)、完全性(Integrity)、可用性(Availability)の頭文字をとった言葉だ。ピーターソン氏はCIAの問題を次のように語る。

「制御システムにおいて、これまでは可用性の追求が第一に行われてきており、システムの完全性は確保されていませんでした。」(ピーターソン氏)

 Stuxnetでは、ラダーロジックというPLC用のプログラミング言語が使われていた。攻撃プログラムは特定の(Stuxnetではイランの)遠心分離機を制御しているPLCに感染した場合のみ、その回転速度を少しだけ速くするコードが書かれていた。こうすると、まともな核燃料が生成できなくなるという。しかし、このプログラムは、出力データは正常値を装うようになっていたため、スパイ映画で録画した画像を流すことで監視カメラをごまかす手口のように、異常が起きていることはだれにもわからないようになっていた。

画像
Stuxnetのコード(感染したPLCが攻撃対象かどうかの判定部分)
(出典:デジタルボンド)


「システムは正常に稼働しているように見えるので、可用性は問題なかったわけですが、完全性はゼロの状態だったのです。」(ピーターソン氏)

 このようにシステムの可用性ばかり考えていると、完全性への配慮が抜け落ちてしまう。さらにピーターソン氏は次のように加える。

「ITの世界で脆弱性といえばバッファオーバーフローやstrcpy(※指定したアドレスに指定した文字列をコピーする関数)の問題などの意図せぬ動作に起因するものが多いのですが、制御システムの脆弱性は本当の意味での脆弱性とさえ呼べないものもあります。」(ピーターソン氏)

 つまり、設計そのものが万全でない、あるはセキュリティ対策を導入していないため、脆弱性以前の問題があるというのだ。

 たとえば、Stuxnetでも悪用されたPLCのラダーロジックには認証機能が備わっていなかった。PLCそのもののコマンド操作にも認証は必要ないため、ネットワークにつながっていればだれでも「stop cpu」というコマンドを実行させ、システムを停止できてしまう。これは、家を建てたが鍵を作っていない状態と同じだ。

 下図は、デジタルボンド社が中心となってボランティアの研究者とともに実施しているProject Basecampによって明らかにされた脆弱性のあるPLCの表である。×印は、数時間以内で攻撃が成功したもの、!印は数日以内で攻撃が成功したもの、チェックマークは攻撃が成功しなかったものを意味する。

画像
2012年2月に公表されたPLCの脆弱性
(出典:デジタルボンド)


 ピーターソン氏によれば、「すべてのPLCにおいて、ファームウェアの更新や攻撃が可能だった」という。

 また、ラダーロジックの変更、攻撃も同様に可能だった。ほとんどの機種が認証手続きなしにファームウェアを入れ換えたり、プログラムを書き換えることができたということだ。

 情報窃取などではなく、システムの破壊や機能不全が目的なら、Stuxnetのような高度なプログラムの知識がなくても、アクセスさえできればあとはでたらめなプログラムを送りつけるだけだ。

 さらに問題なのは問題が発見されても実際の対応が困難であることだ。

「この表でもっとも成績の悪かった米GE(ゼネラル・エレクトリック)のD20というPLCは、1996年にサポートが終了しており、6502というApple II(Macintoshより前の1970年代の製品)に使われていた“古代の”CPUが使われているのです。」(ピーターソン氏)

画像
アップルが1977年に発表したコンピュータApple II。古いPLCはこのPCと同じCPUが搭載されていることもある
(出典:デジタルボンド)


【次ページ】ミドルウェアの問題、ソーシャルエンジニアリングの問題

組み込み・産業機械 ジャンルのトピックス

組み込み・産業機械 ジャンルのIT導入支援情報

PR

ビジネス+IT 会員登録で、会員限定コンテンツやメルマガを購読可能、スペシャルセミナーにもご招待!