91.会議の質
半導体製造分野でのセキュリティー問題に対処していた時の出来事について書きたいと思います。
SEMI
夏にうるさい虫のことではありません(笑)一般の方はご存じないと思いますので、少しだけ解説しておきます。
SEMI規格は、半導体製造および関連産業のための国際的な標準を定めるものです。SEMIは「Semiconductor Equipment and Materials International」の略で、半導体装置および材料の国際的な産業団体を指します。
つまり、半導体製造に関わる仕様等は、全てこのSEMI規格に沿って作られていくことになります。そのようにすることで、装置間の接続等、互換性を維持することが可能となります。
E187,188
この2つの規格は、SEMI初となるサイバーセキュリティ―に関する規格です。詳細は以下を参照ください。
今回、この規格に対応させる必要性から、納入するマシンに対して、脆弱性検査や、セキュリティーリスクを排除するための、作業を行うこととなりました。
知識
一般的に、このようなサイバーセキュリティー対策を行う場合、インストールされているOSについて、詳しい知識がなければ、対応が難しくなります。
殆どの場合が、LinuxやWindowsServerで納入されることが多く、Windowsに関しては、 マイクロソフト が適切な対応をしており、大きな脆弱性が見つかる可能性は低いです。
しかし、Linuxの場合は、様々なディストリビューションが存在し、それによって対応が異なります。
とはいえ、Linuxの場合は主にDebian系、Red Hat系が多く利用されていると感じますので、概ねこの2つを押さえておけば大丈夫です。
脆弱性検査
脆弱性検査には、 Rapid7 社のInsightVMを利用しました。
こちらは、ライセンス形式となっており、アカウント数の検査と検査結果の保存が出来ます。
今回私も初めて利用しましたが、詳細なチェックが行われますので、企業システムの検査にはお勧めです。
全てWebアプリで直感的に操作可能で、結果もその中で確認できます。
検出結果には数段階のランクがあるのですが、特に問題となるのは、危機的脆弱性と呼ばれるもので、この点に関してはマストで対応が必要となります。
しかし、いくつかの問題点も見つけました。明らかに問題が改善されているにもかかわらず、前回検出した内容と同じものを検出等ありました。
参考までに分かりやすいのが以下です。
Apache Commons Text: CVE-2022-42889:Arbitrary Code Execution from Variable Interpolation (apache-commons-text-cve-2022-42889)
Apache Log4j Core: CVE-2021-44228: JNDI support has not restricted what names could be resolved allowing remote code execution (apache-log4j-core-cve-2021-44228)
修正された後の再検査については、改善が必要だと感じました。
しかし、このような問題はあるにしても、素晴らしいツールだと感じました。
どのように対処するか
この部分が最も、知識や技術が求められる所となります。
私の場合、元々そうしたサーバーシステムには興味があり、趣味的に仮想マシンを利用して学んできたことが、今回の業務では役に立ちました。
また、社内のLinuxやWindowsServerを構築・管理したこと、業務の中で様々なOSを利用してきた経験から、問題点が分かれば対処方法を導き出すことが可能です。
例えば、高速な巨大ストレージを構築するためのベストな方法や高速ネットワーク伝送方法の検証、制作したソフトウェアに組み込める高速通信を可能にするAPIの作成等も行ってきました。
殆どの脆弱性はOSのアップデートで対処可能です。しかし、それだけでは対処できない場合があります。
特にLinuxは、設定等の見直しや脆弱性対応されたモジュールに置き換えで対処することになります。そのようなことから、特にネットワークに関しての知識が重要です。
本題
前提が長くなりましたが、ここからが本題です。
このような状況で、Red Hat系マイナーOSがインストールされているハードウェアを納入するため、SEMI E187,188に対応させる必要が出てきました。
通常であれば、アップデートすれば概ねの危機的脆弱性は解消されるのですが、ここで一つ問題があります。
そのハードウェアを扱っている日本の大手企業は
「アップデートを行えば保障出来なくなる」
と言いってるらしい。そのことを耳にしました。そこで、その詳細を聞くため商社の方が、関係者を集めてWeb会議を開くことになりました。
会議の意図
これは明白で、保証が無くなるのであれば、代替え案等があるのか。これが本題になるはずです。
恐らく、この会議の出席者全員が同じ意図を持っていたと思います。大手企業担当者以外は。
実際に会議が始まり、大手企業担当者が現状についての説明を行いまいました。次に、代替え案等の説明に入るのかと思いきや
「こちらからの話は、以上になります」
で、終わってしまいました。
「え?ウソ、これだけ?」
他の参加者がどのように感じていたかは定かではないですが、これが正直な私の感想です。
10人程は参加していたと思いますが、これだけの話を聞くために、Web会議を開いたのだと思うと、正直な所
「時間を返せ」
と思いました。日本のコンピューター業界をけん引してきた会社が今ではこのような状況だと思うと、少し悲しくなりました。
その後、他のメンバーが黙ってしまったので、私が突っ込みました。
「それは、つまり代替え手段はないという事でしょうか?」
すると
「先ほど申し上げた通り、アップデートすると保証が無くなります」
と、こちらの意図を汲まず、同じことを繰り返したので「お前は政治家か!」と突っ込みたくなりましたが、ここは大人の対応としました。
今回の原因は以下にあると思います。
なぜそんなマイナーOSを利用したか
セキュリティーについては、全く考えられていなかった
人のためではなく、利益に傾倒していた
何度も繰り返しますが、誰もが知っている日本のコンピューター業界をけん引してきた会社が、これです。
会議は意図と目的が明確でなければいけません。可能な限り発言する人だけの少人数で開催すべきです。多く人の大切な時間を無駄にする代償が大きいことを知っておく必要があります。
まとめ
恐らく、技術というよりも、人としての進化が止まってしまったがことが、日本で失われた30年と言われている原因の一つではと感じます。
「点」で見ると、勤勉で優秀な技術者が多く、今でも世界に通用する技術を持ち合わせています。
しかし、それを「点」→「線」→「面」に、さらに「体」にしていくには、人と人とのつながりが必要となります。
今後、国は関係なく、世界中の人々が協力し合い、様々な困難を乗り越えていく必要があることから、そのような関係性を構築するための、経験・知識・行動、これが重要になると感じます。
私自身としても、そこにフォーカスして大切なことを伝え続けたいと思います。