叡智の三猿

〜森羅万象を情報セキュリティで捉える

当サイトは、アフィリエイト広告を使用しています。

ソースコードと業務マニュアル

SESエンジニアとして客先に常駐すれば、仕事をしながら、自分のスキルを高めることができます。

自分のスキルが高くなれば、より自分を高く売ることができます。

客先に常駐するのは、精神的な苦痛を伴うかもしれませんが、考え方を変えれば、SESの仕事はいいことづくめかもしれません。

いっぽう、SESエンジニアは、情報セキュリティには細心の注意を払う必要があります。

もし、客先で使用しているシステムのソースコードを誤って公開したら、重大な情報セキュリティインシデントになります。

情報セキュリティインシデントが発生したら、会社は以下にあげる多くの対応をしなければなりません。

  1. インシデントの検出と評価:インシデントを検知し、その深刻度や影響度を評価します。
  2. インシデント対応チームの発足:情報セキュリティの事故が起きたら、CISOを中心としたインシデント対応のためのチーム(CSIRT)を発足します。
  3. インシデントの暫定対処:CSIRTは問題を早期に封じ込めることで、拡大を防ぐことがミッションです。そのため、インシデントの原因となったシステムやコンピュータ機器、ネットワークを分離します。
  4. 被害の評価と連絡:ログを解析することで、インシデントによる影響度を評価します。具体的な被害状況や、情報流出の件数などを関係者に連絡します。
  5. コンプライアンス対応:情報セキュリティインシデントに関するコンプライアンス要件に従った行動をします。総務省や警察など、関係当局への公表です。
  6. 再発防止策:インシデントが発生した根本原因を分析し、再発防止策を検討します。セキュリティポリシー、セキュリティ対策を抜本的に見直します。
  7. 利害関係者とのコミュニケーション:インシデントの利害関係者(顧客、取引先など)に対して、適切なコミュニケーションの場を設けます。

インシデントの内容によって対応することは多少変わります。ただ、これを読んだだけで、インシデント対応の大変さが伝わると思います。

そのいっぽう、インシデントを発生させた、エンジニアのアタマのなかは、その深刻さを理解できてないことがあります。

さすがに「顧客情報」を流出させた場合は、深刻だと分かります。

でも、流出したのが「ソースコード」だとしたら・・・そこまで大した問題とは感じにくいのです。

もちろん、ソースコードが著作物として保護されている場合、そのコードを誤って公開したら「著作権侵害」になる知識は持ってます。

しかし、ソースコードの流出による「実害はなにか!?」と聞かれると、回答につまります。

話はすこし飛びます。

新大久保にいくと、多数のK-POPアイドルの写真が販売されてます。その多くは事務所やアイドルには無断で販売されてます。アイドル写真は専属のカメラマンや、所属事務所が撮影し、権利を所有しています。したがって、アイドルの写真を無断で販売することは、著作権侵害のはずです。

しかし、アイドルの写真を販売しているお店が摘発されるという話は耳にしません。

それは、当のアイドルや事務所への実害がないからかもしれません。無断で販売されている写真が、国境を越えた認知度のアップに寄与すると考えているかもしれません。

要はソースコードが公開されても、会社の実害がないのであれば、大して問題はないんじゃないか?と見ることもできます。

ソースコードは一見すると、英字と記号で示された無味乾燥な文字列です。

そこから、絵画のような創造性を感じ取ることはできません。

そのことも、流出による被害を感じにくい要因かもしれません。

しかし、それは ソースコードに対する捉え方が単純すぎると思います。

わたしは、会社のシステムで使われるソースコードの本質は、業務マニュアルだと思ってます。

もし、会社にコンピュータシステムが導入されてなければ、仕事のすべては人の手による作業です。

業務マニュアルは、人の作業を効率化するためのツールです。

そして、コンピュータシステムは、人の作業をコンピュータに置き換えることです。

ですので、業務マニュアルはソースコードと同じ目的を有しているのです。

ソースコードが公開される事態は、会社で使われている業務マニュアルが外部に流出したことと捉えるべきです。

そうすると、より問題が見えやすくなると思います。

わたしは少なくとも3つの問題があると思います。

ひとつは、業務マニュアルには、個人情報や機密情報の在り処が書かれている可能性があります。

「来店客が新規顧客か、既存顧客かを調べるため、ロッカーに保管してる顧客台帳と照らし合わせする」ことが、マニュアルに書かれているなどです。

ソースコードにもそれに類することが記載されているかもしれません。

たとえば、ソースコードに顧客管理システム(CRM)へのアクセスするためのAPIキーが書かれていたらどうでしょう!?サイバー攻撃を企む人が、そのキーを悪用して、顧客情報を搾取するかもしれません。

ふたつめは、業務マニュアルは、とどのつまり、会社の経営や事業の戦略を具現化したものだということです。

会社毎に業務マニュアルが異なるのは、そこには会社独自の戦略が、作業レベルで記載されているからです。

一見、無味乾燥なソースコードには、明確なビジネスロジックが書かれてます。それが第三者から見えるということは、会社が競争に勝つための戦略が表に出てしまうことになるのです。

そして、3つめは、業務マニュアルの不備です。

完全な業務マニュアルは存在しません。仕事を無駄なく、進めるための業務マニュアルですが、何かしらの不備により、業務の品質が保障されないプロセスがあります。

ソースコードも同じです。

攻撃者はソースコードに潜む欠陥を見つけ出し、それを執拗に攻撃します。システムの脆弱性をつかれると、不正アクセスを許してしまう可能性が高くなります。

こう考えると、ソースコードの流出は、会社にとって想像以上に大きな痛手をこうむる可能性があることが分かります。