これは、REMnuxなどでも導入されている対象ファイル中からbase64でエンコードされているような箇所を抜き出してくれる便利ツールだ。ltraceコマンドである。前者はシステムコール、後者はライブラリ関数呼び出しをトレースしてくれる。多くの場合、straceをかませることで、大まかな挙動がわかるケースが多い。これらのコマンドを利用する際には-fオプションを使ってスレッドも追うように設定したり、-sや-vのオプションも効果的だ。以下のシステムコールに着目するべき。ptraceまた、Linux環境であるためGDBを使った解析も効果的だ。プラグインを利用することをおすすめする。C&Cサーバへの通信なども確認したい場合があると思うので、動的解析する際はtcpdumpでパケットをキャプチャしておくのが望ましい。静的解析ここは、Windowsマルウェアとあまり変わらずIDAやGhidraを使うのが良い。軽く見たい程度であればobjdumpでもOK。C&Cサーバとのやり取りがある場合、switchやjmpテーブルによる分岐処理などが含まれているケースが多いので、IDAなどのグラフビューでそういった処理を探すとC&Cサーバのやりとりの処理を見つけやすい。自己防衛機能マルウェアによっては解析を妨げるような処理が含まれている場合が存在する。代表的なものをいくつか記載する。簡単なPoCは、anti-debugging-sampleにまとめておいた。IoTマルウェアでは、x86やamd64以外のアーキテクチャの検体を解析する場合がある。その場合には、qemuを使ってエミュレートするような解析環境を整える。あるやり方が分かりやすかったので共有しておく。おわりに広く浅くLinuxマルウェアについて紹介してきた。Linuxマルウェアは特にIoTマルウェアとして猛威をふるっている。何かと解析することはあると思うので、その際には本記事で得た知見を生かしてくれるとうれしい。