マルウェア 解析。 マルウェア解析ハンズオン入門コース基礎編

マルウェア解析ブログ

マルウェア 解析

プロダクト開発第一部 室井です。 今回はマルウェア解析についてその一端を紹介したいと思います。 マルウェアの解析には大きく分けて動的解析と静的解析といわれる2つの手法があります。 動的解析は実際にマルウェアを動作させ、その動作を種々の手法で監視する事によって解析を行います。 マルウェアを動作させる際はサンドボックスという保護された実行環境に動作を監視するツールを用意して実行するのが簡易です。 サンドボックスには仮想化技術が使われることが多く、一度環境を構築すれば比較的容易に何度でも実行できます。 静的解析はリバースエンジニアリング等の技術を使って、対象のマルウェアのプログラムとしての機能を詳細に調査していきます。 静的解析はソフトウェア開発の経験やバイナリ解析などの技術を必要とし、基本的に大きなコストがかかります。 これらの手法は組み合わせて使うことが多く動的解析で動作の概要を把握 し、必要であれば静的解析を行うというのが一般的です。 弊社の製品である「」はマルウェア解析を自動で行うシステムです。 このFFR yarai analyzerを使って実際の解析結果から、自動解析によってどのような事が出来るのかお見せしたいと思います。 「」は解析結果をレポートとして出力し、その構成は全体の動作概要を示すサマリページと各プロセスの動きを示す詳細ページに分かれます。 まず、サマリページでマルウェアを検出したプロセス名等の概要を把握し、対象のプロセスの詳細レポートをみていきます。 図1がサマリページの一部です。 図1 サマリーページ(一部) サマリページでは 、まず解析ファイル概要として、マルウェアが検出されたかどうかを結果として表示しています。 また、ファイルの更新回数やネットワークアクセスの回数といった検査全体における動作の傾向が確認出来ます。 今回のレポートでは 図2に示すようにネットワークアクセスが多い所が目につきます。 図2 アクセスサマリ(TOP10) 次に、脅威を検出したプロセスについて詳細を見ていきます。 図3が脅威を検出したプロセスの詳細ページです。 図3 詳細ページ(一部) 今回の検体では2つの脅威が挙げられています。 1つ目は自動実行されるようレジストリを書き換えた動作を検出したものです。 詳細説明にも記載されていますがインストーラー等でこのような動作を行うことはありますが、今回は通常の実行ファイルがユーザの許可なく自身のプログラムを登録しており、この様な動作は不審だと言えます。 レポート上の「脅威の内容」にて、「プロセスがWindows起動時に自動できどうするようにレジストリを変更しようとしました。 この結果、Windows起動時にマルウェアが自動で活動を再開できるようになります。 インストーラでこの脅威を誤検出する可能性があります。 インストーラはデジタルサイン等を行うことで信頼性を上げることをお勧めします。 」といった説明を確認することができます。 上記の動作は図4に示すレジストリの更新情報からも確認することができます。 図4 レジストリの更新情報 2つ目は頻繁なSMTPアクセスを検出したものです。 短時間で多様なIPに対して頻繁にSMTP送信を行うことは通常ではあまりなく 、スパムメールを送信するマルウェアによく見られる特徴なため、不審な動作として検出しています。 レポート上の「脅威の内容」にて、「SMTPにより大量の不審なコマンド送信を検出しました。 スパムメールの送信を行なっている可能性があります。 」といった説明を確認することができます。 また、直接的な脅威としては検出されていませんがファイルの更新履歴を確認すると、通信に使用すると思しきDLL Packet. dll を自ら生成しています。 このような動作も合わせて考えると不審な動作と言えるでしょう。 上記の動作は図5のネットワークへのアクセス情報を確認すると様々なIPに対してSMTPパケットを送信しているのが確認できます。 図5 ネットワークアクセス情報 この様に動的解析では監視した結果から全体的な動作を把握する事ができます。 動作を把握する事ができれば、一次的な対処として特定の通信をブロックする、レジストリを削除する、プロセスを終了させるといった対応を取ることができます。 また一次的な対処や、静的解析等の詳細な調査の必要性の判断、静的解析する際の初動調査として動的解析結果は非常に有用な情報になります。 「 」ではこの様な情報を、専門的な知識のない方でも判断しやすいようなレポートの出力を心がけています。 関連記事.

次の

最短距離でマルウェア解析職人になる方法 − @IT

マルウェア 解析

はじめに これはの22日目の記事です 今夏ののチューターをやったときあたりから、本格的に解析に興味が湧いてきたので、色々調べたことを公開するエントリを書くことにしました。 解析というものは独学でやるには敷居もリスクも高く、企業や研究機関に所属していないと本格的に行うことは難しいと思います。 そこで、ここでは趣味でやる解析と称して、出来るだけ敷居を下げられるように色々と解析関連の資料をまとめました。 ただ、私は解析については全くの初心者で、このエントリで私が解析について指南することは基本的にありませんし、載せているリンクも質を保証するものではありません。 ここでまとめているものは私がぱっと見で良さそうと思ったものであり、私自身に対するこれからの課題でもあります。 環境構築 解析をするにあたって環境構築は重要な項目になります。 間違っても(少なくとも趣味の範囲では)実機でを動作させるのはいけませんし、仮想環境上でも適切な設定を行わなければなりません。 この辺りの注意事項については暗黙の了解なのか詳しく書いてあるところはあまりなく、私がみた中ではこちらの書籍の環境構築の部分に詳しく書いてあります。 解析の環境は主にになると思います。 そのほかのOSのももちろん存在しますが、一般的なのシェアからか、も主に上で動作するものが多い印象です。 これから始めるならの用意が必須になります。 しかしは有料で安くはないので私はこちらのサービスを使いました。 前はmodern. と呼ばれていたものですが、名前だけ変わっています。 のバージョンも選べるので便利。 解析では非常に多様なツールを使用します。 ツールなどの用意はこのツールで簡単にできてしまいます。 簡単な手順で主要なツールを導入してくれます。 インストール方法など詳細はこちらにも書いてありますが、インストールはのREADMEに従ってやるのが良いと思います。 動画でも紹介されていますが、この動画と同じようにできるかどうかは保証できません 実際私は失敗した ので、実際にやるときには公式のサイトを参考にすると良いです。 でも、ツールの紹介などをしてくれるので一度見ておくと良いと思います。 しかし、解析系のツールは非常に多く、似たようなものもいろいろあります。 その中で選ぶのは本当に好みに左右されることもあり、FLAREVMではその全てを導入してくれるわけではありません。 慣れてきたらいろいろ使ってみて自分の環境を揃えて行くと良いかもしれません。 PEフォーマット のを解析する際、の実行可能ファイルの形式であるPEフォーマットについての知識は必須です。 日本語の資料だと、上記のや、以下のものが良いと思います。 解析系の記事や資料には冒頭にPEの解説が入ることがよくありますので、これだけをずっと読むよりは色々見ていく方が良いと思います。 またこれはよく言われていることなのですが、PEフォーマットはかなり複雑なものになっていて、全てを暗記して理解している人は少ないらしいです。 なので全体をざっと理解して、よく参照される部分(インポートテーブルなど)の繋がりを理解しておけば、良いと思います。 ちなみに、PEフォーマットの全体像を一枚にまとめたPDFがあります。 眺める程度に一度見ておくと面白いです。 解析 を解析するには表層解析、静的解析、動的解析があると言われていますが、基本的に何をするにしてもの知識は必須だと思っています。 また、私がツールなどを用いて解析するよりもを読んだりする方が好きなことから、の方をまとめていくことにしました。 まず、のの入門にはこちらの書籍が良かったです。 ソフトウェアの実行の仕組みからの解説、簡易デバッガの作成やシリアルコード抽出まで色々とやっているので結構楽しんで読めると思います。 次に、解析全般的に解説してくれているサイトです。 このサイトはかなり読みやすくて、絵やGIFも多用されていてわかりやすいと思います。 また、海外では動画で解析関連の動画がよく上がっています。 チャンネルをいくつか載せておきます。 解析というよりはライブアンパッキングという感じですが面白いです。 その他解析系の様々な技術の紹介をしてくれたりします。 最後に、結構有名なものだとは思いますが、OPEN SECURITY TRANINGがあります。 こちらはコンピュータセキュリティに関する様々な技術の資料や講義がフリーで公開されています。 解析だと以下のようなものが良いと思います。 資料も講義の動画も全部英語の上、ボリュームもすごいことになっているので全部すぐに理解するのは難しいとは思いますが、いろんなところからリンクを貼られているので、質はお墨付きではないかと思います。 また、OpenSecurityのトグに載っているこちらの画像によると、解析のスキルツリーはこのようになっているらしく、この通りに技術をつけていきたいですね。 解析は実際に手を動かして経験を積むのが一番なのですが、いきなりを読み始めたりするのは億劫になる人もいると思うので、こういうCrackMeと呼ばれるようなトグで色々触ってみると良いと思います。 あとは、CTFのbinaryやreversingといったカテゴリーの問題を解くのも良いと思います。 検体 を解析しようと思っても肝心のがなければ話になりません。 を建てて自分で集めるのも良いですが、すでに公開されている検体をもらってくるのが最も簡単な方法です。 こちらで色々公開されています。 普通になので取り扱いには重々注意してください。 ファイルをアップロードしたら色々解析してくれるサービスですが、課金ユーザーになるとアップロードされたファイルをダウンロードできるようになります。 こちらも同じようなサービスですが、無料でもアップロードされたファイルをダウンロードできます。 以下、がまとめられているサイトなどです。 I mainly collect APT variants among other types. — 0xffff0800 0xffff0800 news などの動向は絶えず変化し続けていくので、最新の情報を常に取得することが大切だと思います。 プロの方々は人それぞれ情報網を持っていたり、選別したサイトなどを見てキャッチアップしていると思います。 この辺りは僕も本当に知りたいところなのですが、個人的に良いなと思ったニュースサイトを上げていきます。 この辺りは有名ですし、日本語で書いてあって読みやすいし良いと思います。 英語ですが、関連のニュースを多く扱っているサイトです。 のセキュリティ系のチャンネルです。 その他、自分はここを見ている、こうやって情報収拾しているというものあれば、コメントなどで教えていただけると嬉しいです! おわりに 本来は全く別の技術的な記事を書くつもりだったのですが進捗が全然間に合わず、急遽別の候補であるこの記事を書きました。 まともな文章も書かず、ムラだらけのリンク集みたいな記事になってしまい すみません。 はじめにでも書いたようにこれは私自身への課題という側面があるのですが、こういう記事を見て解析に興味を持って、一緒に勉強してくれる人が出てきてくれたら嬉しいなという思いもあります。 来年の今頃にはもっと技術的に面白い記事が書けるように頑張ります。 attox.

次の

blog.yhathq.com

マルウェア 解析

サイバー攻撃からの防御に役立つ、マルウェアの解析 昨今のサイバー攻撃には、ほとんどの場合にマルウェアが関係しています。 マルウェアとは、「Malicious Software」から作られた言葉で、「悪意のあるソフトウェア」を意味します。 マルウェアは、インターネットバンキングの認証情報を窃取し不正に送金する、機密情報を盗む、重要システムを破壊する、といった様々なタイプがあります。 最近では、ファイルを暗号化し、復号するためには金銭を支払うよう要求するような「ランサムウェア」と呼ばれるマルウェアも流行しています。 マルウェアの解析は、様々な立場の人が様々な目的をもって行っています。 サイバー攻撃を日々監視しているSOC(セキュリティ・オペレーション・センター)では、不審なファイルを発見したときに、マルウェアかどうかを特定するために解析を行います。 また、セキュリティセンサー上で攻撃を識別するルールを設定するためにも解析が必要です。 攻撃者がマルウェアに対し攻撃の指令を送るサーバ)等と通信するのかを明らかにすることで、ルールを作成します。 法執行機関は、サイバー犯罪の調査のために、発見されたマルウェアを解析することもあります。 マルウェア解析の3つの方法 マルウェア解析にはさまざまな方法がありますが、私たちの現場では以下の3つのステップに分けて解析を行っています。 表層解析• 動的解析• 静的解析 ステップ1:マルウェアの特徴をもとに過去の解析データを調査する「表層解析」 最初に行うのは表層解析です。 これはマルウェアの表層的な特徴(ファイル名、ファイル種別、ハッシュ値等)を元に、インターネットや過去の解析データ等を調査する方法です。 マルウェアを動作させずに解析するため、比較的危険度が低いやり方といえます。 ステップ2:実際にマルウェアの挙動を見る「動的解析」 表層解析では満足のいく結果が得られなかった場合、動的解析を行います。 動的解析は、マルウェアを動作させ、その挙動をモニタリングして解析する方法です。 マルウェアを実際に動作させるので、やり方を間違えると他の端末に感染が拡大する可能性もあります。 そこでネットワークに繋がないスタンドアロン環境や仮想環境を用いて、マルウェアが感染の際にどのようなファイルを作成するのか、またその通信先などを調べます。 仮想環境のスナップショット機能を利用すると解析後、感染前の環境に容易に戻すこともできます。 リバースエンジニアリング後のアセンブリコード サイバー攻撃者の意図を見抜き、解析に成功したときのやりがいは特別 攻撃者はマルウェア作成の際、サンドボックス(注)などのセキュリティ製品に防御されないよう、また、セキュリティアナリストに解析されないような細工を施しています。 例えば、マルウェアは感染したマシンのディスクサイズをチェックすることがあります。 解析環境は、必要最低限のリソースで構築するためにディスクサイズが比較的小さいという特徴があります。 このような環境では動作を停止し、アナリストによる解析を阻みます。 現場のセキュリティアナリストは、攻撃者の様々な細工に対応する必要があり、解析作業は常に困難を極めます。 しかし攻撃者の意図を見抜き、細工を突破し、解析が成功したときの充実感と達成感は、苦労した分だけ特別なものがあります。 なお、マルウェア解析は、自身が感染しないよう細心の注意と管理、専門的な知識が必要です。 マルウェアに関する法規制もあるため、専門家にゆだねることをお勧めします。

次の