デジタル人材の育成
公開日:2024年4月8日
最終更新日:2024年6月3日
コンピュータというとPCやスマートフォンやサーバなどを思い浮かべるかもしれませんが、家にある家電製品のほぼ全て、バスや電車の制御や運行システム、病院や行政のシステム、工場の機械や電力ガスや交通信号のようなインフラも、全て何からのコンピュータで動作しネットワークで相互につながっています。それらを理解しセキュリティを強化しインシデントに対応するには、その構造や動作を一通り理解する必要があります。IoTセキュリティクラスでは、集積回路(ICチップ)やCPUの原理から、ネットワークプロトコル(通信手順)、医療情報システムや自動車内部ネットワークなどの専用設計されたシステム、ソフトウェアアーキテクチャなどの6つの題材をとりあげ、それぞれ原理や構造を解説し、実際の脆弱性や事例を紹介し、また手を動かす演習も組合せながら理解を深めていくことを目指しています。
8月13日(火曜日) 8時30分~12時30分
医療でもAIや医療機器、ウェアラブルセンサーが普及の兆しをみせています。このようなデータと通信、AIの融合はこれまでに考えられなかった新しいかたちの医療を実現に寄与しえます。一方で、これまで以上に情報システムへの依存が高まることで、情報システムの情報セキュリティの安全性が脅かされることが患者の命にも関わりうることが知られるようになっています。しかし、医療情報システムや医療機器が患者にどのようにつながっているのか、情報セキュリティ上の懸念が具体的にどのように医療に関わっていくのか想像がつきにくいと思われます。そこで、本講では医療機関のバーチャル見学(調整中)を通して、医療機関と医療情報システム、医療機器の実態を理解いただき、セキュリティ上の瑕疵が命に直結しうる経路について具体的に想像できるようにして、受講生がセキュリティと現実社会の関わりに関する具体的なビジョンを持てるようになること、そして社会的に具体的に貢献できるという自負心を持っていただけるようにしたいと思います。
8月13日(火曜日) 13時30分~17時30分
現在の自動車には数十のECU(制御コンピュータ)が搭載されており、CANやLINまた最近だとEthernetなどの車載ネットワークで相互に結ばれています。演習では、ECUやCANネットワークで構成される実習用ネットワークとLinuxノードを教室に設置し、CANにつながるECUをエミュレーションするLinuxノードに各人のPCからアクセスし、CANネットワークに流れているパケットを取得し解析する方法をPythonを使った簡単なプログラムを作成しながらハンズオン形式で解説します。
また、実車からキャプチャしたパケットを実習用ネットワークに流して解析したり、なりすましデータを作って実車のメータパネルやハンドルの動きを観察したりすることで、車載ネットワークの挙動を理解していきます。
8月14日(水曜日) 8時30分~12時30分
本講義ではファイルシステムの理解を通して、データダンプの解析技術とフォレンジック技術の双方の技術を学びます。
最初にファイルシステムの構造について詳しく解説を行いバイナリエディタと電卓で FAT32 の世界を行き来できるようになった後、
記憶メモリからファイルコンテンツを読み出すところまでを全員で一緒に体験します。
手厚くサポートを掛けますので、基本的な Linuxの操作ができてバイナリダンプをひたすら眺めることが苦でないのであれば、楽しく体験することが出来ると思います。
8月14日(水曜日) 13時30分~17時30分
IoTシステムは多数のサブシステムをネットワークで繋ぎ合わせることで構成され、必要な機能を随時追加・変更あるいは削除することが可能です。また、それらのサブシステムを構成するソフトウェアにはオープンソースソフトウェアから、OS、データベース、UIやプロトコルのライブラリ、業種固有の専用アプリケーション(クレジットカード処理やデータ可視化、ウェブアプリケーション)を実装するための商用ソフトウェアなど多岐にわたります。これらを管理するための手法はSCA(Software Composition Analysis)と呼ばれ、ソースコード、パッケージ、バイナリーなど流通する形態を問わず解析するためのツールが存在しており、SCAの技術を用いて生成管理されるソフトウェア部品表(Software Bill of Materials/SBOM)は、ソフトウェアのリスク管理の最新手法として世界中で利用が拡大しています。
例えば、直近ではApache Log4jの脆弱性が昨年末に公開されたものの、産業用制御システムや医療システムで用いられるアプリケーションでも利用されていたため、大きな問題に発展しました(現在も対処中のメーカーがあります)が、SBOMを用意することで脆弱性に限らず、ソフトウェア利用の際に、ライセンスや来歴、オリジンなどのリスクを可視化することができます。
講義では、SCAツールを使い、組み込まれているソフトウェアにどのような部品(コンポーネント)が含まれているかを解析し、それらのソフトウェア部品が抱える脆弱性から必要なセキュリティ対策を、JPCERT/CCと共同で作成したガイドを用いて導き出します。
8月15日(木曜日) 8時30分~12時30分
自動車のコネクティッド化、CANへアクセスするツールの普及により、自動車に対するハッキングのハードルが下がっています。
設計段階で脆弱性への対処を行うことで攻撃を受けるリスクをある程度低減可能ですが、セキュアコーディングの不備により実装段階で発生する脆弱性があった場合、深刻な被害につながる可能性があります。
本講義では、自動車業界で一般的に利用されるCERT C/C++やMISRA C/C++などのコーディングスタンダードを理解し、Arduinoが搭載されたロボットカーをモデルに実際に手を動かしながら脆弱性を未然に防ぐセキュアコーディングを体験します。
8月15日(木曜日) 13時30分~17時30分
集積回路(LSI)はコンピュータのCPUをはじめ、あらゆる電子機器の基本パーツで、その進化はコンピュータの進化と表裏一体です。その進化の結果、あまりに高度化、複雑化したLSIはブラックボックスとなり、中身を知らなくても多くのことができるようになりました。しかしそのことは、以前あったCPUの根本的な脆弱性「MeltDown」のような深刻な問題の遠因ともなりえます。 この講義では、LSIを設計することに立ち返り、その視点からコンピュータというものを改めて見つめ直すことを目指しています。具体的には、4bit CPU(TD-4)を題材に、論理ゲートでの回路設計と電子回路レベルのシミュレーションでの検証、そしてLSI製造データ(マスクデータ)の作成までを一貫して行い、その仕組み、その可能性を体験します。そしてそれを通してコンピュータというものに対する新たな視点を得ることを目標とします。