サンドボックスからの悪質なファイルの評価:パート1:オンラインサービス

悪意のある可能性がある機能を備えた実行可能ファイルの調査の実践には、分解を伴う静的分析からデバッガーを使用した動的分析まで、豊富なツールがあります。 このレビューでは、特定の知識が必要なため、すべての可能なトリックに関する情報を提供しようとはしませんが、経験の浅いユーザーには、未知のファイルをすばやく分析できるトリックのセットを装備したいと思います。

そのため、状況:マルウェアの疑いがある奇妙なファイルがありますが、 VirusTotalのような既存のマルチスキャナーは情報を提供しません。 どうする?

オンラインSANDS

ネットワークには、コードを実行するために個別に動作する仮想化システムとしてソリューションを実装し、その後に行われた変更の分析を行う、多くの情報セキュリティプロジェクトがあります。 原則として、これらのプロジェクトには、無料で使用できるこのようなシステムのオンラインバージョンがあります。 疑わしいファイルを安全にダウンロードし、しばらくすると、システムで実行されているときの動作に関する完全な情報を取得できます。

Threatexpert
ThreatExpertシステムは、起動前後のシステムスナップショットを比較し、コード実行中に一部のAPIをインターセプトします。 その結果、次の情報を含むレポートを取得します:

•コードの実行中に作成された新しいプロセス、ファイル、レジストリキー、ミューテックス。
•接続されたホストとIP、および交換データの16進およびASCIIダンプも提供されます。
•ファイルと実行中に作成されたファイルに送信された人気のアンチウイルスを検出するようにしてください。
•コードで見つかった言語リソースおよびその他のトレースに基づいて、コードの可能な原産国は何ですか。
•考えられる脅威カテゴリ(キーロガー、バックドアなど)とそのレベル。
•実行時に新しいウィンドウのスクリーンショット(存在する場合)が表示されました。

サイトへの登録が可能です。その場合、すべての分析の履歴が保存され、いつでも呼び出すことができます。 提出アプレットプログラムをインストールし、エクスプローラーのコンテキストメニューから分析用のファイルを自動的に送信することができます。

CWSandboxは、このシステムを販売するマンハイム大学による開発です。 ただし、分析はオンラインで無料で行うことができます。
このサンドボックスの機能は、実行可能コードにサンドボックスライブラリを挿入し、すべてのAPI呼び出しをインターセプトすることによって分析が実行されることです。 コールのネイティブAPIまたはカーネルモードで作業を行う際に、サンドボックスが動作していないことは明らかです。 ただし、実際に機能するファイルの分析により、CWSandboxは他の誰よりも多くの情報を提供する場合があります。

無料のオンラインバージョンには、商用バージョンと比較していくつかの制限があります。

•PEファイルの分析のみが可能です。 有料版では、BHO、zipアーカイブ、Microsoft Officeドキュメントを分析できます。
•無料版では、Webインターフェースからのダウンロードのみが可能です。 有料では、分析ファイルをメール、ハニーポットなどでコメントすることができます。
•有料版では、仮想環境で分析するか、実際のシステムで分析するかを選択できます。
•商用版には、コード実行中にダウンロードされたファイル、システムフォルダーに作成されたファイル、または他のプロセスに挿入されたファイルの分析が含まれます。

アヌビス
Anubisは最も一般的なサンドボックスオプションの1つであり、包括的なレポートコンテンツと応答速度で人気があります。 このシステムのいくつかの機能:

•悪意のあるファイル自体の代わりにURLを指定する機能。 この場合、システムは指定されたURLをInternet Explorerにロードし、システムの動作を分析します。
•テストファイルと一緒に、追加のライブラリをダウンロードできます(zipアーカイブ内にパスワードなしまたはパスワード「感染」あり)。 この手法は、悪意のある動的ライブラリを分析するのに非常に便利です(これが同様に興味深い場合は、コメントで登録を解除してください。別の記事を作成することができます)。
•レポートは、HTML、XML、プレーンテキスト、PDFなどのさまざまな形式で提供されます。また、分析中に受信した完全なネットワークダンプをダウンロードすることもできます。
•あなたは(あなたがアンチウイルスプロキシをブロックする場合に便利)SSL経由でアヌビスのファイルをダウンロードすることができます。

ジョーボックス
そして最後に、彼。 Joebox、グレートとひどいです。 Stefan Buhlmannの研究の結果、私の意見では、Joeboxは最も強力な分析システムです。 このシステムの特徴は、ファイル分析中にSSDTおよびEATカーネルを傍受する唯一のシステムであることです。 一方で、これにより、トップレベルコールの少量の情報が失われます(たとえば、ShellExecuteまたはWinExecを使用して新しいプロセスを作成する)が、一方では、ネイティブAPIまたはカーネルモードで動作する悪意のあるファイルを調べることができます。 さらに、Joeboxは次の分析機能を提供します。

•Joeboxは、実行可能ファイル、DLL、カーネルドライバー、Microsoft Word文書、PDFファイルなどの動作のダウンロードと調査をサポートしています。
•ランタイム環境を選択できます:Windows XP、Windows Vista、またはWindows 7。
•あなたは、仮想環境または実際のシステム上でコードを実行することを選択できます(後者は実装されているFOGに基づくソリューションを
•分析中に蓄積されたネットワークトラフィックの完全なダンプを受け取ることができます。
•人気のあるamunおよびnepenthesサンドボックスモジュールのサポートがあり、新しいサンドボックスサンプルをJoeboxに自動的にダウンロードします。
•Joeboxで制御ランタイム悪質なファイルの整理のためにそこAutoIT19スクリプトのサポート。

私の意見では、特に重要なのは、スクリプト言語のサポートです。 プロジェクトのウェブサイトには、可能な機能とその解釈の説明が含まれていますが、最も人気のあるもののみを指摘します。

1.悪意のあるコードがファイルのあるパスをチェックし、あるべき場所で見つかった場合にのみ実行されるとします。 簡単なスクリプトで解決されます。
Script
_JBSetSystem(“xp”)
; Windows XP
_JBStartAnalysis()
;
_JBStartSniffer()
;
$NewFile = @SystemDir & “/” & “malware.exe”
FileCopy(“c:\malware.exe”, $NewFile, 1)
;
FileDelete(“c:\malware.exe”)
;
Run($NewFile, @TempDir, @SW_HIDE)
;
Sleep(120)
; 120
_JBStopSniffer()
;
_JBStopAnalysis()
;
EndScript


2.悪意のあるライブラリの簡単な分析を行う必要がある場合は、次のスクリプトを使用できます(この場合、新しいInternet Explorerプロセスへのインジェクションが使用されます)。
Script
#include <IE.au3>
; IE
_JBSetSystem(“xp”)
_JBStartAnalysis()
_JBStartSniffer()
$NewFile = @SystemDir & “/” & “malware.dll”
FileCopy(“c:\malware.dll”, $NewFile, 1)
RegWrite(
“HKLM\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Windows”,
“AppInit_DLLs”, “REG_SZ”, “malware.dll”)
; AppInit_DLLs
$oIE = _IECreate(“http://www.sbrf.ru”)
;
Sleep(120)
; done with IE now
_IEQuit ($oIE)
_JBStopSniffer()
_JBStopAnalysis()
EndScript


同じ方法で、BHOを分析できます-必要なキーをレジストリに登録するだけです。 ただし、問題が頻繁に発生します。AppInit_DLLsは新しく作成されたプロセスに対してのみ有効です。explorer.exeでインジェクションを実行する必要がある場合はどうなりますか? 次のスクリプトがこれに適しています。
Script
Func KillProcess($process)
Local $hproc
Local $pid = ProcessExists($process)
If $pid = 0 Then
Return
EndIf
$hproc = DllCall(
“kernel32.dll”, “hwnd”, “OpenProcess”,
“dword”, BitOR(0x0400,0x0004,0x0001),
“int”, 0, “dword”, $pid)
If UBound($hproc) > 0 Then
If $hproc[0] = 0 Then Return
Else
Return
EndIf
$hproc = $hproc[0]
Local $code = DllStructCreate(“dword”)
$ret = DllCall(
“kernel32.dll”, “int”, “TerminateProcess”,
“hwnd”, $hproc, “uint”, DllStructGetData($code,1))
Return
EndFunc
_JBSetSystem(“xp”)
_JBStartAnalysis()
_JBStartSniffer()
$NewFile = @SystemDir & “/” & “malware.dll”
FileCopy(“c:\malware.dll”, $NewFile, 1)
RegWrite(
“HKLM\SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Windows”,
“AppInit_DLLs”, “REG_SZ”, “malware.dll”)
KillProcess(“explorer.exe”)
; , winlogon.exe
Sleep(10000)
_JBStopSniffer()
_JBStopAnalysis()
EndScript


3.特定の国からネットワークにアクセスする必要がある場合、実行中のJoebox環境でプロキシを構成できます。
Script
_JBSetSystem(“xp”)
_JBStartAnalysis()
_JBStartSniffer()
$ProxyServer = “1.2.3.4:8080”
;
RegWrite(
“HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings”,
“ProxyServer”, “REG_SZ”, $ProxyServer)
RegWrite(
“HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings”,
“ProxyEnable”, “REG_DWORD”, 1)
;
_JBLoadProvidedBin()
Sleep(10000)
_JBStopSniffer()
_JBStopAnalysis()


もちろん、このような柔軟性と豊富な機会を利用できるため、Joeboxは最も人気のあるサンドボックスの1つになります。これは最悪の側面です。 分析の結果が出るまで数日待たなければならないことがありました。 まあ、著者はこの素晴らしいサンドボックスのコピーを自分で購入することを申し出ていますが、かなり高価です。 ファイルを特定の費用なしで分析するための独自のシステムを構築する方法-これは、もちろん、Habrastvoがこの作品を承認し、私のカルマが完全に溶けない場合、次の記事で説明します;)

PS他のオンラインサンドボックスの例:

* BitBlaze
* Comodoインスタントマルウェア分析
* ユーリカ
* ノーマンサンドボックス

リマインダーをお送りいただきありがとうございますahtox74

UPD: Joeboxは必須の登録を導入しました。このオンラインサンドボックスのサービスを無料で使用する場合は、info @ joebox.orgに英語で次の情報を記載したメールを送信してください。
1.お名前
2.登録の目的と、Joeboxで探索する内容の簡単な説明
研究に関するレポートを送信する3. Eメール(それは最初のフィールドリクエストに表示されていきます)。

申請書を提出した後、彼らは指定されたボックスへのアクセスを開くことを約束します。

UPD-UPD: ここに記事の第二部

Source: https://habr.com/ru/post/J113985/


All Articles