2008-11-01から1ヶ月間の記事一覧
ray-out製のものを買った。4980円なり。比較するだけの知識がないので製品の評価はしないが、特に不満なところもない。対象のPCは私用のみなので本来神経質になる必要はないが、それでも他人がのぞき見ることができるというのは気持ち悪い。ちなみに自宅周辺…
プロセッサ数の取得は、Vista SP1や2008より前はntoskrnl.exeのエクスポート済み変数KeNumberProcessorsで正しかったが、Vista SP1や2008からは非推奨となった。代わりにKeQueryActiveProcessorsを使うべきである。
Gain Exclusivityはカーネルモードにおいて、自身以外のプロセッサの動作を一時的にロックする処理。他のプロセッサがロックされている間に共有リソースを編集するコードを実行することで、書き換え中の不完全な状態でアクセスされたり、書き換え中に別の変…
引き続きWisdomSoftさんのC言語入門をアセンブルコードで見ていく。C言語のソース表示を隠しているので、もはやどのソースについて言及しているのか第三者にはわからないがキニシナイ。今回は配列とポインタ。ポインタはC言語の概念が理解できてれば、アセン…
世間一般は今日は休日である。勤労感謝の日とかいうなにかの振り替えらしい。
WisdomSoftさんのC言語入門をアセンブルコードの視点で見ていく。恐らく備忘録ではないかと思われる。期待してはいけない。 ということで、とりあえず1〜14までやってみた。制御構文とプリミティブな変数操作の内容。次は配列・ポインタ・関数・構造体等の内…
せっかくVista搭載の実機を買ったのだし、Windows Performance Analyzerを使って起動を最適化してみた。細かい手順は以前の記事のとおり。速くなったんじゃないかな、たぶん。以下の画像は最適化前後のディスク使用率。記録時間全体から見て特徴的なのは、14…
Windowsカーネルハックというネタでしゃべってきたのでその資料をアップ(llbenkyo1_win.cab)。よく知っている人には「それはどうなのよ」というところがあると思うので、その辺は突っ込んでもらえるとうれしいです。以下にデモごとの主要な動作・コンセプ…
ジャン☆ と思ったので書いてみた(sdt_dump2.cab)。2000以降のx86/x64両方で動作する見込み。コマンドラインにシンボルを参照するパスを指定することができる。以下のように指定すればカレントディレクトリにシンボルをダウンロードしてくれる。コマンドラ…
ntoskrnl.exeをディスクから開き、PEヘッダを解析してプロセスメモリにマッピングした後、コードセクションを読み取りカーネルメモリと比較することでフックを検出する技法がある。これの発展系として、SDT RestoreではKeServiceDescriptorTableを比較し異常…
以前にDllMainでCreateThreadを呼び出すことはWindowsのマナーに反する、という指摘をもらったことについて、その理屈がわからんという趣旨の記事を書いた。今日知ったのだがBest Practices for Creating DLLsに拠れば、これは条件付きで正しく動作する。こ…
町田にあるねこのみせへ。有給とって、Advanced Windows持ってね。猫だらけで、まじおすすめ。池袋とか吉祥寺にもあるっぽいです。
ブルースクリーン(Blue Screen Of Death = BSOD)の色を変更するGUIツールです。よければどうぞー(BSOD_Properties_NT.cab / Readme)。
IDA Pro 4.9 Freeware Versionを導入して、リリースビルドされた自作GUI(x86)アプリのアセンブラを眺めているが、なにもかも初めてなので面白い。たとえば、関数がインライン化されているのが判ったり、ラベルの多いswitchがcmp/jzの連続じゃなかったり、sta…
昨日の続き。今度はx64用にビルドしたものを追いかけてみる。スタックまわりがわからん。