質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

WebSocket

WebSocketとは双方向・全二重コミュニケーションのためのAPIでありプロトコルのことを指します。WebSocketはHTML5に密接に結びついており、多くのウェブブラウザの最新版に導入されています。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

4回答

1322閲覧

あるブラウザから、他のブラウザを監視することは可能でしょうか?

wkbiz

総合スコア152

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

WebSocket

WebSocketとは双方向・全二重コミュニケーションのためのAPIでありプロトコルのことを指します。WebSocketはHTML5に密接に結びついており、多くのウェブブラウザの最新版に導入されています。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

1クリップ

投稿2019/04/24 09:53

編集2019/04/24 13:07

よろしくお願いします。

例えばChromeからFireFoxで行う操作、
FireFoxからIE11で行う操作
を監視することは可能でしょうか?

利用者が同じブラウザ内なら1番目タブから2番目タブの操作を監視するのは可能そうなのですが、違うブラウザだと無理なのでは?と思うのですが。
しかしwebsocketなら可能な気をしてます。

可否だけでも結構です。
ご教授いただけると幸いです。
よろしくお願いします。

(追記)
・監視したいのは、他ブラウザの操作、文字入力、ボタン押下です。
(ご指摘頂きましたので追記させていただきました)

ーー(追記)
ご回答頂いた皆さん、ありがとうございました。質問の件は業務に係ることなので詳細が言えずすみません。
時間が無いのでこういう形で質問しましたが、今後のためでもあるので色々調べて見ます。有難うございました。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答4

0

ベストアンサー

他のブラウザを監視することは可能でしょうか?

何を監視したいのでしょうか?
……という定義がとても重要な問題で、基本的にどうあがこうが他のブラウザの利用状況を調べることなんて不可能だからです。

先回りしてやりたいことを想像すると、
「多分出来ません」というのが回答になると思います。


OSはタスク管理が出来ます。
1個しかないCPUやメモリの仕様状況を管理して、
ブラウザやエディタ、その他アプリケーションの起動やメモリの割り振り、CPUの使い方を逐一管理しています。
なのでOSのAPIに問い合わせれば大抵の事は出来ます。

おまえ裏でこっそりエロゲ起動しとるやろ?
みたいなこともOS越しにプロセスを監視すれば出来ます。

ですが、ブラウザ内で動作するJavaScriptでそんな事されたらどうでしょうか?
私のWebサイトを覗いた瞬間、君は○○のソフトを実行中だね?
皆にバラして欲しくなければ下記の口座に金払え…とまぁこうなるわけです。

JavaScriptはAjaxで文字列を任意のURLにのせてHTTPリクエストを叩けますから、
こういうプライペートな情報を盗み出してWebサーバ上のDBに保存しておいて脅しに使うと……いやいやヤバイでしょ好き放題されちゃいますね。

なので、実際にはブラウザはJavaScriptに対して、
「お前はHTMLを読み込んで、そのDOMツリーを変更する権限以外は何もやらねーよ」
という感じの超強力や成約を掛けているわけです。
なのでJavaScriptからでは、そのマシンがChrome以外に何を立ち上げているか知ることは不可能です。


同じブラウザ内なら1番目タブから2番目タブの操作を監視するのは可能そうなのですが

とりあえずこれは無理です。
なぜならば、JavaScript自体に別のタブや別ウィンドウで開かれたページの情報を得る権利が無いから。

それがもし出来るならこのような悪用が可能です。
私のWebサーバにはエロサイトや違法なサイトのURLリストをリストアップしておき、
AmazonやTwitter、Facebook等も開いているとよりよいですね。
訪問したユーザーの別タブの開いている情報を探る機能を埋め込んで置きます。

ユーザーが訪問してきた時に、裏でエロサイトを閲覧していたら、IPアドレスを控えてAjax通信で保存しつつ、脅すわけですよ。

下記の口座に振り込まないと、SNSでお前が普段どのようなサイトを見ているかバラすぞ
…とまぁこんな感じで。
頑張れば銀行の認証番号やクレカも盗めそうですね。

そのため、ブラウザは別タブや別ウィンドウの情報は決してJavaScriptに教えないようになっています。
なぜなら悪用されるから。


しかしwebsocketなら可能な気をしてます。

WebSocketでも当然無理です。

Ajaxの弱点は自分からHTTPリクエストを発射することだけです。
つまり、Webサーバから「お伝えしたい」事があっても、伝える方法がないわけですね。
なのでチャットやゲームでは、こちらから定期的に「何か伝えたい事ある?」というAjaxを何度も送って、捕まえるという操作が必要でした。

それをWebScoketでは通信を繋ぎっぱなしにして、
JavaScriptからサーバーにお願いしたい内容を送信したり、
逆にサーバーから追加情報を送ったりという双方向の情報共有が可能となりました。

ここが画期的なだけであって、
重要な情報を知ることが出来ない以上、
双方向通信が出来ても何も進展はしません。


じゃあどういう条件ならばできそうか?

  • IDとPassを発行
  • 同じユーザーでアクセス
  • Webサイト内の特定ページにアクセスすると解析開始、JavaScriptで得られる全ての情報をWebサーバへ送信していく
  • 別のマシンで受け取った情報をログとして出力する

想像した事は出来ているでしょうか?

投稿2019/04/24 10:20

miyabi-sun

総合スコア21158

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

wkbiz

2019/04/24 10:40

得たいのはブラウザ上での操作(入力、押下など)です。 はい、合ってます。 ハードルは高いし、セキュリティ面も超えないとという事ですよね。 ありがとうございます。
guest

0

ブラウザ上のスクリプトを使うならば無理そうですね。

もちろん、ブラウザ自体をプログラミングするならば話は別です。もっとも、他プロセスの監視するとワクチンソフトが騒ぐと思いますよ。

投稿2019/04/24 10:28

HogeAnimalLover

総合スコア4830

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

各ブラウザで、そういうアドオンを開発して、通信し合うことは可能な気がします。

投稿2019/04/24 11:48

otn

総合スコア84499

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

wkbiz

2019/04/24 11:53

ありがとうございます。 アドオン開発となると言語はC#で、って感じでしょうか? JS、nodeだけでなくその辺も考慮の範囲にしようか悩んでるところです
otn

2019/04/24 11:58

> アドオン開発となると言語はC#で、って感じでしょうか? え?JavaScriptでは?
wkbiz

2019/04/24 13:03

ご回答ありがとうございます。 IEも含めて考えていたためC#かと先走りしました。 色々調べて見ます。ありがとうございました。
guest

0

できないとは言い難いですが、できたらできたでセキュリティ上問題なような気がします

投稿2019/04/24 09:57

yambejp

総合スコア114769

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

wkbiz

2019/04/24 10:41

IEはセキュリティでひっかかるようだというのは調べてわかっています。 ありがとうございました
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問