• 締切済み

クライアントアプリケーションへの攻撃について質問です。

クライアントアプリケーションへの攻撃について質問です。 いつもお世話になっております。 サーバアプリケーション(サービス)の場合、特定のポートでクライアントからの接続を常に待っているためセキュリティに配慮しないとそのポートから攻撃されると思います。 私が気になったのは、クライアントアプリケーションも起動しているときはポートを使用していると思うのですが、そこは攻撃されないのでしょうか。 例えばNAPTを使っていても、LAN側からインターネットに接続すれば、その間クライアントアプリケーションのポート宛のパケットはPCに届くと思うのですが。まあ、実際どうやってそのポート番号を知るのかは置いておいて。 よって、 (1)ネット上に何の防御もせず晒していても、クライアントアプリケーションが攻撃されることはないのでしょうか(ポートへ接続といったらいいのか、正規の返信に似せた何かを送りつけるとか)。クライアントPCのサービスへの攻撃ではなく、クライアントアプリケーションへの攻撃です。 (2)(1)で攻撃される場合、現実的にどのレベルの対策を打てばそれなりに安心と言えるのでしょうか。 何もいらないのか、NAPTでいいのか、ファイヤーウォールをいれればいいのか、プロキシが必要なのか。 普通の家庭だとパーソナルファイヤーウォールにルータのNAPTくらいだと思うのですが。 なお、サーバに接続して、そこからウィルスをもらうとかそういう攻撃ではなく、あくまでもクライアントアプリケーションへのポートへ直接なんらかの攻撃をされて被害にあうことがあるのかどうかです。今までの事例ですとか、プログラムソースやポート番号がわかっていれば可能であるとかそういうことが知りたいです。 わかりにくければ補足します。 よろしくお願いします。

みんなの回答

  • OKbokuzyo
  • ベストアンサー率43% (130/296)
回答No.2

多分いっぱい勘違いしていると思うんだけど何からどう説明すればいいのか‥。 まず、Webサーバの多くは80番ポートでリクエストを受け付けますが これって通信している間、クライアントはずっとサーバの80番ポートとやり取りしていると思ってないですか? 例えば、あなたがokwaveのトップページを開くとき、 ブラウザは今仮に33333番ポートを使用し、okwaveは80番ポートを使用している、 このときokwaveが80番ポートに向かって攻撃を受けることがあるなら 自分も33333番ポートに向かって攻撃されるんじゃないの? っていうふうに思っていますか?? >ネット上に何の防御もせず晒していても、クライアントアプリケーションが攻撃されることはないのでしょうか >クライアントアプリケーションへのポートへ直接なんらかの攻撃をされて被害にあうことがあるのかどうか クライアントアプリケーションへの攻撃というか、 クライアント起点攻撃を総称して受動的攻撃なんていいますね。 通信にはTCP/IPを使うことがほとんどなわけで、 通信内容からクライアントアプリケーションが何かわかることなんてほとんどできませんよね。 ※だからおのずと攻撃対象のクライアントアプリケーションは広く使われているブラウザとなるわけで。 ほかにクライアントへの攻撃という意味で例をあげればPoDやPing floodなんか有名です。 同時にspoofingも押さえておきたいですね。 実際にはこういったものの組み合わせで攻撃が行われますから。 質問者さんのほしい回答になっていないかもしれませんが もう少しネットワークに詳しくなってもらわないと なかなか難しいですね。全部書くのは大変だし。

nick_2010
質問者

お礼

回答ありがとうございます。 あんまりわかっていないためお見苦しいところもあると思いますが、お許しください。 >このときokwaveが80番ポートに向かって攻撃を受けることがあるなら 自分も33333番ポートに向かって攻撃されるんじゃないの? っていうふうに思っていますか?? いや、これは違います。okwaveが以前攻撃をうけて、例えばウィルスをバラマクように改ざん(改ざんという表現なのかよくわかりませんが)されていたら、自分がアクセスしたらウィルスに感染してしまうことはあるだろうとかそういう風に思っています。 で、聞きたいのはたぶん受動的攻撃のことではないです。 受動的攻撃って、上記のように自分がアクセスするっていう行動をとったら攻撃されますよね。 No.1さんのお礼のところにも書いたのですが、普通の使い方をしたときに欠点をつくような攻撃ではなく、クライアントアプリケーション(おっしゃるように、攻撃対象とされるのはWebブラウザがほとんどだと思います)が間違った解釈をするようなパケットを送りつけることで攻撃されることはないのかなと思いました。 それで、ファイヤーウォールとか、どこまでの対策をとれば現実的には攻撃は不可能なのかなと。 そもそもそんな攻撃ができるのかできないのかもわかっていないもので…。 申し訳ないっす。 Ping floodとかいろいろ教えていただきましたが、他に何か事例を知っていましたら教えていただけるとありがたいです。

nick_2010
質問者

補足

お礼への補足です。 >このときokwaveが80番ポートに向かって攻撃を受けることがあるなら 自分も33333番ポートに向かって攻撃されるんじゃないの? っていうふうに思っていますか?? の部分で、お礼に違うと書きましたが、よく読んでみると違くありませんでした。 33333番ポートに攻撃を受けることがないか知りたいのです。受動的攻撃ではなく。 それが無いなら無いでOKです。一応理由もお願いしたいです。 よろしくお願いします。

  • Wr5
  • ベストアンサー率53% (2177/4070)
回答No.1

>例えばNAPTを使っていても、LAN側からインターネットに接続すれば、その間クライアントアプリケーションのポート宛のパケットはPCに届くと思うのですが。 ルータがそのパケットを中継する場合、接続に使用した情報を参照します。 つまり、そのポートに届いたパケットの「送信元IPアドレス」「送信元ポート番号」とNAPTでサーバに接続したときの「WAN側IPアドレス」と「送信ポート番号」の両方が「宛先」の情報として入っている必要があります。 ついでに、3ウェイハンドシェークが終わっている「接続済み」のものである必要があります。 LAN内部からどこかのWebサーバにアクセス、データ取得中のコネクションは張られていますが、 そのコネクションで使用しているポート番号宛てに、他から接続することはできません。 # 他からの新規接続を受け付けるように開けているワケではありません。 よって、普通の方法ではファイヤーウォールの内側にいるクライアントへ向けて新規接続を行うことはできません。 UPnPで特別に開けている…という場合は接続可能でしょうが。この場合は一時的にポート解放しているようなものです。 例外としては「セッションハイジャック」等でしょうか…。 http://ja.wikipedia.org/wiki/%E3%82%BB%E3%83%83%E3%82%B7%E3%83%A7%E3%83%B3%E3%83%8F%E3%82%A4%E3%82%B8%E3%83%A3%E3%83%83%E3%82%AF

nick_2010
質問者

お礼

回答ありがとうございます。 ># 他からの新規接続を受け付けるように開けているワケではありません。 ここなのですが、私の質問としては、ちゃんとした接続を貼って(ちゃんとセッションを乗っ取って(?))、そこから不正なプログラムとかを送りつけるのではなく、偽装したパケットがファイヤーウォールを通れたとしてクライアントに届いた時に、バッファオーバーフローとかその辺を利用してクライアントに攻撃できたりしないのかなーと。 でもよく考えると、そんなことができたらWEBサーバはポートを開けているだけでいつでも攻撃されることになってしまいますね…。 SQLインジェクションとかって、正規の使い方をして、不正なSQL文を実行させるじゃないですか。 そうではなくて、全くアブノーマルな角度から攻撃とかされないのかなと思いました。 セッションハイジャックも、セッション乗っ取って一旦正常な使い方ができるようになってから攻撃をしかけると思うのです。 セッションハイジャックも調べてみたのですが、ブラインドハイジャックという種類があるようですね。 あんまり検索で出てこなかったのでよくわからないのですが、この手法は不正なコマンドを送りつけるとあるのですが、これをクライアント側に送りつけることができるのであれば、私の質問したいことに近いかもしれません。 セッションハイジャックについて自分でも調べてみようと思いますが、何かいい回答お持ちでしたらよろしくお願いします。 あとNAPTなのですが、家庭用のブロードバンドルータでも、一般的に送信元IPアドレス(WANから戻ってきたアドレス)のチェックもするのでしょうか。ファイヤーウォールがチェックするというのは知っていたのですが、やっぱりNAPTは宛先とポート番号が合っていれば通ってしまうのではないかと思ったので。

関連するQ&A

  • クライアントPCでの使用ポート番号について

    NWのポート番号について調べていたところ 「ウェルノウンポート番号 (0~1023)はサーバのアプリケーションに割り当てられ、動的・プライベート ポート番号 (49152~65535)はサーバとのプロセスに応じクライアントのアプリケーションに動的に割り当てられます。」と記述してありました。 そこでUDP68番ポート(IPアドレス払い出しのクライアント側用)についてご教示ください。 68番ポートはウェルノウンポート番号にあたるのでサーバーのみが 使用し、クライアントPCは動的・プライベート ポート番号を使用すると認識しているのですが、ウェルノウンポート番号はクライアント側でも使用するのでしょうか?

  • C++で作成したFTPクライアント

    C++でAPIを使ってFTPクライアント(Windwos用)を作成したのですが クライアントからFTP(アクティブ)でファイルを取得(FtpGetFile)をしているのですが 何度もファイルを取得しているとサーバから「425 Can't open data connection.」 というエラーが発生してファイルの取得ができなくなります。 調べたところ、ファイヤウォールなどがポートを許可していないからとありましたが ファイヤウォールを無効にしても問題が出ます。 おそらくクライアントから指定するポートに問題があると思うんですが対処法を 知っているかたいらっしゃいますでしょうか?

  • Black Jumbo Dogとウイルスバスター2005

    Black Jumbo Dogを使ってプロキシサーバ接続をしていたのですが、ウイルスバスターを2003から2005にバージョンアップしたとたん、クライアント機からインターネットにつながらなくなりました。 たぶん、「パーソナル・ファイアウオールの設定」のところで「プロファイルの編集」しなくてはならないと思うのですが、どうすればいいのでしょうか(デフォルトゲートウエイの設定などをしないと行けないのかな・・と思っています)。よろしくお願いします!

  • PCでアプリケーションソフトを立ち上げて繋がらない

    win11PC 両方64ビット 2台で、そのうち一台をホストコンピュータとし、他をクライアントとして、昨日まで普通に つなげて使っていましたが、急に繋がらなくなりました、 有線LANで普通に繋がっていますが、仕事で使っているあるアプリケーションだけがつながらなくなりました。 二台とも最新バージョンになっています。 サーバー機は普通に使えていますがクライアントの方からサーバーに繋がらないです。 「サーバーとの接続を試みましたがエラーが発生しました。 再起動してみてくださいと書いてあるので再起動しましたがだめです。 接続済みの呼び出し先が一定の時間が過ぎても正しく応答しなかったため、接続できませんでした。 または接続済みのホストが応答しなかったため確立された接続は失敗しました。 サーバー名:192.168.0.** ポート番号 81** という表示が毎回でます。 ポート番号というのは、サーバー機とクライアント機は同じにする必要があるのでしょうか? よろしくお願いいたします。

  • HotmailをOutlookでプロキシ越えで使いたい

    こんにちは。 私の会社のファイアーウオールは外部のPOPサーバーへの接続を できなくしてあります。でも、できた方が便利ですよね。 いろいろ調べたら、OutlookExpressはHotmailのみHttpプロトコルで 送受信できる(?)ようなことを聞きました。 さっそく試したところ、初期設定ではうまく動きませんでした。 ファイアーウオール関係の設定する欄がないようなので、 HotmailのプロパティでサーバーURLの初期設定を http://プロキシサーバー名:ポート番号/-_-初期設定のURL に書き換えてみました。結果ダメでした......。 どなたか、プロキシ越えをなさっている方ありませんか。 よろしくお願いいたします。

  • WinXP SP2 ファイヤーウォール有効で接続不可の件

    サーバーPCはWinXP SP2です。社内Lanでクライアントから接続したいのですが、サーバーPCのファイヤーウォールを有効にするとクライアントから接続出来ません。無効にすれば接続可ですが、有効にしたままファイヤーウォールの設定でそのクライアントだけoracleへの接続を許可したいのです。ファイヤーウォールの設定をやってみましたがどれも接続出来ません。その辺の設定を教えて下さい。尚、他のウィルスソフトは未使用です。

  • プロキシサーバとファイヤーウォールの関係

    プロキシサーバという言葉は、ファイヤーウォールとの関連でよく見かけますが、プロキシサーバとファイヤーウォールは、どのような関係なのでしょうか? 「プロキシサーバ」=「ファイヤーウォール」ではないように思うのですが、「ファイヤーウォール」の機能を実現しようとすると、必ず「プロキシサーバ」が必要ということでしょうか? それとも、「ファイヤーウォール」の機能を実現する手段は、「プロキシサーバ」以外にも色々あるけれど、実際には、「プロキシサーバ」が使われる場合が多いという話でしょうか?

  • クライアントPCのセキュリティーについて

    こんにちは。今までの投稿を一通り拝見しましたが、やっぱり信じられないと 言うか、よく知らないので教えてください!  常時接続などでの危険性が指摘されて、ファイヤーウォールなどのソフト でポートを塞ぐなどの対処法がよく言われていますがサーバーでないPCでダイヤル アップ接続でも本当にPCを乗っ取られたりするのでしょうか・・?  この手の質問は多いと思いますがいま一度解説お願い致します。

  • まだしつこく攻撃してくるのですが・・・

    前投稿したのですが、まだしつこくハッカーが攻撃してきます。マカフィーで全部ブロックされているのですが、ブロックされれば個人情報とかは漏れることはないのですか? 前PCゲームで通信対戦ができないため、IPとかをいじくっていて、そのときにファイヤーウォールとかも一端全部切ってしまったのですが・・・。 ポートの開放やIPアドレスを固定したのも何か関係があるのですか?詳しい方よろしくお願いします。

  • クッキーなのかも知れませんが、…。

    もしクライアント群がブロードバンドルーター経由でWebサーバーに問い合わせていたのでしたら、 クライアント群からの要求に応えてサーバーが各クライアントにデータを返してきた際に、("NAPT"を活用しまして、) 其のデータ群の届け先をエフェメラルポートの番号で確認していますね。 そして、それに対しまして、 プロキシサーバー経由でWebサーバーに問い合わせた場合には、 静的マスカレードがプロキシサーバーによって為されない故に、 Webサーバーからの応答結果の届け先クライアントの特定の為に、 当該プロキシサーバーが別の諸手段で判断しているのでしょう。 但し、「其処で適用されている諸手段が何なのか」を、 現時点の私は殆ど予想し得ないものですから、 大変に畏れ入りますが、御教授を賜れませんでしょうか?