• ベストアンサー

ソフトキーボードの使用はキーロガー対策に有効でしょうか?

最近物騒なニュースが多くて、ニュースや各種アップデートに、まめに注意するのも限界に近づいてきた感じで負担が重く思う今日この頃です。 ウイルス・マルウエア対策パターンファイルが更新されるまでの「端境期」だとか、単純に本業の仕事が忙しくて更新を怠ってしまうのもやむをえないようなことも考えて、以下のような「暫定的な安全の心がけ」を考えてみました。 ・各種会員サイトでのログイン情報記憶は全部無効にする ・情報入力に当たっては、HWのキーボードでなく、ソフトウエアキーボードを使って、万一キーロガーに忍び込まれてもキーを叩いたことにしない ・・・と考えてみたのですが、 ここでいわゆる「ソフトウエアキーボードのたぐい」というものは、素直にキーロガー対策に有効だと思ってよいでしょうか? 結局HWのキーボード鍵盤を叩いたのと同じ足跡として捕捉されてしまいますか? 数あるソフトウエアキーボードのアルゴリズム次第で、有効なものもあれば無効なものもある、という感じでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • hoihence
  • ベストアンサー率20% (438/2093)
回答No.8

#2です。 前々回の内容について、訂正ならびに補足をいたします。 打鍵→キーボード内臓のコントローラ→チップセットに統合されてるキーボードコントローラ→i8042prt.sys→kbdclass.sys→user32.dll(Win32サブシステム)が正しいです。 で、スキャンコードから文字コードへの変換は、user32.dllに於いて、kbd101.dll、kbdjpn.dllならびにレジストリにあるScancode mapにより変換されるようです。 なお上記は、PS/2の場合です。USBの場合は、USBのキーボードドライバがPS/2をエミュレートするそうです。 ソフトキーボードに於いては、ウィンドウメッセージをフックするなどの方法があるようです。また、ハードキーボードの場合は、フィルタドライバを用いるなどの方法があるようです。 ※いやー、今回は個人的に改めて勉強になりました。と言うのは、いろいろ調べたりして、概略的ながら知識が得られたからです。

altosax
質問者

お礼

ひやあ、こんなにご丁寧に恐縮です! 私はWindowsは3.1を勉強して以来、職場ではOS2になってしまい、その後十年以上ぼんやり浦島太郎で過ごして来たため、今ごろになって大慌てしています! >今回は個人的に改めて勉強になりました。 途中でどきっとする場面もありましたが、なんだかとても後味さわやかに気持ち良いスレッドになれて質問者の私もとても踏み込んだ勉強ができてうれしく思います!

その他の回答 (9)

  • xcrOSgS2wY
  • ベストアンサー率50% (1006/1985)
回答No.10

あっ、いえいえ、説明不足でした。新生のは「文字が固定の順番で表示されるタイプ」です。ですので、マウスクリック位置をモニタされるとクリックした文字が分かってしまいます。 ランダム変更方式は、私のあまり多くない経験から言えば、現実世界のテンキーでしか見たことがないですねぇ。

altosax
質問者

お礼

いえいえこちらこそ、本当にたくさんの知識を授けていただき感謝感激です。 家庭へのパソコンバンキング普及で問題点が騒がれている今ですので、 せっかく専用ソフトキーパッドがポップアップする造りにしているならば 簡単にできる筈のランダムに配列を変える方がよさそうにも思いますよね。 利用者が素人ということを最優先に配慮して、「使いにくい!」という 苦情の発生に配慮した結果、固定に決定したのかもしれませんね。 しかしいずれにしても、いたちごっこは永遠に続く、が大原則なんですよね。 ふう、、、 でもいつの日か、平和なコンピューター大衆社会の秩序が確立してくれる ことを祈りたいです!! どうもありがとうございました!

  • xcrOSgS2wY
  • ベストアンサー率50% (1006/1985)
回答No.9

ソフトウェアキーボードも実際の使用例を挙げておきますね。 こちらは金融機関の例です。 「[ 新生銀行 ] 新生パワーダイレクトのセキュリティがますます向上しました!」 http://www.shinseibank.com/news/news_security.html 暗証番号・パスワード入力時に、画面上にソフトウェアキーボードを表示してマウスでクリックさせるようになっています。 でもこれ、暗証番号程度ならともかく、パスワードの入力は面倒なんだよなぁ・・・

altosax
質問者

お礼

おお!これが例の、「ランダムにキートップが変更式」のものなのですね。 でも、今後いたちごっこが熾烈をきわめて、マシンも高速化が進むと, 気付かれずにデスクトップ丸見えが当たり前の時代がすぐに来てしまうかもしれないですね(:_;) 先般、一般新聞テレビニュースでもすっかり一般市民に知れることとなったファイル交換マニアの方々の間で流行ったマルウエアの事件を思うと、なんだか20年前のエイズが同性愛の人々だけの特殊な病気だと半ば差別的に横目で見られていたことを思い出してしまいました。 悪い世の中にはなってほしくありませんが、病気に関する医学的な知識も情報教育も、特別な先生やマニアの人々にお任せではいけなくて、地道に平易に本質を私のような一般民に啓蒙していかなければ大変なことになりますよね・・・ 本当に有り難うございました。

  • hoihence
  • ベストアンサー率20% (438/2093)
回答No.7

#2です。 えー例のFD&コピペなんですが、キーロガーがアクセス先を察知できるとしたら? と言うより、「Browser Hijacker」というブラウザ経由の通信をフックできるスパイウエアがありますが(必然的にロギングになってる)。ツールバーが引っ付くとかじゃなくて、バックグラウンドで密かに動いてるとか。Trojなんかにも勝手に持ってっちゃうやつがあるし。 やっぱり、アンチウイルスの「個人情報保護機能」とかPFWのアウトバウンドトラフィックの正しい設定とかですかね。 ちなみに、私はKerioというPFWを使ってますが、何らかのマルウエアがバックグラウンドでHTTPやFTP等を用いて、PFWをかわそうとしても察知します。また、「a-squared Personal」というのがあるんですが、実行中プロセスへの介入(DLLインジェクション、Codeインジェクション・・・)を察知しますよ。IDSみたいになってます。

altosax
質問者

お礼

>例のFD&コピペなんですが、キーロガーがアクセス先を察知できるとしたら? キーロガーというと、古典的な打鍵記録なのかとばかり思い込んでました。 今や「キー&クリック&URL ロガー」に進化してたんですね!! いやはや降参しました、というか、うんざりというか、背筋がぞっとしますね! (去年大ニュースになった金玉ウイルスも広い意味での進化型キーロガーという訳ですね) >PFWをかわそうとしても察知します これはすごいんですね! まるでマッキントッシュの魔法並みですね;-p しかも9xでも使えて軽量で無料とは!! さっそく勉強がてら導入致します!

  • hoihence
  • ベストアンサー率20% (438/2093)
回答No.6

#2です。 一応、ハードの方はどうなってるかと言うと、 打鍵→コントローラ(スキャンコードに変換)→i8042prt.sys→kbdclass.sys(scancode mapなどによる文字コードへの変換)→user32.dll(win32サブシステム)です。←確かこうだったと思います。 ソフトキーボードはエミュレータなのはご存知と思いますけど、要は、ソフトの物にしろハードの物にしろ、途中でフックされてしまうという意味で言えば同じと言えてしまうと思います。 で、一番やばそうなのはrootkit系のやつだと思います。stealth技術を使うのが常套なはずなので。 でも、最近のアンチウイルスやアンチスパイウエアはキーロガーを検出できますけどね。

参考URL:
http://www.altech-ads.com/product/10000454.htm
altosax
質問者

お礼

おお、核心をずばりと! これは大変助かりました!!! >←確かこうだったと思います なんと最近のウインドウズだと4段階もモジュールを通過するんですね! >要は、ソフトの物にしろハードの物にしろ、途中でフックされてしまうという意味で言えば同じと言えてしまうと思います。 まったくそうなんですねえ・・・ 当初私は、マウスだけなら良いかも?などと大甘な先入観でした^^; >一番やばそうなのはrootkit系のやつだと思います これはまた物騒なヤカラなんですねえ! カーネルまでこっそりすりかえられるなんて思いもよりませんでした。 >参考URL: これは大変うれしいものを教えて頂き助かりました。 このごろ訳の判らないポート番号への執拗なアクセスがログに溜まって気になっています。 さっそくこれを試して見ます!

  • hoihence
  • ベストアンサー率20% (438/2093)
回答No.5

#2です。 勘違いはしておりません。キーイベントをフックするなり、システムコールをフックするなりの手法があると思われ。 ※#4に告ぐ 単にあなたが勝手に思い込みをしただけ。

altosax
質問者

お礼

大丈夫ですので、どうぞご心配なさらないでください。 >システムサービスとしてソフトキーボードが存在し、それを使用する場合は、ソフトウェア(アプリケーション、キーロガーとも)から見てハードキーボードとソフトキーボードの区別はありませんので。 とのくだりで、#1#4さんの趣旨=#2#3#5さんの趣旨、 ということが、当の質問者の私には理解できましたので。 スレッドに寄せていただきました皆様のご指導にはどなたも一貫して相違は無いものと いうことがわかって、大変助かっております。

  • xcrOSgS2wY
  • ベストアンサー率50% (1006/1985)
回答No.4

(長文失礼します) 質問者さんや私(No.1回答者)がソフトキーボードを「アプリケーションが自前でグラフィック表示してマウスで文字を選択させる仕組み」の意味で使っているのに対して、No2/3回答者さんはソフトキーボードを「システム(OS等)が文字入力メソッドの一環として、グラフィック表示してマウスで文字を選択させる仕組み」の意味で使っているため話が食い違っているのではないでしょうか。 システムサービスとしてソフトキーボードが存在し、それを使用する場合は、ソフトウェア(アプリケーション、キーロガーとも)から見てハードキーボードとソフトキーボードの区別はありませんので。 話は変わりますが、ランダムに数字を表示するテンキーの詳細をちょっと書きたいと思います。これは実世界での暗証番号入力の際の話なのでソフトキーボードと直接の関連はありませんが、防御の考え方の根底は一致していると思いますので。 多くの場合、暗証番号入力のためのテンキーは単なるプラスチックのキーが並んでいて、そのキーの上に数字が書いてあります。(ATMですとタッチパネルのものも増えていますが。余談:よれよれになって入力しづらいタッチパネルは何とかしてくれ!(笑)) しかしこの「数字と場所の関係が固定」の状態ですと、盗み見の危険が非常に高くなることはご承知のとおりです。実際、銀行のドアの入室時の暗証など、出入りの多いドアであれば30分も観察していれば分かってしまいます。(何度も観察していたことがあります。銀行によってはいつも待ち時間がすごく長いところがありますからね。) それを避けるため、テンキーの上の数字がすべて7セグメント表示(電卓の数字みたいなやつ)になっている、そういうテンキーが実在します。 使い方は2種類あります。1つはリセットを押すとランダムに数字が表示されるタイプで、いちどランダムな数字が表示されたら暗証番号を入力し終えるまで同じ数字が表示されています。もう1つは暗証番号を1桁入れるたびに数字がランダムに変化するというものです。 前者の場合、暗証番号の中に繰り返しの数字があると、それが分かってしまう可能性が高くなります。同じ数字を押すときにはキーを確認せず素早く2回押すことが多いからです。しかし後者の場合は、繰り返しの数字があっても入力速度が速くならないので、繰り返しの数字があるかどうかも観察からは分からなくなります。 http://pc.watch.impress.co.jp/docs/2005/0715/lebedev.htm このキーボードが安価に出てくれれば、そういう仕組みをPCに取り入れるのも楽になるんですけどね。

altosax
質問者

お礼

子供の頃に夢見ていた「コンピューター社会」というのは本当にばら色の夢 ばかり期待してましたが、やっとパソコンが使える程度の一般市民でさえ、 専門技術者並みに情報犯罪と立ち向かっていかなければならない、という 現実になるとは、なんとも文明の皮肉なところですよね。 >暗証番号の中に繰り返しの数字があると、それが分かってしまう可能性が高くなります こんな入力速度までキーポイントとして注目されているとは・・・ ブラインドタッチなどをあんまりシャカリキに習得しようとするのも、かえっ て仇になってしまう可能性も大いにあるんですね! 将来的に安全確保の目的でキーの配置マップを適宜変更できることが当たり前 のように普及したとしても、こんどは変更後の定義ファイルを参照するような マルウエアもいたちごっこで登場すると思っておくべきでしょうし、ほんとに 悩ましいですよね。 >このキーボードが安価に出てくれれば、そういう仕組みをPCに取り入れるのも楽になるんですけどね。 これは面白いし、キートップの文字がちびてしまう心配も不要で革命的ですね!  写真を見ただけで欲しくなってしまいますね。 問題があるとすれば直射日光のような明るい場所で照射文字がみえるかどうか ぐらいでしょうか。 私は自宅の枕元で使うパソコン用に最近鍵盤全体がほんのり明るく文字が見える キーボードに買い換えて大いに助かりました。

  • hoihence
  • ベストアンサー率20% (438/2093)
回答No.3

#2です。 キーマッピングは単なるキーに対するコードの割り当てです。 I/Oに近いところで言えば、○○prt.sys、kbdclass.sysですかね。 あと、system32フォルダに、kbd101.dllやkbdjpn.dllがあると思いますが。 要は、途中でフックできる作りになってるはずです。

altosax
質問者

お礼

>要は、途中でフックできる作りになってるはずです どうも補足をありがとうございます! おかげさまで基本的な理解がやっとできるようになりました。 HWとしてのキーボードがまったく接続されていないとしても SWキーボードを使ってしまえばkbd関連各種モジュールをすべて動作 することになってしまうんですね。 ※オンラインバンクをはじめとして、各種会員サイトでは安全のために  定期的にパスワードを変更してください、と呼びかけていますが、  キーロガー等が仕込まれているのに気付かなかったら、変更の動作を  したことすら、捕捉の対象になってしまうと思うので、かねがね怖い  と思っていました。  そこで、今ちょっと考えてみたのですが、簡易な方法として、  1:フロッピーにIDとパスワードをテキスト保管して、  2:使わない時はいつもスロットから抜いておく  3:ログイン等で必要なときだけFDのファイルからコピー&ペースト  という方法はいかがでしょうか?  (画面全体がリモート鑑賞?されてしまうケースだけは無力ですが、   あくまでキーロガー対策ということで^^;) クリップボードを監視されても、どこのサイトのどのダイアログBOXに ペーストされた、という特定をされるのはなかなか困難かと思いましたので。

  • hoihence
  • ベストアンサー率20% (438/2093)
回答No.2

こんにちは。 HWキーボードでもSWキーボードでも同じと言っちゃえば同じですね。 なぜなれば、ソフトウエアセンシングだから。キーマッピングがHW キーボードと同じなら変わらないということになっちゃうと思います。

altosax
質問者

お礼

>なぜなれば、ソフトウエアセンシングだから。キーマッピングがHW >キーボードと同じなら変わらないということになっちゃうと思います。 これについて、ぜひもう少し詳しく教えていただけましたら助かります!! 実は質問の背景として自分なりに考えたのは、HWキーボードの場合は、 デバイスドライバを必ず通って、あと、物によってはBIOSを通るものもありますよね。 そこから、キーロガーというものは、BIOSやkbd.sysなどのドライバを監視するように設計されているだろうな、と推測してみたんです。 SWキーボードの場合だと、BIOS管理していないマシンであれば、マウスさえあればPCが起動使用可能になりますので、キーロガーの仕組みというものがこれらの監視をされているならば回避できるかな、と思ってみたので、確かめたくて投稿してみました。 「キーマッピング」の監視、というのは、具体的にどんなモジュールが監視の対象になると覚悟することになりますでしょうか?

  • xcrOSgS2wY
  • ベストアンサー率50% (1006/1985)
回答No.1

ソフトキーボードはキー入力を要さないので、純粋な「キーロガー」(キーボード入力を記録するプログラム)への対策であれば充分効果的です。しかし、マウス移動も合わせて取得するような複合型ロガーの場合、ソフトキーボードでも「マウスをクリックした位置」の記録から入力内容が漏れしまう可能性が皆無とは言えません。 ある程度その場合も考慮するとすれば、ソフトキーボードの仮想キートップの文字配置をランダムにすることが考えられます。そうすることで、マウスクリックの位置を記録しても入力内容が漏れることはなくなります。(セキュリティレベルの高い部屋に入室するときのテンキーで、実際によく使われる手です。) そこまでやっても画面の記録まで取るロガーが相手だと無力ですが・・・そういうロガーの対策をやるとすれば、あとはソフトキーボードの仮想キートップの位置自体が時間とともに移動するようにするくらいでしょうか。(この部分、かなり適当なこと書いてます。)

altosax
質問者

お礼

PCではなかなか微妙なところなんですね。。。 >(セキュリティレベルの高い部屋に入室するときのテンキーで、実際によく使われる手です。) おお!現実にそういう攪乱戦術もおこなわれてるんですね! どうもありがとうございました!

関連するQ&A