km_output

お勉強と趣味のアウトプット

B2B SaaS Tech: 避けては通れぬセキュリティに参加してきた

イベント参加レポート

B2B SaaS Tech: 避けては通れぬセキュリティ

に参加してきたので自分用にまとめる。

イベント概要

B2B SaaS Tech: 避けては通れぬセキュリティ

https://b2b-saas.connpass.com/event/137931/

セキュリティツール検証、個人情報保護

藤代 俊祐

BPM株式会社 SFH

資料

https://speakerdeck.com/bpm/shang-chang-shen-cha-niyao-qiu-sareru-sekiyuriteidui-ce-toha

上場企業に要求されるセキュリティ

・義務付けられているものが必要

システム管理基準 追補版(財務報告に係るIT統制ガイダンス)

https://www.meti.go.jp/policy/netsecurity/tuihoban.html

※上場審査の際はこれを読んで対策しておけばOK!

セキュリティ対策の定義は難しい

何を守るか、どう守るか・・・

各方面の利益を守るために必要な対策を考えるしかない

JIS規格の原本は閲覧有料!

SREチーム運用

杉浦 英史

freee株式会社 CSIRT専属エンジニア

資料

https://speakerdeck.com/eijisugiura/sutatoatupugasecuritywosrekaradan-bao-suruniha

クラウドの会計ソフト

ターゲット:従業員300人以下

経営陣が未来を予測する手助け

監査向け書類を発行できる→株式公開すぐできる体制に

会社の財務情報を扱う→情報漏えいは絶対にあってはならない

そうならないよう

なったとしても記者会見が開けるような体制を

開発文化

品質を犠牲にしない!

全てパブリッククラウドにサーバ有

Cyber kill Chain

軍事用語:7段階の侵入方法を想定

防ぐために:

パッシブディフェンス ※ログとらないと検知できない

アクティブディフェンス

ログは全てS3へ

内部からの侵入:IP制限、MFA、コンソールは全てロギング

SSMに入るときはslackで通知、【特殊】監査法人がslackを見てくれる

人に負担がかからないような工夫を

PR出さないと変更できない

インフラのコード化、仕組みづくり

SREって何をしてる?

新しい環境への先導役:技術的な障壁を解決する

コンテナヒーローが一人会社にいる・・・

知見を借りながら実装

DevSecOpsが目標

新人研修でHardening:インフラ関係

月1回の「失敗js」失敗から学んだことを共有する

組織としてSecureに同じ文化を共有し

slack障害に備えてメールにも飛ばすようにしている

堅牢なアプリケーション設計

和田 浩一

弁護士ドットコム株式会社 Tech Lead兼ラボコーディネーター

資料

https://speakerdeck.com/koichiwada/first-steps-to-build-a-robust-and-secure-application

クラウドサインとは

クラウド型の電子契約サービス

送信者はPDFでアップロード、登録の必要なし

要件:

堅牢

受信側はアカウントを創らなくても使えるように ※この非対称性が難しい

開発で気をつけたこと
  • 設計:状態遷移によるデータ管理

予想外の動きが起きないようにする

  • Go言語を使用

コンパイル時に文法エラー拾える

メモリリーク起きにくい

外部ライブラリの呼び出しが比較的簡単

フォーマット整形機能があり、コーティングスタイルがそろう

  • こまめにサーバにデータを保存、ユーザ(ブラウザ側)にデータ残さない

アプリが落ちても再開できるように

 プロセス監視により落ちたら自動起動

 ブラウザのリロードで中断部分から再開可能

  • RDSを使用

  • ファイルはS3へ

漏えい防止

不要な情報が外に出にくくする

  • ID UUID V4 乱数でIDを創り、推測できないURLを作成

※プライマリーキーがランダムすぎるとインサートの速度が落ちるため、全てがこの実装ではない

ネットワーク対策

HTTPS

VPC

WAF

OSSE

エスケープを忘れない!

HTMLはGoのライブラリを使えば大丈夫

ただしコメントタグも自動で消される・・・

  • jQuery.html()を使わない

・直接のDOM操作を避けるためVue.jsを使用

  • SQLを直書きしない

自分たちが知らない脆弱性に対して:

フレームワークの使用 Revel

VAddyによる脆弱性診断

+外部機関の脆弱性診断ときどき

脆弱性検査

神戸 康多(kotakanbe)

フューチャー株式会社 シニアアーキテクト

OSS脆弱性スキャナ「Vuls」作成者!

脆弱性のいろいろ

web

プラットフォーム

 資産管理的 →この紹介がメイン。Vuls

 ネットワーク系

パッケージと脆弱性DBの情報を突き合わせするから日々回せる!

脆弱性を突くコードがあれば、素人でも攻撃できる

Gitなどに公開されている exploit-dbなどのサイト

awesome poc

You Tubeなどで調べても出てくる・・・

攻撃コードのサンプル)

https://github.com/knqyf263/CVE-2018-7600

※自分の環境で試すこと!

→毎日チェックしないと危険!Vlusなどで対策を。

  • インターネットに公開=全世界から狙われると思った方がいい

  • アンチウイルス、WAFは未知の脆弱性にキャッチアップするのに時間差ある、

自分で対策しないとダメ

パッチ当てていないのは論外。「パッチ管理どうしていますか?」でセキュリティの習熟度が分かる

脆弱性に対して・・・

Vlusで日々対策を!

cron,スケジューラーで日々回す

関係のある脆弱性しか出ない

スキャンできるものがたくさん!

コンテナ

ライブラリ

ネットワーク系

WordPress

※全部Docker使用ならTrivyで対策可能

検知した脆弱性の95%は即時に対応しなくてよい

FutureVulsで優先順位づけができる!

https://vuls.biz/

パネルディスカッション: どこまで守るセキュリティ

モデレーター:三木 明(threetreeslight)

Repro株式会社 VP of PeopleOps

→時間がおしたためなし

感想
  • ツールが障がい等で使えない際の対策として、代替手段を一つは持っていないといけないと感じた。

ツール対策は悩ましいところではあるが。

  • Go言語の長所が分かった!

フォーマット整形できるのはチーム開発するうえで大きなポイントだと思う。

  • Vlusのすごさが分かった!

手動ではなく自動で脆弱性を検知できるツール、くらいの認識しかなかった。

どれだけ幅広い脆弱性を検知できるか図表を見て初めて実感でき、そのような機能がOSSとして公開されているなんて素晴らしいと感激。