カテゴリー: Windows

Windows PowerShell RC1

Perlの様な文法を持つシェルだそうです。.NETが自由自在に使える(?)のかも。

# Over 130 standard utilities (called “cmdlets) for completing common system administration tasks such as working with the registry, services, processes, Windows Management Instrumentation, event logs, etc..

# Intuitive, task-based scripting language and support for existing scripts and command line tools..

# Designed for consistency so all tools and system data stores follow a common syntax, common naming conventions and information can be easily shared/piped between tools.

# Simplified command-based navigation of the operating system (including drives, startup files, and registry).

# Powerful object manipulation capabilities (objects can be directly manipulated or pipelined to other tools or databases).

# Designed for extensibility so that independent software vendors and enterprise developers can easily build custom tools and utilities to administer their software.

WindowsXP以上が必要らしい。

インストールされたプログラムくらいは簡単にリストできるようになっているようです。次がMSDNに掲載されていたインストールされたプログラムをリストするコードです。とても簡単ですね。

$strComputer = "."

$colItems = get-wmiobject -class "Win32_Product" -namespace "root\CIMV2" `
-computername $strComputer

foreach ($objItem in $colItems) {
      write-host "Caption: " $objItem.Caption
      write-host "Description: " $objItem.Description
      write-host "Identifying Number: " $objItem.IdentifyingNumber
      write-host "Installation Date: " $objItem.InstallDate
      write-host "Installation Date 2: " $objItem.InstallDate2
      write-host "Installation Location: " $objItem.InstallLocation
      write-host "Installation State: " $objItem.InstallState
      write-host "Name: " $objItem.Name
      write-host "Package Cache: " $objItem.PackageCache
      write-host "SKU Number: " $objItem.SKUNumber
      write-host "Vendor: " $objItem.Vendor
      write-host "Version: " $objItem.Version
      write-host
}

http://www.microsoft.com/technet/scriptcenter/scripts/msh/apps/user/usapms01.mspx

今までWindowsでバッチ処理というとWSHによりVBScript/JScriptで記述する事が普通でしたがPerl風のPowerShellもオプションに加えられた形になります。どう便利なのか今ひとつ分かっていませんがサンプルコードを見る限りは非常に簡単にWindowsの情報を取得して処理を行えるようになっている様です。

Exchange Server 2007 and System Center Operations Manager 2007 (Microsoft Operations Manager “V3”) will be built upon Windows PowerShell.

Exchange Server 2007はPowerShellを使って構築されている、と書かれています。色々複雑な処理も簡単(?)に行えるような言語になっていると思われます。Windowsでバッチ処理が必要な場合はPowerShellも良い選択肢なのかも知れないです。

Windows Vista のUser Acount Protection(UAP)機能

The bad news, then, is that UAP is a sad, sad joke. It’s the most annoying feature that Microsoft has ever added to any software product, and yes, that includes that ridiculous Clippy character from older Office versions. The problem with UAP is that it throws up an unbelievable number of warning dialogs for even the simplest of tasks. That these dialogs pop up repeatedly for the same action would be comical if it weren’t so amazingly frustrating. It would be hilarious if it weren’t going to affect hundreds of millions of people in a few short months. It is, in fact, almost criminal in its insidiousness.

と非常に使いづらい、と書いてあります。

このUAPと言う機能、MacOSXやLinuxユーザなら知っている管理者権限の必要な操作を行う場合にクレデンシャル(管理者ユーザのパスワード)を聞く機能です。個人的にはVistaには非常に期待しているのでこんな部分で使い物にならないようにされては困ります…

2006年はIEが安全に使えた日はまだ0日!?

【追記】

他のWindows XP+IE6の最新環境で試してみました。
ダウンロードした.htmファイルを開いてJavaScriptが実行されてもクッキーは表示されませんでした。表示しなかった環境はほとんど何も触っていない状態のWindows XP+IE6環境です。クッキーを表示するのは普段使っているノートPCのWinXP+IE6最新環境です。何か原因があるはずですが今のところ動作の違いの原因は分かっていません。参考までにIE関連で何が入っているかというと

-Google Toolbar (page rank付き)
-Norton Internet Security
-Java(JRE1.5)

が入っています。これらはクッキーを表示しないPCの環境には入っていません。少なくとも手元の環境では脆弱性が再現するWinXP PC1台と再現しないWinXP PC1台がありました。

そこでVMWare5でWinXP SP2をインストールした直後の状態のクローンを作成して試してみました。Windows Updateを全て適用、全ての更新が正しく適用されている事を確認後、「ファイルを開く」でJavaScript付き.htmを開いてみたところクッキーが表示されました。クッキーにアクセスできる脆弱な状態が普通なのか?それとも普通(?)はクッキーにはアクセスできないのかどちらなのでしょうね?

他にCSSXSS脆弱性が直っていないらしいので、どちらにしろ結局IEが安全では無い日は昨年から続いていますが。

———–

IEで意図しないJavaScriptが実行される問題の話です。
この問題は4月の定例パッチの直前に明らかになったので修正できなかった問題と思われます。結果として昨年末から既知の脆弱性があるままの状態が継続しています。

IEが拡張子ではなくデータの内容によって適当(と言うより不適切)に処理してしまう事は有名ですが、この問題は拡張子を優先してしまって問題になったケースと言えると思います。.htmを拡張子に持つファイルを送信する際にContent-Dispositionにattachment指定しても、これを無視してinlineでhtmlとしてファイルを処理してしまい(?)クッキーが漏洩してしまいます。今月のMSの定期更新にはこの件に関する修正が無いようだな、と思っていましたが修正されていないようです。

Googleはこの問題の為に.htmファイルをzipに圧縮するようにしたようです。

脆弱性のデモサイトがあります。

http://xs.vc/content-disposition/

にどのような動作になるかテストでるようになっています。
まず、ここにアクセスすると

SECRET=12456767890

とサイトが設定したクッキーがJavaScriptのAlartダイアログボックスで表示されます。ページ中の添付ファイル(Content-Disposition: Attachment)の.htmはAttachmentであるのでダウンロードされ、サイトが設定したクッキーを表示できるべきではありません。しかし、パッチ適用後のIEでも添付ファイルを開くと添付ファイル中のJavaScriptが実行され

SECRET=1234567890

とJavaScriptのダイアログが開いてしまいます。(Firefoxをデフォルトのブラウザにしている方はIEをデフォルトブラウザに変更してから試してください)

つまりこの脆弱性を利用すると、.htmファイルを添付できるサイトのクッキーを盗めてしまいます。.htmファイルを添付できる仕様のサイトはGoogleの様にzipに圧縮する等の対策を行わないとクッキーを盗まれます。ユーザとしての自衛は簡単で.htmファイルは「開かず保存してから見る」と大丈夫です。

この仕様(というかバグ)はWebメールや添付ファイルをサポートする掲示板、CMS、Wiki、バグ管理システム等で影響があります。私が現時点で把握している最新版IEのセキュリティ上の問題はこれだけです。IEセキュリティのリサーチをしている訳ではないので他にも脆弱性があるのかも知れません。他にあったら是非教えてください。

とにかく、私にが知る限りでも2006年になってからIEが安全に使えた日(攻撃可能な既知の問題が無かった日)はまだ無いです… 残念…

4月のIEのパッチ

MS06-013 Cumulative Security Update for Internet Explorer (912812)

では

CVE-2006-1191 – Cross-Domain Information Disclosure Vulnerability

に対応となっているので直ると思っていて良いのでしょうか?多分今度はきちんと直っているのでしょうね。

直るとされているセキュリティホールは次の通り。

CVE-2006-1359 – DHTML Method Call Memory Corruption Vulnerability
CVE-2006-1245 – Multiple Event Handler Memory Corruption Vulnerability
CVE-2006-1388 – HTA Execution Vulnerability
CVE-2006-1185 – HTML Parsing Vulnerability
CVE-2006-1186 – COM Object Instantiation Memory Corruption Vulnerability
CVE-2006-1188 – HTML Tag Memory Corruption Vulnerability
CVE-2006-1189 – Double-Byte Character Parsing Memory Corruption Vulnerability
CVE-2006-1190 – Script Execution Vulnerability
CVE-2006-1191 – Cross-Domain Information Disclosure Vulnerability
CVE-2006-1192 – Address Bar Spoofing Vulnerability

出典:eEye Digital Security

かなり強力な穴ぞろいなのでユーザ全てが直ぐにパッチを当てて欲しいです。しかし今度のアップデートは「Flashが動かなくなる」という噂が先行しているのでアップデートしないユーザも多数でそうな気がします。

数がどれくらいになるか分かりませんが、
CVE-2006-1359 – DHTML Method Call Memory Corruption Vulnerability
のお陰でスパイウェアをインストールされてしまったユーザはかなりの数になると思います。

IEは今年に入ってからリモートから攻撃可能な既知のセキュリティホールが無い状態が1日も無いですが、今度のアップデートで全部直っているのかな?

それでもIEを使いますか?

IEは危険すぎるので使わない方が良いと言っています。過去の実績から言っても明らかです。2004年には1年の内、98%の期間、既知のセキュリティホールに対して脆弱だったとされています。

MSIE was 98% unsafe. There were only 7 days in 2004 without an unpatched publicly disclosed security hole.

Firefox was 15% unsafe. There were 56 days with an unpatched publicly disclosed security hole. 30 of those days were a Mac hole that only affected Mac users. Windows Firefox was 7% unsafe.

さすがにセキュリティホールのレポートが少なくなってきたかな、と昨年末頃には思っていたのですが、最近はすごい事になっています。危険なIEのセキュリティホールが次々に発見されています。

セキュリティ系MLでも書かれていましたが明日にもセキュリティパッチがリリースされる模様です。

Firefoxでは参照できないサイトもIE Viewをインストールしていればさほど困りません。

注意しなければいけないのはFirefoxを使っていても一年の内15%ほど期間な期間があった事です。エンドユーザ教育として「Winnyをインストールしない・使わない」と教えるのも良いですが「ブラウザは危険です」と教える必用があるかと…

# 多くのWebサイトがかなり危険な状態である事も教える必用がありますね…

遅いWindowsの共有フォルダ

前にもクライアント側でWebClientが有効な場合、Windowsの共有フォルダへのアクセスが遅くなる、と書きました。

なんだか最近Windows 2003 Serverの共有が耐え難い程遅くなってきていたので、久しぶりに様子を見てみると自動のWindowsアップデートに何故か失敗していました。再起動が必用かな、と思い再起動後に手動でWindowsアップデート(正確にはMicrosoft Updateにバージョンアップした後Microsoftアップデート)を実行したところ全てのパッチが正常に適用されました。

ついでということでWindows 2003 Server SP1も導入する事にしました。正常にインストールできたようですが、再起動すると起動中の画面でフリーズしてしまいました。SFUを入れている以外は素のWindows Serverでプリント・ファイルサーバとしてしか使っていないのに… と思いつつ強制的に再起動すると今度は普通に立ち上がって来ました。

しかし、ログインしてみるとspxss.exeがクラッシュしたとメッセージが… 何度再起動してもこのサービスはクラッシュしますが、POSIXサブシステムのプロセスらしいのでとりあえず無視。

クライアントから共有ファイルへアクセスしてみると、何故か共有フォルダへのアクセス速度が「普通」に戻っていました。SP1を当てていなかったことが共有フォルダへのアクセスが遅い原因(?)だったようです。# 少なくとも私の環境では。

Microsoft、PC向けセキュリティサービスを6月正式提供~年額49.95ドル

サービス料金が決まったようですね。50ドル(6000円くらい?)で3台までなら今のウィルス対策製品より随分安い計算になります。(個人ユーザの場合)

米Microsoftは7日(米国時間)、米国内限定で公開ベータテストを実施しているPC向けセキュリティサービス「Windows OneCare Live」を6月に正式開始することを明らかにした。料金はPC3台まで利用可能で年額49.95ドル。なお、4月1日から4月30日までに予約申込みをしたベータテスト参加者は、最初の1年間は19.95ドルで利用できる。

詳しくはリンクを先を。

http://www.microsoft.com/presspass/press/2006/feb06/02-07OneCarePricingPR.mspx

Windowsソースコード開示へ

米マイクロソフト社は25日(米国時間)、欧州連合(EU)の反トラスト是正命令に応じて、ウィンドウズ・オペレーティング・システム(OS)のソースコードを一部ライセンス開示すると発表した。

OSもですがInternet Explorerのソースコードがあると更に多くの攻撃方法が判明する可能性は非常に高いと思われます。セキュリティ研究系の会社もライセンスできるくらいの料金でライセンスされるのか興味深いですね。

SpamメールでのWMF攻撃

WMFの脆弱性を利用した攻撃は新しく再利用しやすい攻撃方法が公開されたり大問題ですね。

http://sunbeltblog.blogspot.com/2005/12/new-wmf-exploit-confirmed-in-spam.html

このリンク先の例はメールに添付されたJPEGファイルからWalwareをインストールする仕組みになっているので、システム管理者は年末年始休暇明けからいきなりMalware対策に大忙しかも…

いろいろなところからリンクされていますが、タイトルのリンク先にもアンオフィシャルなパッチのURLが記載されています。SANSのブログでも「普通はアンオフィシャルなパッチなんて適用しないけど、これは適用した方がよい」という趣旨のエントリもありました。さて、どうする。

IE7の新機能

Intranet ZoneでもActiveXは自動インストールできなくなるようです。

http://blogs.msdn.com/ie/archive/2005/12/07/501075.aspx

As a safety precaution in IE7, we have set the default for the Trusted Sites zone to Medium, the same level as the Internet zone in IE6.

管理者権限が無くてもプラグインがインストールできるのは良いですね。

http://blogs.msdn.com/ie/archive/2005/09/20/471975.aspx

1. Start IE with elevated permissions: click Start, point to All Programs, right-click IE, and then select Run Elevated.
2. Perform the ActiveX installation.
3. Exit the current instance of IE.
4. Start a new instance of IE normally (without Administrator permissions).

Webサイトを運用する側としてはSSLv2が使われなくなる点に注意が必要かも知れません。

Microsoft will also discontinue the use of the SSLv2 (Secure Socket Layer) protocol in IE7 and use the stronger TLSv1 (Transport Layer Security) protocol—part of an overall plan to improve the security and user experience for HTTPS connections.

しかし互換性の為にいろいろやってますね。管理者権限を持たないユーザでWindowsを使っていると分かりますが、管理者権限を持っている事が前提に作られているアプリケーションはかなりあります。Windowsの歴史と仕様などからある程度仕方ない部分もあるのですが、普通のユーザでWindowsを使うと本当に使いづらいです。OSXは気にならないように作られているのですけどね。


20周年記念WinXPアップグレードパッケージ
を買うとVistaのプレビュー版がもれなくもらえるそうです。そのためだけに3万弱は高過ぎですが、WinME、Win2000等をアップグレードしたい方にはちょうど良いかも?

マルチブート環境の構築ページを更新

WikiにGRUBのChainloader(別のブートプログラム呼ぶ機能)を利用したマルチブート環境構築のページがあります。デバイスIDが間違っていた部分がありました。比較的参照数も多いようなのでここでも修正した事を書きます。もし参考にされた方がいらしたら修正したのでご覧ください。

私のデスクトップPCには3、4つのLinuxディストリビューションがインストールされているのが普通の状態なのでchainloaderを使ったマルチブート環境にしています。前にGoogleで検索してもこの手のマルチブート環境の構築手順が書いてなかったのでこのページを作りました。WindowsのNTLDRやGRUBの/bootパーティション共有を使ったマルチ・デュアルブートよりはるかに使いやすいです。興味のある方は是非どうぞ。

アンチウィルスソフトには優先度制御が必須…

最近Windowsマシンとして使っているPCのHDDが壊れてHDD交換&再インストールしたのですがアンチウィルスソフト(Noton AntiVirus:以下NAV)プロセスの優先度を下げる為にインストールしていたAutoGearと言うプログラムはまだインストールしていませんでした。AutoGearはアンチウィルスソフトには必須かも知れませんね。

メールクライアントにはThunderbirdを利用しています。NAVがメールをスキャンしてくれるのは良いのですが一生懸命スキャンしすぎて他のプロセスが遅くなりすぎです。IMEさえまともに反応しなくなります。AutoGearをインストールしてccApp.exeの優先度を「低」に設定して一件落着です。しかし元々もう少しお手柔らかにスキャンするように設定しておいた方が良いような気がします。PentiumM 1.3GhzなのでそれほどCPUが遅い訳でもでも無いですが、スキャン時の遅さは耐え難い物があります。

TortoiseSVN – 気が利いていますね

Windowsでsubversionを利用されている方のほとんどはTortoiseSVNを利用されていると思います。私は今日初めて知ったのですがMS Word文書の差分をみると

word = WScript.CreateObject("Word.Application");
destination = word.Documents.Open(sNewDoc);
destination.Compare(sBaseDoc);

が実行されてあたかもMS Wordの履歴をとっていたかのように表示されました。
これでわざわざ差分を記録してなくても済みますね。WindowsでSubversionを使っていた方には常識(?)とは思いますが気が利いていますね。仕組みは単純な物ですが驚きました。

Linuxの利用者からライセンス料を徴収しようとしていた会社がどこを対象として訴えを起こすつもりだったか履歴機能からバレてしまった件は有名です。履歴機能を使わなくても良くなるのでセキュリティ面でも役に立ちますね。

SATAのみでWindows

PATAにインストールされたWindowsXPをSATAに引越ししてみたのですが、予想通り動きませんでした。レガシーATAエミュレーションがないM/Bなのでドライバが無いと見えないのは当然です。インストールCDから起動しM/Bに付属しているCDのドライバを読み込ませて修復セットアップすればSATAのみでも起動できるように設定できるのかも知れませんがめんどう… あっさり替わりに容量の大きいPATAのHDDを付けることにしました。これでPATAのみ2台構成になってgrubのchainloaderが思った通りに動作するようになりました。