日日是見習

主にプログラミング、ソフトウェアプロセス、チームビルディング、たまに音楽の話など

Ghidra忍者入門(勉強会/ハンズオン)に行ってきました

はじめに

大和セキュリティさん主催の以下勉強会に行ってきました。  yamatosecurity.connpass.com

目的

マルウェア解析のためのリバースエンジニアリング手法ですが、組込みソフト屋も製品セキュリティを意識した取り組みとスキル向上が必要になってきましたので。
ちなみに以下も参加してました(ブログに書きそびれた)。
 2019年 大和セキュリティ MAIR忍者チャレンジ(神戸) (9月22日) - connpass

概要

Allsafe*1の方がGhidra*2の使い方をマルウェア解析を題材に解説する勉強会&ハンズオン(6時間程度)

Ghidra(ギドラ)の基本的な機能と操作を聞いた後、実際にリバースエンジニアリングの問題を解いていく形です。 IDA(アイダ)との違いも詳しく説明されていました。

Ghidraの概要は↓にも書いてあります(今回の勉強会の資料とは別です) https://www.netagent.co.jp/study/blog/hard/20190530.html

内容

 以下のオンラインサンドボックス(動的解析)と並行して確認。  any.run

  • 有名なマルウェア(EternalBlue関係)の解析説明
     ※この辺りから難しくてついていくのがやっと、、、

  • N-day Exploit  GhidraのVersion Tracking機能を使ってセキュリティアップデートされる前後のモジュールを比較。  Ghidraで修正した脆弱性内容を具体的に(関数レベルで)特定する

感想

  • Ghidraのデコンパイラ結果を修正するシーンが結構あった(特に構造体など)。
     → 自分でアセンブラを見て修正する必要がある。アセンブラを読むスキルは必要。

  • Crackmesを解くときにSloverプログラムを作ったが自分はとりあえずgccで書いちゃうけど周りはPythonで書いてた。内容的に言語はどっちでもいいんだけど、時代に取り残されてる感じがした。

  • 自分でSloverプログラムを書くのではなくCyberChefというオンラインツールがあるらしい。最初は使い方わかりづらかったが高機能で便利。  

    www.slideshare.net

最後に

IoTセキュリティも色々なところで見かけるようになってきました

2019/12/29(日)@大阪で以下の勉強会もあるようです。  naniwasecurity.connpass.com

*1:サイバーセキュリティ技術系同人サークル

*2:NSA(米国家安全保障局)が今年3月に公開したリーバースエンジニアリングスイート

*3:Reversing技術を学ぶために作られたやられ役プログラムでアクセスコードやパスワードが隠されている