honeypot

C3dc96f43b11b8b40420fa3380836d94?s=47 sec-chick
January 25, 2020
340

 honeypot

C3dc96f43b11b8b40420fa3380836d94?s=128

sec-chick

January 25, 2020
Tweet

Transcript

  1. 冴えない彼女(ハニポ) の育て方♭ 第7回 ハニーポッター技術交流会 sec chick (せっくちっく)

  2. 目次

  3. Who Am I • Name: sec chick(せっくちっく) • Job: プライベートSOCアナリスト

    • Hobby: ダンボー撮影 撮影中の周りの目は痛いですが、 私は元気です! Q. ハニポ何台持っている? A. 3台持っています! Q. ハニポの種類は? A. 以下の低対話型ハニーポット WOWHoneypot、Cowrie、 CitrixHoneypot、 Honeytrap
  4. 今回は 本当は自動化したものを公開しようと思っていま したが、間に合いませんでした。 作成途中の発表になってしまうことを ご了承ください。

  5. 自動化のきっかけ • とある日の出来事 君、Splunkのライセンス使いすぎ 今日から1ヶ月利用禁止

  6. Splunk ライセンス https://www.splunk.com/ja_jp/software/features-comparison-chart.html

  7. Splunk ライセンス フリー版は1日500MBまでの制限 500MBを超える日が30日以内に3回以上あ ると検索もデータ取り込みも不可 https://qiita.com/Kokin-chan/items/a23550bbdb4dc34 448d1 https://www.splunk.com/ja_jp/software/features-comparison-chart.html

  8. 自動化のきっかけ • 解析出来ない期間が1ヶ月 とりあえず待つか・・・・・・ →解析意欲が下がる

  9. 自動化のきっかけ • 解析出来ない期間が1ヶ月 サーバの容量が限界を迎え、 ログ取り込みが出来ない状態に・・・ →ログのロストにより、分析できない  期間が発生

  10. 自動化のきっかけ • 解析出来ない期間が1ヶ月 Splunkを使わずに楽して、できる ものが必要だな

  11. 自動化の目的 1. 楽にして解析できるデータを収集する →自分の興味があるものを分析するのに時間を使えるようにする 2. 安い基盤でも動ける構成にする →月1000円以下で植えられるようにしたい(みんなが使いやすいものへ) 3. マルウェアの自動収集機能 →Honeytrapでもマルウェアの検知をログに残せるようにする

    やるなら・・・・ より分析しやいハニーポットを作り、ハニーポッターを増やしたい!!! →もっと、ハニーポットを盛り上げたい!!
  12. 彼女(ハニポ)の構成

  13. ハニポの構成 VPS Docker Honeytrap WOWHoneypot Port 80 WOWHoneypot Port 443

  14. 自動化フロー

  15. フローチャート 1.Docker再起動および ハニーポットの ログログローテート 2.Honeytrapの マルウェアチェック 3.ログをcsv出力 4.Honeytrapの集計および Slack連携 5.WOWHoneypotの集計および

    Slack連携 1.日時でログローテートし、 Docker を起動 2.Honeytrapのログを確認し マルウェアのダウンロードを狙っ た通信がないかチェック 存在する場合、検知を取得 また、Virustotalへログ連携 3.日時でログローテートされた ファイルをcsvへ変換 4.Honeytrapのログをポート、 IP、マルウェアダウンロード先 で集計し、Slackへ連携 5.WOWHoneypotのログをIP、 URIで集計し、Slackへ連携 URIにはどの製品へのアクセスを 狙ったものかを追記 6.ブログ更新 マルウェアチェックや csv化はpythonで実装
  16. ログローテート、Docker再起動

  17. Docker再起動、ログローテート • Dockerの再起動 イメージをリフレッシュするため Dockerを定期的に再起動 docker-compose -f /home/ubuntu/docker/ docker-compose.yml restart

    • ログローテート 1日1回のログローテート logrotateで実行 /home/ubuntu/docker/log/honeytrap/l og/attackers.json { ifempty #ログファイルが空でもローテーション dateext #末尾に日付(YYYYMMDD) dateformat _%Y%m%d #日付のフォーマット missingok #ログファイルが存在しなくても エラーを出さずに処理を続行 daily #日次で実行 }
  18. Honeytrapのマルウェアチェック

  19. マルウェア自動分析フローチャート • Honeytrapのログからマルウェアの ペイロードがないか確認 • マルウェアのペイロードが含まれて いるかつ調査済み出ない場合に マルウェアを取得 <正規表現例> .*?wget.+?(https?[\/\w\:\.\-\%]+?)([

    ^\/\w\:\.\-\%]|\.\.) .*?wget[\s\+]+([[\/\w\.\-\:\%^(\-g)] {6,}?)([^\/\w\:\.\-\%]|\.\.) .*?curl.+?(https?[\/\w\:\.\-\%]+?)([ ^\/\w\:\.\-\%]|\.\.) Honeytrapの ログをオープン ペイロードに マルウェアURLがな いか確認 マルウェア URL 調査済み マルウェア取得 調査済みリストへ登 録 終了
  20. Slack連携

  21. フローチャート • それぞれのハニーポットの CSVファイルを 読み込み • WOWHoneypot系のログはURLの情報に ターゲット情報を追加 • 各情報を集計し、Slackへ連携

    <URLのターゲット情報> wow_path_research,target,CVE,reference,Date .env ,env,-,-,2020/1/18 .txt,text,-,-,2020/1/18 /admin/config.php,PHP,-,-,2020/1/18 Honeytrapの csvをオープン IP、ポート、 マルウェアURLを集 計 Slackへ連携 WOWHoneypotの csvをオープン URLにターゲット情 報を追加 IP,URLを集計 Slackへ連携
  22. 現状のステータス • CPU 仮想1Core、メモリ 512MB、SSD 25GB でも動いていることを確認 → Honeyttrap、WOWHoneypot(HTTPSでも稼働) •

    新たな攻撃を見つけるために新規パスを検知できるようにしている →正規表現のパターンファイルで紐づけているので、定期的に 配布できたらと考え中 • マルウェアダウンロードがshellスクリプトであった場合、 検知できないケースがある
  23. ハニーポットの楽しみ方

  24. ハニーポットの楽しみ方 ハニーポットの楽しみ方はたくさん存在 1. ハニーポットのログを見て、通信の勉強 → ハニーポットのログは悪意ある通信以外にも正常な通信もあるので  調査していくうちに様々な知識がつく 2. ハニーポットの自動化(プログラミングの勉強になる) 3.

    ハニーポットの情報発信 4. マッチ&レスポンスルールの作成 5. マルウェア解析 6. 社会貢献(悪意あるログを報告) →いくつかは自動化することでハードルが下がるのでは。。。
  25. 終わりに • ハニーポットの自動化について発表 • 自動化することによって自分の好きなことに打ち込める時間が増える (現在のブログ更新時間:何もなければ 5分ぐらいで作成可能) • 現在、プログラムは鋭意作成中 (Pythonは初めて)

    - 追加機能をどんどん追加したくなる (どれをオンオフするかは設定できるように調整 ) → 何かこんな機能もあったら、分析に役立つなどあれば、教えてください - 私のプログラム、汚すぎ問題  → コメントアウトはしっかり書こう・・・ - プログラムをあげるタイミングはいつにしよう? → どこまでテストしたらアップロードする? • 3月末までに公開したい・・・・・
  26. おしまい