2010-01-01から1年間の記事一覧
概要 OllyBonEはページテーブルを操作してメモリの属性を変更することで、ヒューリスティックにアンパックを行うプログラムです。ページテーブル操作によるアンパッキング技法の先駆けとして有名です。ソースは以下からダウンロードできます。 http://www.jo…
今回は、仮想化技術で隠されたプロセスを検出する、という研究のお話をします。また、これについて試験的にWindows 7(x86)で動くものを実装してみましたので、その実装詳細と評価も交えていきます。実装はこちら。
期待に応えたいと考えたからだと思う。ただ自分の生活の中にこいつがどうやって食いこんで行くのかは、正直見えてない。自分の中での価値をほとんど失ってしまっているので。
GetTickCount関数とtimeGetTime関数がどうやって実装されているか確認し、分解能の違いが実現できている理由を読み解きます。[NTKRNL]のタグがついている時点でアレなわけですが「どっちを使うべき」的な情報がほしい方は回れ右。特に明示しない場合、x86 XP…
CryptBinaryToString というAPIを使うと、バイナリ列を文字列に変換できる。 BOOL WINAPI CryptBinaryToString( __in const BYTE *pbBinary, // バイナリ列 __in DWORD cbBinary, // バイナリ列のサイズ __in DWORD dwFlags, // 変換書式のフラグ __out_opt …
東京のビッグなサイトでブースに入って学生の勧誘と、情報系会社の簡単な紹介(キャッチじゃないよ!)をしていたときの話。 そのときの印象だけど、意外と就職活動開始時点で明らかな情報処理関連の技術のある人は少ないようだった。はてなダイアリーとか見…
しばらくカーネル空間で例外ハンドラをいじって遊んでいたのだけど、ユーザー空間でも似たような遊びができる気がしたので下調べのメモ。常に以下のフローをたどるわけではなく、あくまで発生した例外がユーザー空間に伝播するときのフロー。x86はWindows XP…
勘違いだったので削除しました。すみません。 ここで書いていたジャンクションを利用したケースではファイルを開けないので、論点としたかった問題は起こりません。 名無しさんありがとうございます。 以下内容。 低い権限のユーザーが作成したジャンクショ…
EXE、TMP、SYS、BAT ——— 何でも一緒だ。マルウェア解析では、どんなものからも目を離してはいけない。 ファイルが削除されようとしたタイミングで、そのファイルをバックアップコピーするフィルタドライバを書いてみました(ScavengerFolk.cab)。よければど…
デバイスドライバがカーネルにロードされたタイミングで、そのファイルをバックアップコピーするデバイスドライバを書いてみました(drvcopy.cab)。よければどうぞー。
ドライバ開発の際には従来広くASSERTマクロが使われているが、最近のWDKではASSERT定義周辺に、NT_ASSERTというマクロが追加されている。このマクロは現時点では文書化されていないものの、ASSERT Yourself - The New NT_ASSERT Macro in the WDKにおいて、…
この辺眺めながら。個人的には大好きなVT技術なのだけど、ここではハイパーバイザーの存在はそんなに重要でない。ハイパーバイザーを使ったほうが楽に、良いものができるのは間違いないが、同じアーキテクチャにするにしても、drvcopyのようにAPIを使ってド…
/) ///) /,.=゙''"/ / i f ,.r='"-‐'つ____ 細部にとことんこだわろうぜ!! / / _,.-‐'~/⌒ ⌒\ / ,i ,二ニ⊃( ●). (●)\ / ノ il゙フ::::::⌒(__人__)⌒::::: \ ,イ「ト、 ,!,!| |r┬-| | / iトヾヽ_/ィ"\ `ー'´ / という衝動との葛藤なわけです。…