last update: 2013/09/03

2006/02/13

デバッガが起動できないFAQ

久々に家でプログラムを書いていて、そのデバッグをしてたんですが、デバッガが起動できないんですよ。

あれおかしーな、他のソリューション(VC6用語でいうところのワークスペース)に切り替えてもだめかなーとおもったら、やっぱりダメ。再起動してチェックしたら、あ、ちゃんと動いた。でも、それも最初の1回だけですぐデバッガが起動できなくなってしまいました。

うーん、と考えて、これ以上原因を考えても仕方ないのでおとなしくVS2005を入れ直しました。再起動必要らしいので、また再起動をかけて、ちゃんとデバッガを起動できることを確認して、よしOK。とおもったらまたしばらくしたらデバッガを起動できなくなってます。アクセスが拒否されましたってどんなエラーだよこれ。

と思ったんですが、はっ。アクセスが拒否されました→Access Denied…ってことは、まさかあれですか。

オンラインゲームの中にはクラック防止のためにデバッガ検出するルーチンとかが組み込まれてるのがあるんですよ。それに引っかかってたっぽい。なるほどねー。まーそもそもゲームみたいな重いアプリケーション動かしながらデバッグするなよって話もありますが。

そんなわけで例によって冬っていうのはプログラムを書きたくなる季節なので、またなんか書いてます。というか、過去のソフトのリライトをするべきなんじゃないか? って気がしてる。tasktrapとか。

ともあれ、VS2005はなんかランタイムのCRTチェックがかなりキツくなっててSTLの範囲外イテレータ参照でもきっちり引っかかって落としてくれるので、セキュリティ上のリスクを下げる効果も結構あるっぽい感じですね。

大学で他人のコードをコンパイルするとそれが引っかかりまくりでちょっと頭いたいですが、まぁそこはしかたない。オレ自身はもともとほとんど引っかからないんですが、昨日デバッグしてて範囲チェックと初期化の順番が逆になってた部分が1カ所あってそこで引っかかりました。どうしてもああいうのをたまーに見落としちゃうので、それがチェックされるだけでもでかいなー。

いや、単体テストやれよって話なんですけど、テストのフレームワークつくるの面倒だし! 最近はなんかとりあえず自分用の開発フレームワークでも作った方がいいんじゃね? って気がしてます。まだ若いからいくらでもソフトウェアは作るだろうし、それなら世間にでるまえに学生のうちになんか自分用のフレームワーク作っておけばプチソフトを書くときに便利だよなーと。そこにさらにLUAを導入してランタイムにカスタマイズが可能な単体テストをーみたいな展開を考えるとアツイかも

事故?

よくみるIT関連のニュースでは脆弱性とかいう言葉が使われるけど、今回のは事故って言葉がつかわれてる。

気付かずに放っておかれたのが脆弱性(カカクコムのときとかみたいなやつ)で、今回のようにアップデート時のトラブルみたいなのを事故って呼んでるのかなぁ。

確かに、脆弱な部分が放置されていた場合は攻撃されうる可能性がずっとあったって意味で事故とは言わないのかも知れないし、今回のはアップデートの際の単発的なインシデントってことから事故って書いたんでしょうかね。なんかよくわかんないですなぁ。

ピーチ・ジョンのサイトに脆弱性があったかどうかについては記述がなされてないし、悪意のあるコードでもって攻撃したんじゃないだろうから脆弱っていうかただのミスだったってことか。たとえば脆弱性があったときにそれを攻撃された場合はそれを事故(インシデント)とは呼ぶのかな? なんてことがちょっと気になった。

たしかによく考えてみればWinnyで情報流出したーみたいなことは事故っていうし、今回オレが感じた違和感はきっとWebサイト上での「事故」って表現なんだろうなぁ。普通更新時にトラブルはあってもセキュリティ上の事故って起こらないから(だって普通の操作でそんなことが起きないようにテストされてるだろうから、脆弱性みたいな水面下に潜ったセキュリティ上のリスクしか報じられないんだろう)、あえてそこでいきなり事故っていうのが出てきたのがひっかかったんだな、きっと。

comments powered by Disqus