Cybozu Meetup #7 セキュリティに行ってきました。

イベントページ

https://cybozu.connpass.com/event/63652/

イベントの趣旨(引用)

サイボウズでは製品セキュリティの品質向上をミッションとして PSIRT( Product Security Incident Response Team ) が活動しております。
PSIRT では 2014 年 6 月より、「脆弱性報奨金制度」を運営しております。 ご報告いただいた脆弱性情報を適切に評価し社内にフィードバックしております。

脆弱性報奨金制度のインパクトが大きいために他の活動はあまり目立っておりませんが、実は報奨金制度の運営以外にも様々な取り組みを行っています。
この Meetup では、実際にサイボウズの PSIRT がどのような取り組みを行っているかをお伝えしようと思います。

以下、講演内容を聞きながらのメモ

もしかしたらところどころ間違っているかもしれないので

その際はご指摘ください

講演1つ目

PSIRT の取り組み

講演者:ヤマニシさん

品質保証部に所属している

脆弱性評価などを日頃やっている方

CY-PSIRTとは?

製品のセキュリティ品質向上を目的にしたチーム

脆弱性情報の受付、評価、公開を行なっている。

脆弱性の検出について

  • 社内検証
  • 外部検証
  • 外部監査

が主にある。

ソフトウェア属性情報管理

扱っているサードパーティ製品の情報をDBにまとめている。

→サードパーティ製品に脆弱性があった場合に製品担当に連絡できるようにしている。

kintoneのアプリで脆弱性情報を集約している。

情報の公開

脆弱性認定ガイドラインを定めている

サイボウズで利用しているサードパーティ製品に脆弱性が見つかった場合に

サイボウズは問題ないですよという情報を発信している。

脆弱性検査のために

本番環境とはネットワークを分離した環境を用意している

セキュリティテストの実施

各製品の試験期間中にアクセス権が正しいかなどのセキュリティテストを取り入れている

社内検証はどのようにやっている?

試験仕様書を用意している

セッション・リクエスト・パラメータ等で網羅的に検証を実施。

脆弱性検証用のアプリを用意していて、それを元にテストを実施している

 (聴きながら思ったこと)AppScanのようなものを自前で用意しているのだろうか?

webアプリケーション診断ガイドラインというものが世の中にある

https://www.owasp.org/index.php/Pentester_Skillmap_Project_JP

今後はそれに合わせて脆弱性検査用アプリの内容を設定しようとしている。

外部検証について

社内とは別で、社外に検証を委託している

サイボウズのHPの検証は外部検証を行なっている。

外部監査について

外部の監査期間に、攻撃者の視点で脆弱性をつけないか監査をしてもらっている。

→(聴きながら思ったこと)監査結果を、パブリックに公開している?

CY-PSIRTの工夫

情報の管理

管理する情報が多い。

  • バグハンターの人からの問い合わせ
  • 報奨金の用意

などなど、やることが多い。

そこで、kintoneを使っている

脆弱性の情報は、脆弱性boxというアプリを使っている。

どこから報告された脆弱性か、脆弱性についての詳細などを書いている。

そこから、CVSSという計算機をつかって脆弱性を評価

業務内容

業務の内容が多いので、アプリを使って管理している。

  • 主担当やフロー
  • ドキュメントの場所など

そうすることで、誰が何をやっていて、誰に聞けば良いかというのが管理しやすい。

→(聴きながら思ったこと)画面を見せてもらったが、アーカイブ機能に優れていそうなツールだった。

業務の提案

品質向上のための取り組みをいろいろやりたい

自動検証ツールや、報奨金がといった要望があるが

そういった要望に対してサイボウズは割とすんなり通る社風

思いついたらとりあえずやる風潮

気軽に取り組める環境が大事

→(聴きながら思ったこと)そういう風潮が社内に根付いているのは、行動を起こす上でも、周りの理解を得る上でもとても大事だと思った。

ただし、人員不足がネック

調整事が多い

製品に対する決定権を持っていないので、プロダクト側との調整が大変。

脆弱性情報をいつ公開するか、など

バグハンターからの問い合わせも、問い合わせ管理アプリを使っている。

 問い合わせ管理アプリの画面見せてもらったが、写真などのシェアはNGだった。ただ、記載することなどが、あとから見てもとても明瞭になるような工夫がされているなと感じた。そういったやりとりのエビデンスを残す場所は、何をどう書くかを明確にしているととても書きやすそうで分かりやすいと思った。

メールのやりとりはメールワイズ。

どこで誰と調整するかを明確にする。

調整して、どこを折衷案とするかを考えるのが大変。

質疑応答

質問

社内検証・外部検証などはいつやるか?

答え

新機能を出すたびにやります。
ただ、外部監査については定期


講演2つ目

報奨金制度の近況

講演者:オオツカさん(オオツカさん不在のため、1つ目の講演のヤマニシさんが代わりに登壇)

報奨金制度を主に担当している。

2014年に報奨金制度スタート

現在で4年が経った

バグハンター合宿なども実施している。

延べ、240名が参加

年を追うごとに、システムは堅牢になりつつある。

最近、報告件数が減っているので、報奨金を上げている(5倍に上げている)

報告された内容が緊急レベルのものだと、50万くらいもらえる。

報奨金ランキングを見えるようにした。

ハッシュタグ:#CybozuBugBounty

制度の英語化をしている

海外バグハンターへのアピール

脆弱性評価の裏側

着信→受付→評価→クローズ連絡→クローズ

評価の流れ

CVSS V3に基づいて評価→レビュー→社内告知を作成→告知レビュー

今後について

バグハンターにとって魅力的な制度に保つ

質疑応答

質問

脆弱性報告件数が少なくなったなった理由だが、製品が堅牢になったと評価できる?

答え

そう思いたいが、きっとそうではない。
社内検証でもたまに出てくる。
また、報奨金を上げたら報告件数も上がった。

質問

バグの報告があって、クローズまで、平均どのくらい?

答え

最短だと1週間以内。長いと、1ヶ月とかかかる。1ヶ月かかるのはひどい話。

質問

アクティブなバグハンターはどのくらい?

答え

計測していないので分からないが、おそらく直近だと10~20人くらい。


公開された資料