Snoozy

1.Sleep-inducing; tedious.

2020-03-01から1ヶ月間の記事一覧

Volatilityを使ってみる

Volatilityを使ってみる メモリフォレンジックフレームワークであるVolatilityを使ってみる. Volatilityは現在Python3で記述されたものや,Windows上でスタンドアロンで動作するexe形式のものが配布されているが,この記事執筆時点ではプロファイルやコマン…

Buffer I/Oによるドライバとアプリケーション間のデータ転送をやってみる

Buffer I/Oによるドライバとアプリケーション間のデータ転送をやってみる アプリケーションからI/O要求を行い,デバイスドライバにデータを転送する場合,一時的にデータを保存するためのバッファが必要になる. Windowsではデータバッファにアクセスするた…

IAT Hookをやってみる

IAT Hookをやってみる PEファイルフォーマットにおけるIAT(Import Address Table)は,インポートしたAPIのエントリーポイントへのアドレスが記載されるルックアップテーブルだ. あるモジュールからエクスポートされるAPIを使用する際,実行時にIATを参照し…

仮想アドレスから物理アドレスを求めてみる

仮想アドレスから物理アドレスを求めてみる 本稿では,Windows10 x64システム上で動作する,4-level pagingについてみていく. 最初に4-level pagingによるアドレス変換の概要に触れた後,後半では実際にWinDbgを使ってシステム上の仮想アドレスから物理アド…

ReflectivePELoaderを実装してみる

ReflectivePELoaderを実装してみる ディスク上のEXEやDLLは,Windowsが提供するPEローダによって,セクションの展開やベース再配置,IATの解決など,実行可能な状態に調整されながらメモリ上にロードされる. これはディスク上のPEファイルをそのままメモリ…