Internet Explorer 6 Service Pack 1 用セキュリティ問題の累積的な修正プログラム(MS04-004) がやっとリリースされました。
これでURL偽装の脆弱性が解消されましたが、同時に少々困った問題が出てきました。このアップデートを適用すると、URLに次の形式が利用できなくなります。
http(s)://username:password@server/resource
このURL形式はHTTP BASIC認証で要求されるIDとパスワードをURLとして記述したもので、ID、パスワードが必要なページを、その情報ごとブックマークする時などに便利です。でも当然危険です。
しかし、適切に管理されたコンピュータで利用する分には構わないように思います。
ショルダーハックされるリスクを承知でパスワードが記録されたメモ紙を見ながらIDとパスワードを入力するよりは、はるかにマシな方法だという気がします。
これについてのナレッジベースは834489 - Internet Explorer で HTTP URL と HTTPS URL のユーザー情報を処理する際のデフォルトの動作を変更するソフトウェア アップデートのリリースについてに出ていますが、この新たな機能追加(修正)を回避する方法はないそうです。
今後はブラウザを2種類使い分けることにしようかな。
18:15 追記
834489 - A security update is available that modifies the default behavior of Internet Explorer for handling user information in HTTP and HTTPS URLsによると、レジストリキー HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_HTTP_USERNAME_PASSWORD_DISABLE に利用するアプリケーションのファイル名 (iexplorer.exe とか explorer.exe とか) のDWORD値を 0 で作成すると、そのアプリケーションでは http(s)://username:password@server/resource の形式が使えるようになるそうです。
Win2K でレジストリエディタで編集するのが面倒な場合はこんな内容をiexplorer_username_password_enable.regという内容で保存し、それを開くと簡単ですね。(内容は保障しませんので own risk でよろしく)
Windows Registry Editor Version 5.00[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Main\FeatureControl\FEATURE_HTTP_USERNAME_PASSWORD_DISABLE]
"iexplore.exe"=dword:00000000
"explorer.exe"=dword:00000000
とりあえずブラウザ2種類併用の危機は回避できた。