NRIセキュアではNews BitesやOUCH! を日本語に翻訳して皆さまにお届けしています。
購読制を採っておりますので、
ご希望の方は、ニュースレター登録からお申し込みください。
Reverse-Engineering Malware: Advanced Code Analysis
Digital Forensics and Incident Response
English2023年9月11日(月)~9月15日(金)
1日目:9:00-17:30
2日目~5日目:9:30-17:30
◆LiveOnline形式
オンライン
【早割価格】1,080,000円(税込:1,188,000円)
※キャンペーン価格のため、他の割引の重複適用はできません。ご了承ください。
【通常価格】1,200,000円(税込:1,320,000円)
※オプションの価格は、コース本体と同時にお申し込みいただく場合のみ有効です。
演習で使用するノートPCをご準備下さい。受講に必要なPC環境についてご確認ください。
演習で使用するノートPCをご準備ください。受講に必要なPC環境についてご確認ください。
重要! 下記の要項に従って設定されたシステムを持参してください。
このコースに完全に参加するためには、正しく設定されたシステムが必要です。この説明書をよく読み、それに従わない場合は、このコースに不可欠な実習に参加できないため、満足のいく授業が受けられない可能性が高くなります。したがって、このコースで指定されているすべての要件を満たすシステムで参加されることを強くお勧めします。
また、授業の前にシステムをバックアップしていただくとともに、機密データをシステムに保存しないようにしてください。弊社は受講者の皆様のシステムやデータに対して責任を負いません。
授業用メディアは、現在ダウンロードで配信されています。授業で使用するメディアファイルは、40~50GBの大容量となる場合があります。ダウンロードが完了するまでには、十分な時間が必要です。インターネット接続と速度は、様々な要因によって大きく異なります。そのため、教材のダウンロードにかかる時間の目安をお知らせすることはできません。ダウンロードリンクにアクセスできるようになりましたら、コースメディアのダウンロードを速やかに開始してください。授業初日には、コースメディアがすぐに必要になります。授業開始の前夜にダウンロードを開始すると、失敗する可能性が高くなります。
教材には、ライブ授業に参加する前、またはオンライン授業を開始する前に行うべき重要な手順が記載された「セットアップ手順書」が含まれています。これらの手順を完了するには、30分以上かかる場合があります。あなたのクラスでは、ラボの指導に電子ワークブックを使用しています。
ノートパソコンの仕様に関するその他のご質問は、laptop_prep@sans.org までご連絡ください。
防御側の分析スキルが向上し、マルウェアの自動検出機能が改善されるにつれ、マルウェアの作成者は、そのマルウェアを攻撃対象の企業で実行できるようにするため、より努力を重ねています。その結果、検知と分析を妨げるため、メモリ内で実行される、難読化を何重にも施したモジュール型のマルウェアが生み出されています。マルウェアアナリストは、これらの高度な機能に対応できるように準備し、可能な限り自動化を進めて、企業を標的とするマルウェアの量、種類、複雑さに対応する必要があります。
FOR710はFOR610の次のステップに位置づけられ、中級レベルのマルウェア解析能力を身につけた受講生が、さらに高度な解析能力を身につけるためのコースです。SANS認定インストラクターのAnuj Soniが開発したこのコースは、世間を騒がし、世界中のインシデント対応チームを悩ませるような高度なWindows実行ファイルを解析できるようにするためのものです。
深いリバースエンジニアリングのスキルを身につけるには、一貫した練習が必要です。このコースでは、座学だけでなく、授業中に実際のリバースエンジニアリングの実践演習に取り組む機会も数多く設けられています。
マルウェアの機能を特定するためのルールを構築する。
Binary Emulationフレームワークを使用して、コードの実行をシミュレートします。
ライブストリーミングで、コースの著者であるAnuj Soniによるコースのプレビューを聞くことができます。
FOR710は、上級レベルのWindowsリバースエンジニアリングを学習するコースです。本コースは、SANS 「FOR610 Reverse-Engineering Malware」で説明したものと同等の知識およびスキルを有することを前提としています。動作解析、動的コード解析(デバッガの使用など)、静的コード解析(逆アセンブルされた実行コンテンツの解析など)を少なくとも6ヶ月以上行った経験があることが望ましいです。この機能に馴染みがない場合は、Anuj Soniによる簡単なイントロダクションをご覧ください。
コース開発者より
マルウェアがより複雑になるにつれ、マルウェア解析も複雑になっています。近年、マルウェアの作者は、独創的な回避技術、堅牢なアルゴリズム、弱点を改善するための反復開発などを用いて、危険で検知されないコードの作成を加速させています。熟練したリバースエンジニアは、綿密なコード解析を行うとともに、自動化を用いてコードの層を分解し、リスクの高い機能を特徴付け、難読化された指標を抽出する必要があります
- Anuj Soni
マルウェアの作成者は、データを隠し、コードを不明瞭にし、解析を妨げるために実行を複雑にし、コードを難読化します。マルウェアの作成者は、回避技術やメモリ内実行を利用して検出を妨害し、リバースエンジニアリングの取り組みを複雑にしています。このセクションでは、コードの難読化と実行について詳しく説明するために、まず、悪意のあるコンテンツを隠すためのステガノグラフィの創造的な使用について説明します。次に、プログラムの実行における重要なステップを説明し、受講者にコードがどのように起動されるかを認識していただき、各機能にラベル付けを行うことができるようにします。これには、Windowsローダーの確認とPortable Executable(PE)ファイル形式の検査が含まれます。最後に、強力なWindowsデバッガであるWinDbg Previewを活用してシェルコードを解析する方法について説明します。
演習ステガノグラフィ技術によるコード難読化の検討
コード難読化の一般的なアプローチ
このセクションでは、マルウェアのリバースエンジニアリングにおいて重要な分野である、マルウェアにおける暗号化の使用について取り上げます。暗号技術は、ファイルの暗号化、鍵の保護、コンフィギュレーション設定の隠蔽、コマンド&コントロール(C2)通信の難読化など、さまざまな理由で攻撃者に利用されています。影響力の大きいマルウェアを包括的に調査するためには、熟練したリバースエンジニアが、暗号化を実装するルーチンを調査し、その目的を明確にするための準備を整えておく必要があります。
演習マルウェア解析の自動化
概要このセクションでは、マルウェア解析を自動化するためのアプローチについて説明します。ここでは、Pythonプログラミング言語を紹介し、設定データの復号化、文字列の難読化、ペイロードの抽出を行うスクリプトを記述します。また、DBI(Dynamic Binary Instrumentation)フレームワークも紹介し、この機能を使用して、プロセス内にコードを注入して実行し、その内部を調査します。Pythonスクリプトを作成し、デバッグプロセスを自動化し、解凍されたコードをダンプします。
演習Pythonによる設定抽出の自動化
マルウェア解析の自動化(続き)
概要このセクションでは、マルウェア解析を自動化するためのアプローチについて引き続き説明します。ここでは、GhidraのAPIを紹介し、静的コード解析を高速化するためのPythonスクリプトを記述します。また、バイナリエミュレーションのフレームワークの価値を検証し、Qilingフレームワークを使用して実行をシミュレートし、コードとデータの難読化を解除します。
演習アドバンストマルウェア解析大会(エクステンデッドアクセス)
概要このコースの最終セクションでは、より独立した競争的な環境で新しい知識とスキルを活用する機会を提供します。受講者は、5日間のライブ授業以外にも、CTF(capture the flag)プラットフォームにアクセスし、多肢選択式と短答式を組み合わせた課題に挑戦することになります。受講者は、授業で説明した重要な概念を思い出し、ワークフローを実行することで、トーナメントを成功させ、ポイントを積み重ねる必要があります。このセクションでは、実際の複雑なマルウェアのサンプルを分析し、新しい高度なコード解析のスキルを強化する絶好の機会を提供するものです。