Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

機械学習×セキュリティ

7,648 views

Published on

crash.academy AI・機械学習セミナーでの講演スライドです。(一部内容を加筆・省略しています)

Published in: Technology
  • Be the first to comment

機械学習×セキュリティ

  1. 1. 機械学習×セキュリティ 伊東道明
  2. 2. 自己紹介 法政大学 理工学部 知的情報処理研究室 4年 さくらインターネット アルバイト クリエーションライン アルバイト Cpaw 代表 ICTトラブルシューティングコンテスト 運営
  3. 3. 自己紹介 研究内容 機械学習を用いたIDSの精度向上 植物病害自動診断システム開発 趣味 自宅クラウド(*Stack, なんちゃってクラウド) ロードバイク
  4. 4. アジェンダ セキュリティの現状 機械学習×セキュリティ IDSでのパケット分類の研究
  5. 5. セキュリティの現状
  6. 6. セキュリティとは 情報やシステムをサイバー攻撃の脅威から守る システムなどのこと 物理的な攻撃に対するセキュリティから ネットワークセキュリティ、迷惑メールの フィルタまで様々なジャンルが存在
  7. 7. サイバー攻撃対策 情報化社会に伴い、新しい攻撃手法が日々 生み出されている セキュリティエンジニアの不足などもあり、 対策が追いついていない
  8. 8. サイバー攻撃対策 セキュリティ技術者の育成 セキュリティキャンプ、SECHACK365など セキュリティプロダクトの性能向上
  9. 9. サイバー攻撃対策 セキュリティ技術者の育成 セキュリティキャンプ、SECHACK365など セキュリティプロダクトの性能向上
  10. 10. サイバー攻撃対策 セキュリティ技術者の育成 セキュリティキャンプ、SECHACK365など セキュリティプロダクトの性能向上 機械学習
  11. 11. 機械学習×セキュリティ
  12. 12. 機械学習×セキュリティ スパムメール検知 WAF IDS マルウェア検知 その他
  13. 13. スパムメール検知 概要 正常なメールか、スパムメールかを判定 内容 メールの文面を自然言語処理の技術などを用いて 文書分類を行う 技術例 ナイーブベイズなど言語処理アルゴリズムが有効
  14. 14. ナイーブベイズ メールの文章Dが与えられた時、カテゴリSに 属している確率P(D,S)を求める 古典的な手法で、昔から使われている
  15. 15. スパムメール検知[動作例] 識 別 器 正常 スパム
  16. 16. WAF(Web Application Firewall) 概要 アプリケーションレイヤーで動作するファイアウォール 内容 ユーザからの入力文字列やHTTPヘッダーなどから 不正な攻撃を検知し、アプリケーションを保護 使える技術例 TF/IDFなど言語処理のアルゴリズムと確率的手法 などの組み合わせが有効
  17. 17. TF-IDF 文書中の単語に関する重みの一種 TF  出現頻度  単語AのTF値は、Aの出現回数/単語の総数 IDF  逆文書頻度(文書頻度はDF)  文書の総数をD、Aが出現した文書数をdとすると 単語AのIDF値は、D/dの対数 TF-IDF  TF・IDF
  18. 18. WAF[動作例] WAF 正常 攻撃 ・正規表現の自動生成+パターンマッチング ・言語処理+確率的手法で判定 GET /success.txt Host: firefox.com User-Agent: hogehoge Accept: */*
  19. 19. IDS(Intrusion Detection System) 概要 不正侵入パケットを検知する 内容 ホストやネットワーク上に流れるパケットを監視し、 不正なパケットを発見したらユーザに通知する 使える技術例 K-meansクラスタリング、SVMなど様々な手法が有効
  20. 20. IDS[動作例] パケット IDS 正常 攻撃
  21. 21. マルウェア検知 概要 システム内に侵入したマルウェアを検知する 内容 システムの挙動や、ファイルのパターンなどを監視し、 マルウェアに感染しているかを判断する 使える技術例 決定木、Deep learningなどが有効
  22. 22. マルウェア検知[動作例] マルウェア OS システム コール システムコールのパターンを検知
  23. 23. マルウェア検知[動作例] ホストwawef.xyz C&C サーバ 悪いURLを検知 マルウェアに感染 していると判断
  24. 24. その他 モデルの漏洩 モデルの情報は機密情報の1つ ブラックボックステストを繰り返してモデルを搾取 防御手段の研究 他にもいろいろ
  25. 25. IDSの研究について
  26. 26. IDS×機械学習の研究 K-meansなどの教師なし学習による 未知の攻撃の検知 SVM、Deep learningなどの教師あり学習による 亜種攻撃の検知
  27. 27. 最強のIDS 定義ファイルのアップデート等なしで常に100% ゼロデイを含む全ての攻撃を検知してくれる
  28. 28. 最強のIDS 定義ファイルのアップデート等なしで常に100% ゼロデイを含む全ての攻撃を検知してくれる
  29. 29. 最強に近づく研究 Spectralクラスタリングを用いて精度を100%に 近づける研究 第79回情報処理学会全国大会にて発表
  30. 30. spectralクラスタリング データの距離構造を元にクラスタリングする手法 K-means clusteringと比べて、データの分布に 依存せずに効率的にクラスタリングが可能 30 K-means clustering spectral clustering
  31. 31. 31 affinity matrixの作成 Graph Laplacianの作成 固有値分解 クラスタリング spectralクラスタリング
  32. 32. affinity matrixとは 各データ間の類似度を表している行列 類似度は以下のように求める 32 ※σはパラメータ
  33. 33. affinity matrixとは 例: 33 𝑥1 1 0.3 0.0003 0.1 0.3 1 0.007 0.3 0.0003 0.007 1 0.1 0.1 0.3 0.1 1 𝑥2 , 𝑥3の類似度 𝑥1, 𝑥2, 𝑥3, 𝑥4 = {1,2,5,3 𝑥2 𝑥3 𝑥4 𝑥1 𝑥2 𝑥3 𝑥4
  34. 34. 34 affinity matrixの作成 Graph Laplacianの作成 固有値分解 クラスタリング spectralクラスタリング
  35. 35. Graph Laplacianとは 4 5 2 3 1
  36. 36. Graph Laplacianとは 4 5 2 3 1 隣接行列W 𝟎 𝟏 𝟎 𝟏 𝟎 𝟏 𝟎 𝟏 𝟏 𝟎 𝟎 𝟏 𝟎 𝟎 𝟏 𝟏 𝟏 𝟎 𝟎 𝟏 𝟎 𝟎 𝟏 𝟏 𝟎
  37. 37. Graph Laplacianとは 隣接行列W次数行列D 𝟐 𝟎 𝟎 𝟎 𝟎 𝟎 𝟑 𝟎 𝟎 𝟎 𝟎 𝟎 𝟐 𝟎 𝟎 𝟎 𝟎 𝟎 𝟑 𝟎 𝟎 𝟎 𝟎 𝟎 𝟐 𝟎 𝟏 𝟎 𝟏 𝟎 𝟏 𝟎 𝟏 𝟏 𝟎 𝟎 𝟏 𝟎 𝟎 𝟏 𝟏 𝟏 𝟎 𝟎 𝟏 𝟎 𝟎 𝟏 𝟏 𝟎
  38. 38. Graph Laplacianとは 隣接行列W次数行列D 𝟐 𝟎 𝟎 𝟎 𝟎 𝟎 𝟑 𝟎 𝟎 𝟎 𝟎 𝟎 𝟐 𝟎 𝟎 𝟎 𝟎 𝟎 𝟑 𝟎 𝟎 𝟎 𝟎 𝟎 𝟐 𝟎 𝟏 𝟎 𝟏 𝟎 𝟏 𝟎 𝟏 𝟏 𝟎 𝟎 𝟏 𝟎 𝟎 𝟏 𝟏 𝟏 𝟎 𝟎 𝟏 𝟎 𝟎 𝟏 𝟏 𝟎 − = − = Graph laplacian L
  39. 39. Graph Laplacianとは Spectralクラスタリングでは、隣接行列を affinity matrixにして計算
  40. 40. 40 affinity matrixの作成 Graph Laplacianの作成 固有値分解 クラスタリング spectralクラスタリング
  41. 41. 固有値分解 Graph Laplacianを固有値分解し、固有ベクトル を以下のように並べる
  42. 42. 42 affinity matrixの作成 Graph Laplacianの作成 固有値分解 クラスタリング spectralクラスタリング
  43. 43. クラスタリング K-meansクラスタリングでクラスタリング データ1 の特徴
  44. 44. 精度比較 K-meansとSVMと精度比較 KDDCup 1999というデータセットを使用 攻撃種類は10種類 偏差値を求め正規化、分散0の特徴を除去 最終的な特徴は36次元
  45. 45. 精度比較 未知の攻撃に対しての攻撃検知精度は向上 亜種攻撃に対してはSVMやDeep learningなど の方が有効
  46. 46. 精度比較 未知の攻撃に対しての攻撃検知精度は向上 亜種攻撃に対してはSVMやDeep learningなど の方が有効 調整可能
  47. 47. まとめ セキュリティには様々な分野がある それぞれで有効な手法が異なるため、闇雲に 試すのではなく目的とデータから有効そうな 手法を選ぶ 機械学習は手段であって目的ではない 機械学習×セキュリティはまだまだやることが 多く、これから発展するジャンル

×