ごちうさ民の覚え書きごちうさ民の覚え書き読者になるごちうさ民の覚え書きこの広告は、90日以上更新していないブログに表示しています。Analysisという課題が出た。試験でも解析レポートを作る必要があるのでせっかくなので解析レポートを作る。本番は英語になるけど日本語で書いておく。復号したペイロードをsvchost.exeへプロセスインジェクションMessageBoxにメッセージを表示この検体の最初に動作するmain_bin.exeをStage1として説明する。Stage1:ResourceデータのRC4での復号findResourceで101という名前のリソースを探し、ロードするResourceデータの0x1c以降のデータをVirtualAllocで確保した領域にコピーResourceデータの0xcから0xfバイトを鍵としてRC4で復号する。復号したRC4のデータを、以下のAPIを呼び出してインジェクションVirtualAllocExWriteProcessMemorySetThreadContextResumeThreadリソースのデータはCyberchefで復号できる。この復号してインジェクションするデータをstage2とする。Stage1:文字列復号Stage1では拡張したROT13での文字列暗号化が行われている。拡張したといっているのは、文字配列として"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ01234567890./="が使われているからである。以下のGhidraスクリプトで復号する。decStage2:画像を通信先からダウンロードしてインジェクションStage2は以下の動作を行う。画像中に含まれているデータを復号する。svchost.exeのプロセスを作成し、復号したデータをProcessHollowingする。ProcessHollowingし実行される処理はStage3とよぶことにする。Stage2では、最初に以下の通信先へ接続する。https[://]pastebin[.]com/raw/mLem9DGkこの接続先には、違うURLが記載されており、Stage2はそのURLのアクセスも行う。この通信先へアクセスすると、以下の画像が表示される。この画像のデータのうち、cruloader以降のデータを0x61でxorしたデータをProcessHollowingする。Stage2での文字列復号Stage2では、4バイトのROL後にxorをすることで文字列の復号をしている。xorの鍵は固定ではないため注意する必要がある。Stage3Stage3は以下のメッセージボックスを表示するのみのプログラムである。Writeup解いた問題のWriteupです。4はてなブログをはじめよう!kataware8136さんは、はてなブログを使っています。ブログを報告する引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。