My Daily Programming Life...

Windows Kernel Debuggerの仕組み

WindowsでKernel Debuggerがどうやって動いているのか興味があったけど、なかなかそれについて調べられずにいたら、今日たまたまいい記事を見つけた。

http://www.vsj.co.uk/articles/display.asp?id=265

こういうのあるなら早く言ってほしい・・・。

これでだいたいの動きは納得がいくようになった。
最近IDAを利用してカーネルデバッグができるようになったということで、なかなかおもしろいかもしれない。IDAがないとアセンブラコード読む気にならないし。

SafeSEHとSoftware DEP

SEH関連の情報をひたすらに収集しているのだけれど、いまいちSafeSEHとSoftware DEPとの関係性が分からない。
あるところでは全く同じ物だと書いてあったり、そうでないところもあったり。全く関係がないわけではないことは確かなのだけど。
SafeSEHオプションがなくてもSoftware DEPの一部は機能する気がするし、一方でSoftware DEPを実行属性なしメモリを例外ハンドラとして呼ばない機能とすれば、SafeSEHオプションだけでも意味のある物になる(登録されている例外ハンドラしか呼ばないという機能になるから)。

いまのところ、僕のイメージは、別々の物だけれどどちらもSEHを攻撃から保護してくれる機能という感じ。
でもなんか違うのかも。どこからどこまでがSafeSEHで、どこからどこまでがSoftware DEPなのかはっきりしてほしいと思うのだけれど・・・。

まあ、もうすぐ整理して書かなくてはいけないので、これから必死になっていろいろ読んで理解するしかない。

マルウェアって

ここ数日いろいろなマルウェアをいじっている。
感染させたりしながら挙動を見たりとか。
うまくできている物もあれば、そうでないものもある。

そんななか、ちょっと調べたConfickerはなかなかすごそう。
手が込んでいる感じ。すごくきれいに設計されている気がする。

というか、なんでこんなとこにそんな能力使ってるのか疑問だ。
こんなの作れる人なら、きっといい物作れるだろうに。

あと、意外に簡単にそういう攻撃コードは書けてしまうということもだんだん分かってきた。まだそういうバイナリレベルのセキュリティとかのことを勉強し始めて半年だけど、書けそうにない訳じゃない。
表現はちょっと悪いけど、質のいいマルウェアは作れないかもしれないけど、ちょっとしたものなら作れる。
けどやっぱり最終的に重要なのは脆弱性を見つけられるかということなんだろう。見つければそれを利用するのは簡単で、コードを書くのも簡単と言うことだ。普通のアプリケーション作るのとほとんど変わらない。

最近、PDFとか開くの怖くなってきたよ

情報セキュリティスペシャリスト

10月に行われる情報セキュリティスペシャリスト試験を受けることにしました。

ちょっと見た感じでは午前中は少なくともなんとかなりそう。
あとは午後の筆記とかかな。でも問われているのは、基本的なことだと思う。

大学受験のときとかもそうだけど、結局教科書をきちんと理解することが大事で、これもそういった類の試験だと思う。
逆に本当に基本的なこと、根本的なことを聞かれるので、ただ表面上サーバー作れますとかそういうことではだめなんだと思う。

一度基本を勉強するいい機会なのでがんばってみよう
feedSubscribe to my feed