MODxのReflectにRFIの脆弱性が見つかりました

タグ: , - 八環 英樹 @ 23:04:06 2008/11/26 水曜日

MODx CMS "reflect_base" File Inclusion Vulnerability (Secunia)

MODx 0.9.2と、それ以前の全バージョンに同梱されているスニペットReflectにRFI(Request for Information)の脆弱性が発見されました。この脆弱性を衝かれると、ファイルのアップロードや悪意のあるスクリプトの実行を許してしまうことになります。1秒でも早く対応してください。対応方法は次のとおり。

0.9.6.2 security problem with reflect snippets (MODx Forum)

問題になるファイルは"snippet.reflect.php"。このファイルの名前を"a.txt"のような実行できない形式に変更するか、サーバ上から削除してください。Reflectを使用している場合でも、"snippet.reflect.php"を削除してかまいません。スニペット本体は既にDB内に書き込まれており、運用上無くても問題ないからです。このファイルは運用者のソース参照用のためだけに存在しているます。ですから、本来はサーバ上にアップしておくこと自体が望ましくないと言えます。

このセキュリティアナウンスが勧告された即日から、滅多に人が来ないサイトでさえ、1日に2000件近くもReflectへの不正アタックが続いています。クラッカーである彼、もしくは彼らは、BOTネットを駆使して多数のIPから攻撃を仕掛けてきました。これではIPベースのアクセス制御は無意味に等しいです。幸い、日頃からセキュリティポリシーを厳し目に設定してたおかげで、このアタックの大半は実質的な被害もなく未然に防げました。しかし、今回が幸運だっただけで、いつ破られるとも知れません。皆さんも、これを機にサーバのセキュリティを今一度見直してみてはいかがでしょうか。

どうなる九十九電機!?突如、在庫が差し押さえられる

タグ: - 八環 英樹 @ 00:12:34 2008/11/22 土曜日

民事再生手続き中の九十九電気の商品在庫がNECリースによって、2008年11月21日に差し押さえられてられてしまいました。先日のCore i7の深夜販売でも長蛇の列を記録し、健全な経営に向けてがんばっていた九十九電気。いったい、今後どうなってしまうのでしょう。

【速報】民事再生手続き中の九十九電機、商品在庫差し押さえ現場リポート (GIGAZINE)

九十九電機が営業一時中断へ、店舗も閉鎖中 (マイコミジャーナル)

明日からの三連休に向けて在庫が潤沢に補充されていたことでしょう。NECリースにどれだけの数のCore i7が押収されたのか気になります。一般客が予約した商品は保障されるのでしょうか?この差し押さえによって、九十九電気を最近利用した人が不利益を被らないように、十分配慮して欲しいと思います。

Lively終了のお知らせ - 3Dバーチャルコミュニティは流行らないのか?

タグ: , , - 八環 英樹 @ 20:55:11 2008/11/21 金曜日

Lively no more (Official Google Blog via 4Gamers.net)

Googleの3DバーチャルコミュニティLivelyが2008年12月31日で終了するそうです。開発スタッフは、今後、検索エンジンや広告事業といった基幹業務へ回されるとのこと。Second Lifeに代表される3D空間を利用したコミュニティシステムは、今やPS3のような家庭用ゲーム機のサービスにも広まろうとしている将来性のあるものです。それにも拘らずGoogleが見切りをつけたのは、果たして如何なる理由からでしょうか?

私が思うに、これらの3Dバーチャルコミュニティは、現在の一般PCにとっては推奨スペックが高すぎるため、時期尚早なのでしょう。第一に、多くの一般的なPCユーザは3D機能が非力なPCを現役で使っています。手持ちのPCでLivelyを楽しもうとしても、スペック不足で門前払い。これでは、如何に魅力があろうとも流行るはずがありません。

そのため、一般層がPCを買い替え、ストレスなく3Dバーチャルコミュニティを楽しむようになるには、最低でも後3年はかかると睨んでいます。今から3年後の2011年は、2010年リリース予定のWindows 7が登場してから1年後にあたる年。Windows 7は、Vista同様デスクトップ表示に3D機能を使用するため、ビジネス用途のPCでもハードウェア要求が高くなっています。設計の古い現在のWindows XP搭載PCに、Windows 7をインストールすることは最早不可能に近いです。必然的に買い替えが活性化するはず。この頃には、一般層が意識しなくても、適当なPCを買いさえすれば、3D機能が標準的でついてくる時代になっているでしょう。また、昨今のECOブームにより、「買い替え=省電力で効率アップ=お買い得」という方程式が浸透し始めています。Windows XPの延長サポートが失効する2014年を待たずに、電気代のお得な3D機能搭載PCに移行完了するのではないでしょうか。(ハードメーカーに踊らされている気がしないでもないですけどね)

3Dバーチャルコミュニティ普及の鍵は、PCの低価格化とハードの進化に全てが懸かっています。

Vista、Win7でIV32コーデックを使って動画を見る方法

タグ: , , - 八環 英樹 @ 19:13:50 2008/11/19 水曜日

かつて、Ogg theoraのようなフリーのコーデックが無かったころのお話。ゲームのムービー等には、Windowsに標準搭載されていて、画質が安定しているコーデックが好まれていました。このとき比較的よく使われていたのがIntel Video、通称Indeoです。Windows VistaやWindows 7では、このコーデックがシステムフォルダに同梱されているにも関わらず、Indeoで圧縮された動画を再生できません。コーデックはあれど、システムに登録されていないからです。このため、Indeoを使っていた昔のゲームを動かすと、ムービーパートでエラーが起きて物悲しい思いをすることになります。

そこで、Indeoコーデックをシステムに登録する方法を紹介します。方法は至ってシンプル。ファイル自体は既に存在するので、レジストリにその情報を書き込むだけです。

ここで注意しなければいけないことが1つあります。Indeoコーデックは32bit版しか存在しません。そのため64bit版のVistaやWin7を使っている人は、レジストリの登録先を"Wow6432Node"に変えなければなりません。もちろん、64bitアプリケーションからは使えませんので、再生には32bitアプリケーションが必要になります。

以下はIntel Video 3.2(IV32)とIndeo5のレジストリ設定例です。そのまま使えるように、32bit(x86)と64bit(x64)用も含めて4種類用意しました。ご自分の環境に合ったものをメモ帳にコピー&ペーストし、"IV32_x86.reg"と言うようなファイル名で保存して下さい。出来たファイルをダブルクリックするだけでIndeoが登録されるようになっています。Indeo4(ir41_32.ax)は試していませんので、使いたときは例を参考にして修正を加えてください。

Windows Registry Editor Version 5.00

;IV32 for 32bit Vista & Win7 (IV32_x86.reg)

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Drivers32]
"vidc.iv32"="ir32_32.dll"
Windows Registry Editor Version 5.00

;IV32 for 64bit Vista & Win7 (IV32_x64.reg)

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\Drivers32]
"vidc.iv32"="ir32_32.dll"
Windows Registry Editor Version 5.00

;IV50 for 32bit Vista & Win7 (IV50_x86.reg)

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Drivers32]
"vidc.iv50"="ir50_32.dll"
Windows Registry Editor Version 5.00

;IV50 for 64bit Vista & Win7 (IV50_x64.reg)

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\Drivers32]
"vidc.iv50"="ir50_32.dll"

これで、あっさりとIndeoコーデックが有効になったと思います。しかし、後方互換性のためだけに残されている古いコーデックなので、VistaやWin7ではなるべく使わないに越したことはありません。

2008年冬、64bit OS時代到来

タグ: , , , , - 八環 英樹 @ 02:30:26 2008/11/18 火曜日

今年2008年冬の年末商戦以降、一気に64bit OSが浸透するかもしれません。これはWindows Vista登場間近から噂されていた事ですが、いよいよ現実味を帯びてきました。

去年から続いていたDDR2 SDRAMの大暴落は、PCのメモリ搭載量を飛躍的に押し上げる要因となったのは記憶に新しいところ。今や、新しいPCでメモリ合計4GB未満を選ぶことは、余程の理由がない限り避けたほうがいいでしょう。少ない投資で快適さを得るならメモリの増量が一番効果的だからです。例えば、複数のアプリケーションを起動したときに、ガリガリと音を立てて動作が重くなるHDDスワップも、大容量メモリなら回避出来ます。

さて、ここで問題となるのがOSの認識出来る最大メモリ量。今、一番普及しているWindows XPは、多くの人が32bit版を使っていることでしょう。この32bit版XPで扱えるメモリの最大値は、2の32乗である4GBまで。実際はOSの制限で3GB程です。余剰メモリをRAMドライブとして使用することを抜きにすれば、Windows XPの機能だけでは、どうがんばっても、それ以上認識させることは不可能。そこで、標準で4GB以上のメモリを扱える64bit OSに注目が集まってきたのです。海外のPC通販サイトでは、OSにWindows Vistaの64bit版を搭載するのが主流になってきています。その効果もあってか、Vistaにおける64bit版の割合は、2008年10月に全ユーザの20%を超えました

では、64bit OSを使用するにあたり、注意しなければいけない事はなんでしょうか?2つあります。

1つは、使用中の機器に対応したドライバが存在するか。32bit用のドライバは流用できません。Vista発売時に散々言われていたデメリットです。しかし、それも今では解消されました。有名なメーカーの機器なら、64bit版ドライバが提供されていますので安心してください。また、サポート期間の過ぎた古い機器でも、OSに標準で用意されていたり、メーカーのサイトで公開されている場合があります。例外として、新製品でも地デジ用チューナーボードだけは注意しなければなりません。国内メーカーの製品は、どれも32bitドライバしか提供されておらず64bit OSで使用不可能。これは販売側の怠慢としか思えません。しかも、酷いメーカーになると、64bitドライバを提供していないのにVistaロゴに似せたマークを印刷して販売しています。有名なメーカーでも、日常的に行っている商法なので、64bit OSを使うときは十分注意してください。

2つ目は、使用中のアプリケーションが対応しているかどうか。現行の32bitアプリケーションであれば、驚くほど何の障害もなく動作します。問題なのは「16bitアプリケーション」と「特殊なドライバが必要」な場合です。Windows 95時代のアプリケーションは、インストーラーや本体が16bitの物が多く存在しました。64bit OSでは、「16bitアプリケーション」のサポートが切り捨てられてしまったので、それらを動かすことは出来ません。どうしても動かしたいのであれば、仮想環境にWindows 95をインストールして使ってみてください。

「特殊なドライバが必要」なケースのほうは、最近の32bitアプリケーションでも起こります。一番問題になりそうな例をあげると、不正使用防止のために設けたセキュリティ機構が該当します。一時期騒がれた、ルートキットまがいのドライバをOSに寄生させアプリケーションを監視するタイプは、最早絶望的です。64bit Windowsでは、未署名のドライバ、32bit以下のドライバはインストールできません。これらが代替の利くアプリケーションなら、使用を諦めれば済む話です。ですが、思い入れのあるゲームだったりしたら、泣かざるを得ません。とりあえず最良の解決策は、「古いOSを仮想環境のために保管しておく」、「ゲームは買ったら早い内に遊び、飽きるまでやり尽くす」ことです。

これら以外にも64bit OSの特徴が上手くまとまった特集記事が下記にありましたので、時間があれば読んでみてください。

64bit Vista完全導入ガイド (DOS/V Power Report - Impress)

最後に、もう1つ。別途、開発者が注意しなければいけないことがあります。64bitアプリケーションの作成のとき、OSのAPIやコンパイラがサポートしているデータモデルを常に意識しておく必要があります。C/C++を例にお話をします。64bit WindowsのVC++はLLP64モデルを採用しており、short int:16bit、int:32bit、long int:32bit、long long int:64bit、pointer:64bit。対する64bit Linux系のGCCはLP64モデルが採用され、long int:64bitだけ、LLP64モデルと異なっています。この相違点は、マルチプラットフォームでの開発で問題になります。LP64モデルを想定して作ったアプリケーションをLLP64モデルの環境でコンパイルすると、桁落ちを起こし異常動作するかもしれません。回避策は相違点のあるlong intを使わない、もしくはstdint.h(inttypes.h)をインクルードして明示的に変数幅を固定すること。それさえ守れば、OSやコンパイラ間、そして、32bitアプリケーションとの互換性を維持するのも難しくはないでしょう。

64bit#64ビットデータモデル (Wikipedia)

64ビットになると何が変わる?――64ビットプログラミングのデータモデル (2/2) (ITMedia)

Linuxと64bit環境 (VA Linux Japan株式会社)

2008年11月16日、Intelの新CPU、Core i7が発売されました。ハイパースレッディングによりOS上からは8コアに見えるそうです。対応マザーボードは、DDR3 SDRAMを3チャンネル単位で使うことが推奨され、合計6枚も挿せます。これは最大24GBのメモリが使えることを意味します。新しいPCの購入を考えている方は、これを機に思い切って64bitOSの世界に足を踏み入れてみては如何でしょうか。

2008年11月19日追記:デルを含む各ショップブランドから、OSにVista x64版を採用したCore i7搭載モデルが続々と販売開始されました。一応、XPにダウングレード出来るとこもあるようですが、メモリの問題も含め5年以上昔のOSで真価を発揮できるか疑問です。やはり、Vista x64版が妥当かと思います。