- 1 名前:デフォルトの名無しさん mailto:sage [2006/11/06(月) 20:41:33 ]
- まとめたい
- 252 名前:デフォルトの名無しさん mailto:sage [2007/02/15(木) 07:11:01 ]
- >>250
おまえカプセルホテル使ったことないだろ
- 253 名前:デフォルトの名無しさん mailto:sage [2007/02/15(木) 09:37:13 ]
- カプセルが当たり舞じゃないだろ。
それとも252はカプセルに住んでるのか? ネットカフェに住むワーキングプアみたいな。
- 254 名前:蕪木ら某 ◆Googl8RmwA mailto:sage [2007/02/16(金) 06:28:32 ]
- >>238>>240-241>>249
+ support.microsoft.com/kb/929457/JA/ (w
- 255 名前:デフォルトの名無しさん mailto:sage [2007/02/16(金) 10:31:20 ]
- Shift+右クリックは知らんかった
- 256 名前:デフォルトの名無しさん mailto:sage [2007/02/16(金) 22:32:26 ]
- 別に隠しコマンドみたいにする必要があるメニューじゃないと思うんだけどな。
パスのコピー
- 257 名前:デフォルトの名無しさん mailto:sage [2007/02/16(金) 23:59:20 ]
- ぬう、これは...
士郎、でかした!!
- 258 名前:デフォルトの名無しさん mailto:sage [2007/02/17(土) 00:06:44 ]
- 自作ツールの出番が無くなる! Vista 乗り換えは禁止だなw
- 259 名前:デフォルトの名無しさん mailto:sage [2007/02/17(土) 00:23:48 ]
- explorerのメニューがALTキーを押すと出てくるなんて気がつかなかったしな。
Vistaになってから、UI設計の質が落ちたような気がする。
- 260 名前:デフォルトの名無しさん mailto:sage [2007/02/17(土) 01:47:23 ]
- 詳細表示がLVS_EX_FULLROWSELECTだけど、
非選択項目を右クリックするとき アイコンかラベルの上じゃないと反応しないのもUIの不一致だよな
- 261 名前:デフォルトの名無しさん mailto:sage [2007/02/17(土) 03:36:56 ]
- 初心者があまり使わない機能を隠蔽する方向か
にしても機能の選択が怪しいというかなんというか
- 262 名前:デフォルトの名無しさん mailto:sage [2007/02/17(土) 14:04:51 ]
- 「コマンド ウィンドウをここで開く」も同様の隠し機能ながら標準装備されたな
- 263 名前:デフォルトの名無しさん mailto:sage [2007/02/17(土) 18:37:44 ]
- cdって入れてからフォルダをD&Dで・・・が使えなくなったからねえ
- 264 名前:デフォルトの名無しさん [2007/02/18(日) 12:16:05 ]
- >>238 >>240-241 >>249 >>245
回避策がなんであれ、 ドラッグ&ドロップそのものができないのが ひじょーに不便だよな。 SSHでも立ててPoderosaとかで試してみることにするわ。
- 265 名前:デフォルトの名無しさん [2007/02/21(水) 20:24:45 ]
- Vista上で動くプログラムから、Vistaが
・クリーンインストールされたVistaなのか、 ・XPからアップグレードされたVistaなのかを スカッと見分ける方法ってありますか? ご存じでしたら教ぇてくださぃ。
- 266 名前:デフォルトの名無しさん mailto:sage [2007/02/21(水) 21:23:10 ]
- 知らないけど見分けてどうすんだ?
- 267 名前:デフォルトの名無しさん mailto:sage [2007/02/21(水) 21:30:58 ]
- マイクロソフトが「クリーンインストール」という用語を
紛らわしい感じに再定義したという話をきいたが。 pc.watch.impress.co.jp/docs/2007/0207/ubiq171.htm
- 268 名前:265 [2007/02/22(木) 02:38:36 ]
- 「クリーンインストール」という言葉はややこしいんですねぇ。
書き直すと、 ----- Vista上で動くプログラムから、そのVistaが ・XPからアップグレードされたVistaなのか ・アップグレードではない(初めからVistaが入っている)環境なのか を見分ける方法ってありますか?
- 269 名前:デフォルトの名無しさん mailto:sage [2007/02/22(木) 10:01:18 ]
- >>265
見分ける方法は知らないけど、「何のために見分けたいか」が書かれていると 「それなら見分けるんじゃなくてもxxxという方法が使えるよ」とか答えやすくて いいんじゃないかな。 そもそも、「何のために」が分からないと、手持ちの情報を提供して役に立つかどうか、 こちらで判断できないじゃん。
- 270 名前:265 [2007/02/22(木) 10:29:40 ]
- 元からVistaのPCと、XPからアップグレードしたVistaでは動作が違うところが沢山あるので、
とりあえずはケースバイケースで自作プログラムの動作を切り替えたいからです。
- 271 名前:デフォルトの名無しさん mailto:sage [2007/02/22(木) 10:39:45 ]
- 素のVistaで動くように作れば切り替えなくていいはずだが。
なぜ難しいほうに行きたがるのだろう。
- 272 名前:デフォルトの名無しさん mailto:sage [2007/02/22(木) 11:21:46 ]
- 「沢山」じゃなくて具体的にどーとかねーの?
- 273 名前:デフォルトの名無しさん mailto:sage [2007/02/22(木) 11:48:48 ]
- >270
もう答え出てんじゃん。 「動作が違うところ」をトリガにすればおk。
- 274 名前:デフォルトの名無しさん mailto:sage [2007/02/22(木) 11:55:07 ]
- 設定に
□ 私はVistaを上書きでインストールしました。 ってチェックボックスつけとけば?
- 275 名前:デフォルトの名無しさん mailto:sage [2007/02/22(木) 12:06:10 ]
- □ 私はコレで会社をやめました
- 276 名前:デフォルトの名無しさん mailto:sage [2007/02/22(木) 13:33:14 ]
- Vistaでパソコンが終わりそうだ
ttp://www.nikkeibp.co.jp/news/flash/526308.html
- 277 名前:デフォルトの名無しさん mailto:sage [2007/02/22(木) 14:03:51 ]
- OSが変わった程度で世間が騒がなくなっただけでしょうに。辛口評価て(笑)
- 278 名前:265 [2007/02/22(木) 15:19:31 ]
- アップグレードしたVista上で、rundll32.exeを使って
printui.dll内のPrintUIEntry()を呼び出すとエラーが出ちゃいます。 クリーンインストールしたVistaや、2000/XP上ではエラーなく動いてくれるのに。 printui.dllをLoadLibrary()して呼び出せば、アップグレードした Vista上でもエラーが出ないのですが、別の事情がありまして なるべくrundll32.exeを使って呼び出したいのです。
- 279 名前:265 [2007/02/22(木) 15:20:24 ]
- という訳で、Vistaの素性を調べて、
アップグレードしたVista → LoadLibrary()経由で関数コール それ以外のVista および XP/2000 → rundll32.exe経由で関数コール としようと考えたのですが、その区別の仕方が見つからなく困っています。 GetProductInfoとかGetVersionExで取れると安易に考えていたのですが。
- 280 名前:デフォルトの名無しさん mailto:sage [2007/02/22(木) 15:30:08 ]
- LoadLibrary経由に統一したらだめなのか?
- 281 名前:デフォルトの名無しさん [2007/02/22(木) 16:04:26 ]
- だめなんですぅ
でも諦めたらそうするかも
- 282 名前:デフォルトの名無しさん mailto:sage [2007/02/22(木) 17:47:07 ]
- ク...が暴走をはじm...
. ヽ |-、 !/_,/゙ ヽ___ \\, `ー- ! , -\ _, -.! ヽ `ヽ \\_ ゝ | , -''. ̄ ̄\ :::::ヽ ヽ '、 | .\\_ /゛ \ :ヽ ' 、 | _, _、 \\_ / 、 \l、 ! / .! \ \ _,____,|, | \ ヽ \_` . ‐-、 _,/ ! .l─ヽ .-/- ● \ ` ー 、 ``ヽ、 ヽ !::::::.! .ー \ .\ \.\ `ヽ、 /-、 `'-、 ,_-‐‐'ヽ__|、::::::.! `ヽ,\ \\ \ ヽ、_ , ‐', -‐ ̄ .‖::::::ヽ ー' ''ー `‐‐-/:: ̄'''--、_ l :/゛ `ヽ,:::ヽ \ ::::::::\`ヽ| \:| \ :::::::::`''ヽ--、 _,,.-‐ヽ !/ \_:::::::::::::::::.! /'´::::::::::::::`_ .、 !ヽ 、 `'ー-、 ::| ./::::::::::, ‐'": : : :`'‐.! .|ヽ .!、 、``ヽ !__|  ̄ / : : : : : : : : : :! .!iヽ ! /: :.! !: : : : : : : : : : : .\.-、` ー'' / !: : : : : : : : : : : : :/ `ー、 ゙̄ヽ i: | ヽ : : : : : : : : : : /`´  ̄'` |: .! , -─'ー-、______/ ヽ \, ` ̄─ / l ` ー-` ー‐‐/ / / ,/ / , /  ̄
- 283 名前:デフォルトの名無しさん mailto:sage [2007/02/23(金) 06:03:49 ]
- まずエラーの原因突き止めたら?
>>271 フォルダ仮想化で動作がおかしくなるから仮想化されてるかどうか見分けて 動作を変えたいみたいな本末転倒系の質問だろうと思ってたら案の定だった (正解はもちろん「manifest追加して仮想化されないようにする」)
- 284 名前:デフォルトの名無しさん mailto:sage [2007/02/23(金) 06:04:50 ]
- 3行目以降は単なるたとえで>>265への答えじゃないので念のため
- 285 名前:デフォルトの名無しさん mailto:sage [2007/02/23(金) 08:45:56 ]
- >>278
エラーでたらキャッチして、処理を切り替える訳にはいかんの?
- 286 名前:デフォルトの名無しさん mailto:sage [2007/02/23(金) 10:08:20 ]
- >282
クリリンのことかぁぁぁぁ!!!
- 287 名前:265 [2007/02/23(金) 11:40:53 ]
- manifestは付けています。
>>285 レスありがとうございます。 printui.dll(もしくはその先)が勝手にエラーのメッセージボックスを 表示してしまうので、それを出したくないんですよぉ。
- 288 名前:デフォルトの名無しさん mailto:sage [2007/02/23(金) 19:19:46 ]
- 漏れの自作プログラムの中に、ある条件下でレジストリの HKEY_CLASSES_ROOT 配下に書き込みを行うものがある。
そのプログラムが HKEY_CLASSES_ROOT 配下への書き込みを行うまでは、何度起動してもUACのダイアログは 出なかったんだが、一度書き込みを行ってからは毎回ダイアログが出るようになった。 「危険な動作を行うプログラム」ってことをVistaが学習したんだろうな。 じゃあ、その学習内容はどこにあるんだろうかと、レジストリを検索してみたところ、 HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers に記録されていることがわかった。 ここに実行ファイルのフルパス名で作成されている値を削除したら、UACのダイアログは出なくなった。
- 289 名前:デフォルトの名無しさん mailto:sage [2007/02/23(金) 19:39:49 ]
- というわけで、レジストリ書き込み機能を別の exe に分離して、必要に応じてそっちを
起動するようにすれば、プログラムを起動するたびにUACダイアログが出るような事態は 避けられるんじゃないかと思いついたので、これから検証してみる。
- 290 名前:デフォルトの名無しさん mailto:sage [2007/02/23(金) 21:47:37 ]
- ホホウ
- 291 名前:デフォルトの名無しさん mailto:sage [2007/02/23(金) 23:07:12 ]
- この本(mook)どうよ?
ttp://www.amazon.co.jp/dp/4797340681/
- 292 名前:デフォルトの名無しさん mailto:sage [2007/02/24(土) 05:37:58 ]
- 随分検証に時間掛かるな。
- 293 名前:デフォルトの名無しさん mailto:sage [2007/02/24(土) 10:37:51 ]
-
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::。::::::::::::::::::::::::::::::::::::::::::::: :::::::::::::::::::::::::::::::::。::::::...... ... --─- :::::::::::::::::::: ..::::: . ..:::::::: :::::::::::::::::...... ....:::::::゜::::::::::.. (___ )(___ ) ::::。::::::::::::::::: ゜.:::::::::::: :. .:::::。:::........ . .::::::::::::::::: _ i/ = =ヽi :::::::::::::。::::::::::: . . . ..:::: :::: :::::::::.....:☆彡:::: //[|| 」 ||] ::::::::::゜:::::::::: ...:: ::::: :::::::::::::::::: . . . ..: :::: / ヘ | | ____,ヽ | | :::::::::::.... .... .. .:::::::::::::: ::::::...゜ . .::::::::: /ヽ ノ ヽ__/ ....... . .::::::::::::........ ..:::: :.... .... .. . く / 三三三∠⌒>:.... .... .. .:.... .... .. :.... .... ..:.... .... ..... .... .. .:.... .... .. ..... .... .. ..... ............. .. . ........ ...... :.... . ∧∧ ∧∧ ∧∧ ∧∧ .... .... .. .:.... .... ..... .... .. . ... ..:( )ゝ ( )ゝ( )ゝ( )ゝ無茶しやがって… .......... .... i⌒ / i⌒ / i⌒ / i⌒ / .. ..... ................... .. . ... .. 三 | 三 | 三 | 三 | ... ............. ........... . ..... ... ∪ ∪ ∪ ∪ ∪ ∪ ∪ ∪ ............. ............. .. ........ ... 三三 三三 三三 三三 三三 三三 三三 三三
- 294 名前:デフォルトの名無しさん mailto:sage [2007/02/24(土) 14:18:08 ]
- >>288 の身に一体何が…。
- 295 名前:デフォルトの名無しさん mailto:sage [2007/02/24(土) 19:54:15 ]
- >>288
書き込みを行ったあとそのプログラムが終了したとき互換アシスタントが出なかった?
- 296 名前:デフォルトの名無しさん mailto:sage [2007/02/24(土) 21:26:36 ]
- >291
今の時点で出ている Vista開発本は、英語以外、全て糞。
- 297 名前:デフォルトの名無しさん mailto:sage [2007/02/24(土) 21:42:14 ]
- >296
英語の場合のお勧めってあります?
- 298 名前:デフォルトの名無しさん [2007/02/26(月) 18:03:32 ]
- 自作のDLLをregsvr32で登録するようなインストーラを
WindowsInstaller(VisualStudio.NET 2003)で作成しています。 UACが有効になっている状態だと、インストールの途中で msiに対しての昇格ダイアログが出てくるのですが、 これを許可してもregsvr32でのレジストリ登録の段階で エラー0x80070005(E_ACCESSDENIED)で弾かれてしまいます (インストーラからは、カスタム動作の「確定」フェーズで regsvr32を呼び出しています)。 DLLにマニフェストを添付してrequestedExecutionLevelを 設定してみてもだめでした(asInvoker、requireAdministratorともに)。 COM登録を含むインストーラは、どのように作成されることを Microsoftは推奨してるのでしょうか。
- 299 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 18:33:05 ]
- >COM登録を含む
M$「だから、COMをドトネトで置き換えろっつーの」
- 300 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 19:38:40 ]
- それ言い出したらこのスレでネタにしてる話のほとんどは
アンマネージなアプリにしか関係ないような
- 301 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 20:17:39 ]
- MSI的にはregsvr32で登録するのは推奨してなかったはず。
- 302 名前:298 mailto:sage [2007/02/26(月) 20:28:53 ]
- >>299-301 様、ご意見ありがとうございます。
なるほど、regsvr32でのCOM登録はVistaでは 遂に切り捨てられたと見た方がよいのですね・・・ しかし、当方の場合は自作DLLですので変更の余地はありますが、 サードパーティーから提供されているCOMコンポーネントに 依存しているアプリケーションを作成しているベンダーは、 全自動でのインストーラを作成できなくなり困りそうですね (WindowsInstaller以外ならその限りではないのかも知れませんが)。 「コマンドプロンプトを管理者として実行してregsvr32を・・・」のような マニュアル書きでの対応になるのでしょうか。
- 303 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 20:34:10 ]
- regsvrで変更されるレジストリを記録して、
registoryテーブルに書くだけでないの?
- 304 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 20:46:06 ]
- vsdrfCOMSelfReg?
- 305 名前:298 mailto:sage [2007/02/26(月) 20:49:48 ]
- >>303 様
regsvr32を使用せず、msiによるレジストリ操作に任せるというわけですか。 確かにその方法ならregsvr32もDLLもコールすることなく 結果的にCOM登録できそうですね。 その方法はまだ試していませんでした、検証してみようと思います。 貴重なご意見ありがとうございました。 しかし、regsvr32の内部仕様に関しては詳しく知らないのですが、 環境によって動的に書き込む内容が変わるなどがあると少しまずいかもですね。 少なくとも、インストールフォルダを参照してDLLのパスを書き換える必要があるため 静的に書き戻すだけ、というわけにはいかないようです。
- 306 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 21:10:30 ]
- msiには、インストールフォルダ、とかの置換規則がいくつかあるよ。
- 307 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 22:40:26 ]
- だからvsdrfCOMSelfReg
セットアッププロジェクトってWindows Installerとは違うの?
- 308 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 22:41:10 ]
- SelfRegも、msiチームはあんまし・・・みたいな話だったなー。
- 309 名前:デフォルトの名無しさん mailto:sage [2007/02/26(月) 23:15:03 ]
- じゃあXP以上ではReg-Free COMを使うとか
- 310 名前:298 mailto:sage [2007/02/26(月) 23:15:41 ]
- >>304,307 様
vsdrfCOMSelfRegって何のことだかわからなかったのですが、 セットアッププロジェクトに追加したDLLのプロパティで 勝手にregsvr32同等の機能をmsiにしてもらう方法があったのですね・・・ すみません、単に私がmsiに関しての機能を把握していないだけでした。 試してみたところ、問題なく登録することができました。 また、DllRegisterServer/DllUnregisterServer内での処理も 昇格された権限を継承して実行できているようです。 COM登録インストーラのUAC対応は、どうやらこうするのが本筋みたいですね。 というか、msiからregsvr32呼ぶこと自体が間違っていました。 >>308 様 懸念されている問題は、 ttp://support.microsoft.com/kb/307367/ja にて記述されているようなことでしょうか。 確かに、上記のアーティクルでは[COM]か[COMRelativePath]が推奨されているようですね。 今は知識不足のため明確な違いがよくわかりませんが、 [COM]/[COMRelativePath]も調べてみて最適なものを採用してみようと思います。 本当にありがとうございました。
- 311 名前:298 mailto:sage [2007/02/26(月) 23:32:23 ]
- >>309 様
Reg-Free COMというのは知りませんでした。 調べてみたところ、VS2005からの機能のようなので残念ながら 今回は利用できませんが、開発環境をバージョンアップしたときの 選択肢になる可能性として参考にさせていただきます。 ありがとうございます。
- 312 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 00:32:42 ]
- MSが仕様だと言い張るので、Vistaのすばらしい機能を紹介します。
レジストリのHKEY_CURRENT_USERのキーを同一PC上のユーザにコピーする「機能」です。 (条件) ・実行ファイル名に"UPDATA"や"SETUP"などの文字を含む 例)MyUpdate.exe つまり、UACにひっかかるexeであること。 ・そのexeにmanifestをつけないこと。あってもいいけど、実行権限を指定しなければok。 (方法) ・そのexeの中で、HKCUのキーを書き込むだけでそのキーが全ユーザにコピーされます。 ・MFCアプリなら、CWinApp::GetProfileStringなどで、参照するだけでOK!ナイスすぎ。 しかも、書き込んだキーだけじゃなく、SetRegistryKeyで設定したグループ以下を 全部丸ごとコピーしてくれるから、とっても簡単! 通常は、会社名を設定するから、あなたの会社のソフトをまとめて面倒みてくれます。 microsoftをSetRegistryKeyにしたら・・・うは〜 ・書き込むって言ったけど、RegCreateKeyExをやっても、そのキーが丸ごとコピーされマス! (ただし) ・すでにキーが設定されていれば、上書きはされません。 キーが空だった場合のみ,ほかのユーザのHKCUのキーが新規で追加されます。 でも、普通デフォルト設定はキーを空にするよね。 ・コピーする内容がパスだった場合、ご親切にもパスのユーザー名の部分だけ置き換えてくれます。 たとえば、c:\User\papa\秘密.txt という文字列を書き込んだ場合は、ママのレジストリには c:\User\mama\秘密.txt と置き換えてコピーしてくれるんです!開発者のことよく考えてくれるね〜 このすごい機能は、RedirectHKCUKeysと言うらしいです。 これで、パパのクレジット番号だろうが、パスワードだろうが、ママがいちいち入力しなくても 親切にコピーしてくれるから、すごく便利だね! 一度おためしあれ。
- 313 名前:312 mailto:sage [2007/02/27(火) 00:43:18 ]
- あ、ちょっと間違えました。
実行ファイル名に"UPDATA"や・・・ ↓ 実行ファイル名に"UPDATE"や・・・
- 314 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 00:46:21 ]
- 何が問題なのか全然わからね。
> UACにひっかかるexe なんだからそのexeが悪意を持ってるって前提ならそもそも何でもやり放題だし 意図せずコピーされるって話なら対応策(の逆)を自分で書いてるし >・そのexeにmanifestをつけないこと。あってもいいけど、実行権限を指定しなければok。 つーかそもそもインストーラからHKCUに書き込むなというか
- 315 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 00:50:59 ]
- >>312
ひでぇな、これ。 >>314 >>312の最後の部分をよく読め。この問題をすぐに理解できなくても お前が馬鹿だとは思わないが、プログラマとして情報セキュリティに 関して理解を深めておくことを強く推奨する。
- 316 名前:312 mailto:sage [2007/02/27(火) 01:03:21 ]
- 314さんのおっしゃるとおりです。
MSの方も同じことをおっしゃっていました。 「これから」対応するソフトはmanifestをつけるだけでいいから 全然問題ありません。 インストーラからHKCUに書き込むのは確かにヘンです。 でも、アップデートプログラムは・・・? CDに書いて店頭に並んじゃったCDは、Vista対応じゃないから自己責任ですよね。 ちなみに、ヒマなときに検索したところ、iTunes、Realplayer、DivX Cordecあたりは、 ××update.exeというマニフェストを含まないexeがインストールされます。 HKCUに書き込みを行っていないことを願うばかりです。 iTunesは、iPodにCDで入ってますから。 対応OSよく見ないVistaユーザなんていないですよね。 そもそも、exe名の文字列だけで引っかかるというのもね、ちょっと。 そんな恨み言いってもしょうがないんですけど。
- 317 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 01:05:21 ]
- 俺も何が問題なのか理解できん。
その仕様を利用してどんな悪さが可能なのか提示キボンヌ。 ファイルのパスだけじゃなくファイル自体もコピーするってんなら、悪用の仕方もいろいろ思いつくんだけど。
- 318 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 01:07:51 ]
- >>317
ポイントは悪用じゃなくて、意図せずに情報が他のユーザに漏れてしまうこと。
- 319 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 01:15:39 ]
- 意図せずに、ったって、setup.exeとか言う名前で、
しかも管理者権限をUACで有効にしてるんじゃないの?
- 320 名前:312 mailto:sage [2007/02/27(火) 01:19:39 ]
- ちゃんと書き込みしましょう。
正直、どんな「悪用」ができるかまで考えが及んでません。 ただ、この条件にマッチしてしまう市販ソフトが店頭に並んでしまっているわけです。 先ほど例として挙げたように、iTunesをはじめ、AcrobatReaderなんかも、バックグラウンドで 最新版をチェックするようなアプリには、××update.exeみたいな名前をつけちゃうんです。 で、MFCアプリの場合は、「参照」しただけでキーのコピーが行われてしまうので、 ソフトメーカーの姿勢として、どうやってこれを対処するのか?ってことなんです。 市場に出ているソフトを全回収?その費用は誰が持ってくれるの? Vista対応って書いてないソフトだからほっとく? テストした結果、パスワードがコピーされることが確認されました。 我々は、さすがにこの動作はMSが直してくれるだろうと思ってたんですが、 MSの見解として、「仕様」と位置づけられたために、手詰まりなんです。 そこで、この仕様は、本当にこのままで問題ないの?ということを、 高い知識を持った皆様に伺ってみたかったんです。 ちゃかしたような書き込みですみませんでしたが、かなり困ってます。
- 321 名前:312 mailto:sage [2007/02/27(火) 01:23:10 ]
- >>319
管理者権限を設定してあれば、この動作は起こりません。 権限を設定していないXP時代のアプリの場合に発生します。 で、Setupだけだったら問題は少なかったんです。 でもUpdateは、多くのソフトがこの名前を「インストーラ」ではなく、 「最新版チェックツール」につけているんです。
- 322 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 01:26:23 ]
- 考えれば考えるほど、問題が出ない気がしてきた。
そもそも秘密文章とかは、パスがわかってもそもそも開けない アクセス制限のかかった環境におくんじゃないのか
- 323 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 01:30:54 ]
- >>322
秘密文章のパスが書き込まれるだけならおっしゃるとおりです。 しかし、パスワードのような短い文字列は、HKCUに直接書きませんか? もちろん、文字列をそのまま書き込むようなことはしないと思いますが、 たとえ暗号化してあっても、HKCUにパスワードが記入されていたときには、 自動ログインするよう動作のアプリの場合、ほかのユーザが「ログイン」 できてしまうわけです。
- 324 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 01:34:20 ]
- かつ、管理者権限を持つヒトが実行した、update.exeみたいな
名前のプログラムが、そのHKCUレジストリを参照したとき、だろ?
- 325 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 01:36:52 ]
- うーん。プログラムのアップデートサーバにログイン認証を仕掛けているとき、
アップデータがHKCUにログイン情報を書いていると、しつが管理者以外にも 漏れる、くらいしかシナリオが思い浮かばないな。
- 326 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 01:38:09 ]
- ちょっと考えただけで、例えば、誰かが勝手に作った gmail 関連のツールなんかで
インストール時に gmail のユーザアカウントとパスワードを入力→他のユーザから メールボックス丸見えw なんて楽しそうなシナリオが満載ですねww
- 327 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 01:41:48 ]
- >>324
そうなんですが・・・ MFCプログラムでは、初期化のときに、このソフトはどのレジストリキー以下を参照するか 設定する流儀になってるんです。 これが、SetRegistryKeyというAPIです。 つまり、初期化のときに、「このアプリは、HKCU\MyCompany 以下に情報を書き込みます」と 設定しておけば、その後はいちいちMyCompanyを指定しなくても、レジストリの読み書きができる ようになっています。 で、この動作の凶悪なところは、HKCU\MyCompany\MyApp\password というキーを参照しただけで、 SetRegistryKeyで設定したHKCU\MyCompany\以下を丸ごとコピーするのです。 つまり、前回終了したときのWindowの位置を参照しにいっただけで、隣に書いてあったPasswordまで コピーされます。 MFCの中で、参照の際にSetRegistryKeyで指定した初期位置に対して、RegCreateKeyEx等を 実行してるんじゃないかと推測します。 レジストリの変更をリアルタイムに監視するツールで見てたんですけど、それはもう見事に 丸ごとコピーされました。なかなか壮観は映像でしたよ。
- 328 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 01:46:29 ]
- たしかにログイン情報は危ないかもな。
具体的な例はメールチェッカくらいしか思い浮かばないけど これはレジストリあたりにパスワードを記録してる可能性高いし 暗号化されてる情報でもコピペすればそのまま使えるだろうから
- 329 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 01:50:12 ]
- >>328
たとえ他に危険がケースがなくともその例だけでもうお腹いっぱいだろ。
- 330 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 01:52:38 ]
- あともう一つ。
作業用フォルダとか、データ保存先フォルダ(これは大した問題じゃないですが)なんかがコピーされると、 アプリが起動しない、とか、「作業用フォルダが見つからないのできどうできない」とか、以前保存しておいた ファイルがなくなった!(ように見える)とか、セキュリティというレベルでなくても、動作上の深刻な不具合は たくさん起こりえると思います。 もちろん、異常なレジストリデータが入っていたときの処理を、きちんとアプリに実装していればいいんですけど・・・ こういう動作って、設計の時にはなかなか思いつかないんですよ。検査でも発見されにくいですし。 絶対自分しか書き込みしないと信じて作ると、そうなりますね。 まさか、まさか、OSが他人のキーをコピーするなんて、全く想定してませんでしたから・・・
- 331 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 02:43:16 ]
- >>330
関係無いけど口調が回りくどくてうざい。 もっと普通に書けんのか? それと、文は簡潔に短く纏めろ。有意義な事が書かれてても駄文だと誰も読まんぞ。
- 332 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 03:00:36 ]
- >>331
外野は黙っててくれませんか? 折角有意義な情報を提供してあげているのだから・・・ もっと真面目に考えて欲しいものです
- 333 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 03:36:20 ]
- なんだコイツ?
- 334 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 03:37:25 ]
- >>332
ここでチマチマとやらずに、IPAなりセキュリティホールメモなりスラドなりにタレ込んで 話大きくしたらいいんじゃね?
- 335 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 04:12:57 ]
- おれはこういう情報も、チマチマ欲しいと思うんだがな
多少なり有意義な情報と思うよ たしかに文章的には読むのを辞めたくなる文だが…
- 336 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 05:01:56 ]
- >>331
禿同 いくらいい情報でも文章がアレだと台無し。 >>332 折角能力高いのにもったいないですよー
- 337 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 05:16:37 ]
- 参考になった。
いろんな意味で。
- 338 名前:デフォルトの名無しさん mailto:age [2007/02/27(火) 05:42:30 ]
- 情報漏洩ネタだし、ageてみるテスト。
- 339 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 06:10:38 ]
- Yahooメッセンジャーはパスワードとかをレジストリの
HKEY_CURRENT_USER\Software\yahoojapan以下のどっかに保存してるみたいで WinXPだとこれを丸ごとコピーすればそのまま別ユーザでも起動できるみたい。 この漏洩話が本当に起きるなら、Vistaで「HKCU\Software\yahoojapan」に 特定条件下でRegCreateKeyをかければ、全ユーザでYahooメッセの情報が共有されるってことなのかな
- 340 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 06:12:36 ]
- >>339
Yahooメッセンジャーって>>312の(条件)に当てはまるところがあんの?
- 341 名前:340 mailto:sage [2007/02/27(火) 06:13:35 ]
- ごめん、よく読んでなかった。
- 342 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 07:03:47 ]
- いやいや、一般ユーザの権限で、他のユーザのヤフーメッセンジャーのパスワードを盗める可能性が>>399によって提示されたのだよ。
もっとも、問題があるのはヤフーメッセのほうだと俺は思うけどな。
- 343 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 07:23:43 ]
- 管理者ユーザのパスが漏洩する、であって、一般ユーザが能動的に
奪取は出来ないのでは?
- 344 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 07:53:48 ]
- これについては漏洩がどうとかいうより、これのせいで意図しないのに情報が
全ユーザにコピーされてしまうことで、レジストリにアクセスしたソフトが 変なクレームを受けることになる可能性のほうが重要な気もする
- 345 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 08:50:39 ]
- 確かに、自社の製品がこれに該当したら冷汗ものだな。
- 346 名前:312 mailto:sage [2007/02/27(火) 09:07:14 ]
- みなさん、ご意見ありがとうございました。
回りくどい表現ですみませんでした。 最後に、この症状が発生するアプリの作り方だけアップします。 CUpdateApp::InitInstance() { //CWinAppを利用して参照するレジストリの最上位を指定します。 SetRegistryKey(_T("Aisoft")); //HKCU\Software\Aisoft\AU配下にあるTestEntryから文字列を取得します。 CString strTestEnty = GetProfileString(_T("AU"),_T("TestEntry"),_T("TestData"));
- 347 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 09:07:58 ]
- うわ、最悪
途中でアップしてしまった。 もうどうでもいい
- 348 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 09:16:48 ]
- エーアイソフトさん大変だなw
- 349 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 09:38:45 ]
- 俺がこの世でもっとも許せないヤツは、
スーパーで清算後に品物を袋詰めした後のカゴをカゴ置き場に戻さないヤツと、 プログラムのコメントにですます調を使うヤツだ。
- 350 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 09:53:37 ]
- 今自作のプログラムをいじっていて気づいたんだが、.exeのファイル名だけじゃなく、
製品名やファイルの説明にsetupとかupdateが含まれていてもUACの対象になるのな。
- 351 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 10:10:35 ]
- そこまでしなくてもいいだろうになー
- 352 名前:デフォルトの名無しさん mailto:sage [2007/02/27(火) 10:14:26 ]
- >>349
ですます調いいじゃん。なぜ駄目なの?
|

|