この記事は freee Developers Advent Calendar 2023 6日目です。
はじめまして!freee の CSIRT に所属している mao と申します!
freee Developers Hub へは、以前インタビュー形式で参加したり、記事の片隅に仮の姿で映り込んだりしていましたが、ようやく自分で書く運びとなりました。がんばるぞ!
さて、私は CSIRT という部署に所属しています。CSIRT は一般に Computer Security Incident Response Team の略とされているセキュリティ用語ですが、freee においては社内全体向けのセキュリティに関することを担うチームになります。
CSIRT の業務の一つ一つを紹介しようとすると年が明けてしまいそうなので、今回はその名前にもあるインシデント対応( Incident Response )について紹介したいと思います。
題して、2023年ほんとにあったインシデント 3選。いってみましょう!
その1 : お客様の住所取り違え事件
大変ありがたいことに freee もたくさんのお客様にご利用いただいており、その中で営業活動や広報活動など、さまざまな形でお客様にご連絡する機会があります。ただ、そのような業務で発生してしまうのがオペミス(オペレーションミス)。もちろんオペレーションには手順があり、メンバー内でナレッジの共有もします。それでも『事故ゼロ』にはできないのが辛いところです。
今回紹介するケースも、ちょっとしたイレギュラーにより基本的な手順を外れてしまった末のインシデントでした。
発生時、実施していたのは特定のお客様の住所を抽出するという作業でした。いつも行っている作業ではありますが、この時の対象顧客にはデータベース上の不備があり、いつものオペレーションでは対応できませんでした。担当者は機転をきかせて別の方法で抽出を試みたのですが、その結果同じ社名の別会社の住所を抽出してしまいました。
このインシデントは、オペミスに気づいたその部署のメンバーから報告を受け、CSIRT を中心としたメンバーとインシデントレスポンスを行いました。CSIRT では顧客情報を含む機密情報の取り扱いを定めている関係上、このようなインシデントの対処に関わります。他にもインシデントの内容によっては PSIRT やリスク管理部門の方が中心となって取り組むこともあります。
ちなみに習熟度の高い人がインシデントレスポンスをやると情報の整理や方針決めがものすごく早いです。これは私がインシデントレスポンスを始めたての頃、初めてお会いしたリスク管理の方の手際についての感想です。
その2 : 海外からのアクセス頻発事件
CSIRT で対応するインシデントは、先ほどのように社内からの報告を受けて対応を始めるほか、XDR*1 からのアラートを元に対応を始める場合があります。その中で、今年特に多かったインシデントが、海外からアクセスがあったことによるものです。
freee には海外のグループ会社があり、また海外出身者もいるため、出張や帰省をしているメンバーが海外から社内リソースに接続するケースがあります。一方で XDR はベンダーが作成した検知ロジックを用いて検知するので、海外から社内リソースへ接続することを「もしや端末や認証情報が海外の怪しい人の手に渡ったのでは?」とアラートしてくれます。そう、これは気を利かせたXDR くんのありがた迷惑な事件なのです。
とはいえ、本当に端末や認証情報が盗まれたとしたら大問題ですから、最初のうちは全てのアラートを確認し、誰に関するインシデントなのか、その人本人が海外で仕事をしたんじゃないかを確認して回っていました。結局本当にインシデントと呼ばれるようなケースはなかったのですが、XDR くんをオオカミ少年としてしまうわけにもいかないので結構労力はかかりました。とはいえ、そこに時間をかけすぎてもしょうがないので、ある程度チェックする勘所をまとめたり、XDR の設定で不要な検知を減らすよう調整するなどの創意工夫は重ねています。
私自身、XDR でこのような検知ができることを初めて確認したので、最初はその機能にただただ感心したのですが、すぐに XDR は入れるだけではダメであり組織に合わせた設定が重要なんだと思い知りました。
その3 : アダルトサイトへの定期アクセス事件
最後は今年イチ笑顔になったインシデントです。
いつものように XDR を見ていたところ、繰り返し実施される不審な通信が。送信元はとある社員の端末、宛先はアダルトサイトでした。流石に会社の端末でアダルトサイトをみてるのはおかしいし、何より頻度が高すぎる。ということで詳細を調査したところ、ブラウザの通知機能に登録されていたというインシデントでした。
ブラウザの通知機能に不審なサイトが登録されていることが、直接的に情報流出となる可能性は低いです。今回もそのような事態は確認されなかったので一安心ではありますが、この通知をきっかけに不審サイトに誘導される可能性はあります。
詳しくはこちらの IPA(情報処理推進機構)の記事を読むとわかりやすいかと思います。ちょうど図1 にあるステップ1 として通知の許可をしてしまい、ステップ2 が起こりうる状態ということですね。
対応としてはブラウザの設定画面から通知削除をするほかありません。そうなると CSIRT だけでは対応できず、この端末を使っている社員に連絡しなくてはなりません。でも想像してみてください、もしあなたが「アダルトサイトからの通知が登録されてるから削除して」と言われたら……。と思いきや、
めっちゃ笑ってくれるし、対応も早い。本当に助かりました。このテンションが freee らしいなと、連絡したこちら側としても気分よく解決できたインシデントでした。皆さんも不用意にブラウザの通知を許可しないことはもちろん、もしセキュリティ担当に話しかけられても怯えたり嫌がったりせず、気楽に楽しく接してもらうことを心がけてもらえればと思います。
おわりに
私自身、今年 1月に freee に入社し、そこで初めてインシデントレスポンスという業務に携わりました。結果として今回挙げたようなインシデントや、挙げなかった・挙げられなかったインシデントと出会い、いろいろな学びを得ることができました。技術面もそうですが、freee の事業の特性だったり、あるいは freee で働く人たちの個性だったりを知ることもできてとても充実した 1年でした。
ちなみに今回紹介していないインシデントですと、機密性の高い情報を不適切な場所に書き込んでしまうケースも多いです。その流れで生まれた「credentialをSlackに書くな高校校歌」というムーブメントもとても面白いので、本日公開になる credentialをSlackに書くな高校校歌 - freee Developers Hub もぜひ読んでみてください!
*1:Extended Detection and Response の略。エンドポイントやネットワークといった複数のレイヤーを監視し、インシデントの検知・対応を行うためのソリューション