集中開発コースのZトラック(アンチウイルス実装ゼミ)に参加したまとめです。
セキュリティ・キャンプ全国大会2018~Zトラック参加記~山川 大貴@dai_shopper3
View Slide
目次 Zトラックの概要 Zトラック(Z2コース)でやったこと まとめ2
Zトラックの概要このセクションのみ忠鉢先生のスライドを許可を得て、引用・編集して使用していますhttps://speakerdeck.com/yuzuhara/wrapup-z-2018 3
4
Zトラックのコース紹介 Z1:高品質なELFマルウェアシグネチャ(yara)の作成 Z2:高精度なELFマルウェア分類・検知 Z3:yaraシグネチャマッチングの高速化 Z4:圧倒的高速なIDS(パケットフィルタ)の実装5
Zトラックの最強講師陣 Z1:アンドリアン ヘンドリック (@unixfreaxjp) 株式会社ラック Z1:丑丸 逸人(@ucq) 株式会社サイバーディフェンス研究所 Z2:大居 司(@a4lg) リサーチエンジニア Z2:忠鉢 洋輔(@ybachi) 株式会社アクティブディフェンス研究所/筑波大学 Z3:新屋 良磨 (@sinya8282) 秋田大学 助教 Z4:浅田 拓也(@syuu1228) ScyllaDB Z4 : 城倉 弘樹(@slankdev) NTTコミュニケーションズ株式会社6
Zトラックの流行語7
Zトラックの流行語8
Z2コースで学んだこと9
Z2コースの到達目標 ELFマルウェアの検出・分類 特徴量の抽出・分類器の作成 決定木アルゴリズムの利用 ELFファイルの完全理解10
事前課題(キャンプ初日までの課題) ELFファイル構造の勉強 ELFのセクション名を読み取るプログラムの作成11
特徴量の抽出 課題1:ELFファイルから動的リンクヘッダの文字列テーブルを読んでみる 課題2:VirusTotalの結果を用いてベンダーごとに検知できた個数を表示する VirusTotalから取得したjsonファイルの加工 マルウェア検体の総数(3704個) Fussy Hashingの勉強 ssdeepコマンド:類似度を出力してくれる 課題3:特徴量の取得をするプログラムを作成12
Fuzzy Hashingについて元のファイルのFuzzy Hashing値12:RxRvIcAQhAYIeaPvS1QWf7eVSsliCwoUjQlWoUjlJLGoXdFloqUkMN1YTPt4B:RnAcAQhAYoS1QMeVSslWooQlWoolhGtV編集済みファイルのFuzzy Hashing値12:RxRvIcAQhAYIeaPvS1LaVSsliCwoUjQlWoUjlJLGoXdFloqUkMN1YTPt4B:RnAcAQhAYoS12VSslWooQlWoolhGtqU3→マルウェアの亜種検知に使える少し編集を加える13
動的リンクヘッダとFuzzy Hashing 動的リンクヘッダの文字列テーブルを抽出する意味 共有ライブラリ名が書かれている 抽出した文字列テーブルをFuzzy Hashingを取って比較似たような共有ライブラリを使っているマルウェアの亜種を検知できる14
判定器の作成 特徴量からマルウェアの判定器を作る ELFファイル(マルウェア)の分析 ソースコードを読む(今回はたまたまソースコードがあった) 特徴的な文字列を発見する Fuzzy Hashingを比較15
発見した怪しげな文字列 エラーメッセージが固まって検出されている ‘/bin/sh’ ‘/etc/passwd’ ‘/proc/self/exe’などなど… ちなみにこんな文字列もありました Got root!(← 挑発されてる)16
作成した判定器Fuzzy Hashing・特徴的な文字列で13種類作成した13種類の判定器 17
実験・評価 良性データセットの作成 Web上のdebファイルを落としてくるプログラムの作成→http://ftp.riken.jp/Linux/debian/debian/pool/ 3日目で作成した13種類の判定器を用いて「マルウェアかどうか」を判断する 講師の用意した決定木を利用(アルゴリズムはC4.5) クロスバリデーションで評価18
決定木の出力結果一番マルウェア分類に寄与しているのは‘/bin/sh’の判定器出力結果の抜粋 解析木の全体図:判定器:判定結果19
分類結果評価データの総数:3719個評価データの中で正常なデータ:1870個評価データの中でマルウェアの総数:1849個正常にマルウェアを検出できた数:875個(約47.32%)誤検知:1個(約0.05%)C4.5 Good BadGood 1869 1Bad 974 875分類結果評価データのラベル20
まとめ~セキュリティキャンプ全国大会2018に参加してみて~21
まとめ(感想と参加するメリット) とにかく一日中頭をフル回転した 今後の学習に関するモチベーションが上がる セキュリティキャンプ全国大会に行かなければ会えない数多くの人 様々な分野の最強講師陣 意識の高い参加者やチューターの方々→会ってお話して仲良くなるチャンス!!! 集中開発コース 講師と1 on 1で様々なものを学習・開発できる 期間中ずっと指導していただけるのでより仲良くなれる アンチウイルスに興味ある人はZトラックへ是非応募してみてください!22
23