こんにちは、プロダクトセキュリティ部の新沼(cw-niinuma)です。
最近、始業前や気分を変えたい時に白檀の香りのお線香を焚くのにハマっています。
いい香りに包まれて仕事するのって幸せですよね。
5/26(水)にChatworkが初めて主催するオンラインテックカンファレンス、『Chatwork Dev Day』の盛り上げ企画として、5月から弊社社員がほぼ毎日ブログを投稿しています!今回はその盛り上げ企画の一環として、プロダクトセキュリティ部でおこなっている脆弱性情報管理についてお話したいと思います。
イベント登録がまだの方は、ぜひご登録よろしくお願いします! lp.chatwork.com
今日が担当の私は、Chatworkのセキュリティ対策のひとつの脆弱性情報管理についてお話します。
これは私たちプロダクトセキュリティ部が、Chatworkのサービスに関する脆弱性についてどう考えて、課題に対してどう対策しようとしているかをお伝えしたい内容です。
取り組む理由と課題
Chatworkのセキュリティに関する内容は、プロダクトセキュリティ部部長の田中の記事をご確認ください。
creators-note.chatwork.com
私たちは、2019年9月24日に東京証券取引所マザーズ市場へ新規上場を致しました。
ユーザー規模の増加、プロダクトの成長にともないますます社会インフラとしての責任が多くともなうことになりました。
これまでも継続的にセキュリティ対策をおこなってきましたが、いくつか課題が見つかりました。その中のひとつが脆弱性情報管理でした。
課題としては、以下の2点が挙げられました。
- 脆弱性報告判断の属人化
- 現在利用しているライブラリやバージョンを正しく管理できておらず運用が後追いになってしまっている
これらの課題に対して対策をしていくことが求められました。
現在の運用
私たちのサービスは、すべてAWS上で稼働しています。 AWSの複数のサービスを組み合わせることで実現しています。
アーキテクチャに関することは、こちらのページでご確認ください。
上記は、メインのシステムがEC2からEKSに移行したという事例ですが、一部機能はまだ数多くのEC2インスタンスを利用しています。 使用しているミドルウェアや言語、フレームワーク、ライブラリも数多く存在します。
現在、私たちはNVDやJVNなどの脆弱性情報データベースから日々公開される脆弱性を収集し、サービスに影響を与えそうなものを判断しています。 対応が必要な場合は、他チームと連携して進めています。
この運用の課題を解決するため、脆弱性情報管理ツールの導入を検討しました。
脆弱性情報管理ツールについて
脆弱性情報管理ツールを利用するメリットは、以下の4点が挙げられます。
- 可視化
- ひと目で直感的に分かるダッシュボード
- チームでの利用
- 適切なアカウント権限管理
- 脆弱性情報のトリアージ
- 優先度が高いものから対応
- CVSSのスコアや攻撃コード公開情報などを参考
- 多くの脆弱性情報取得先
- NVDやJVD
- ライブラリやフレームワークのHP
調査した脆弱性情報管理ツール
以下の2つを調査しました。
- yamory
- FutureVuls
以下、それぞれについて説明します。
yamory
ビジョナル・インキュベーション株式会社が運営する、オープンソース脆弱性管理ツールがyamoryです。 yamory.io
導入事例
https://yamory.io/blog/category/case/
ここを見る限り、まだ導入社は少ないようです。
機能
yamoryの主な機能については、以下の通りです。
- マニフェストファイルをスキャンし、リポジトリ内にあるソフトウェアの情報を取得し脆弱性情報データベースとの照合
- サポート言語やスキャン対象一覧は こちらで確認
- 脆弱性情報・攻撃コードを自動収集
- NVDと主なライブラリやフレームワークのアナウンスページの情報をセキュリティアナリストが分析、アプリに適した形での反映を日次で行っている
- オートトリアージ機能
- 脆弱性の危険度と攻撃リスクを加味し、危険な脆弱性の対応優先度を自動で判別する
- 詳細はこちらで確認
- ダッシュボード上でステータス管理
- トライアルで試して分かりましたが、とても見やすいという印象でした
- JIRA連携
- メール・Slackで脆弱性情報検知やサマリー通知
- Chatworkへの通知求む。。。
2021/05/12時点でスキャン対象は、ライブラリとフレームワークのみです。
金額
サイトを見る限り、金額については問い合わせをして確認する必要があるみたいです。
詳しくは、こちらから。
FutureVuls
フューチャー株式会社が運営する、脆弱性管理ツールがFutureVulsです。 vuls.biz
導入事例
機能
FutureVulsの主な機能については、以下の通りです。
- 脆弱性スキャナのVulsを使って、OSパッケージ・ミドルウェア・プログラム言語ライブラリ・コンテナイメージも検出
- yamoryよりは幅広く対応
- リスクベースでの対応判断
- ダッシュボード上でのトリアージ
- タスクチケット管理
- メール・Slackで脆弱性情報検知やサマリー通知
- Chatworkへの通知求む。。。
金額
金額は、FutureVuls standardプランの場合、以下の通りです。
- 1インスタンス¥4,000/月
詳細はこちらで確認してください。
数多くEC2インスタンスを稼働している場合、結構な金額になりそうです。
まとめ
調査結果を元に、課題解決のためにどの管理ツールが私たちに合っているか検討し、次回の記事では採用したツールをどのように運用しているかお伝えしたいと思います。
脆弱性情報管理以外にも取り組みたい施策はまだまだあるので、よりいっそうプロダクトセキュリティ部を強化していきたいと思っています。
最後に、Chatworkでは一緒にプロダクトのセキュリティ向上に取り組んでいただけるようなエンジニア、またはマネージャを募集中です!エントリーお待ちしています! recruit.chatwork.com