88279
最近htmlを真面目に組むようになりました。

そこで、参考に複数のサイトを眺めていると色々と危険なページを見つけることがあります。  
キャッシュポイズニングされてたりetc.

サイトを閲覧しただけで感染するタイプのウィルスがありますが、あれはhtmlやphp、JavaScript等のサイトを構築する言語で生成されるのでしょうか。

それともウェブサイトにアクセスした瞬間、何らかのファイルを強制DLさせられることでPCローカル内でそのファイルが開いてしまい活動するモノでしょうか。
CC BY-SA 4.0
2022-04-11T06:58:24.273
88261
2022-04-14T00:36:45.343
2022-04-12T00:37:37.127
3060
51823
question
security
ウェブサイト閲覧で感染するコンピューターウィルスの仕組みってどうなってるんでしょうか。
全ての答えにはならないと思いますが、サーバーサイドでPHPスクリプトが感染して、ダミーのhtmlを生成、ソーシャルハックで踏ませるということはあると思います。ブラウザー経由で無理矢理実行可能なプログラムを読ませるというのは無いと思います。ソーシャルな部分があると思います。
CC BY-SA 4.0
2022-04-12T00:25:02.217
88278
2022-04-12T00:34:02.387
2022-04-12T00:34:02.387
3060
15402
88261
answer
文言「感染する」がいかにも素人さんにわかりやすいよう詳細を伏した幅広い用語で、つまり SO のように技術者が集まる場ではあいまいですが

> ウェブサイトにアクセスした瞬間、何らかのファイルを強制DLさせられることでPCローカル内でそのファイルが開いてしまい活動するモノでしょうか。

悪意あるプログラム（アプリやブラウザ拡張）を操作者に気づかれないようこっそりダウンロードするとか開くとかインストールするということなら Web UA や
OS のセキュリティ設定を標準のままにして、かつ最新に更新している限りほぼ気にしなくて大丈夫です。そういう事態にならないよう Web UA や OS
が作られています。

逆にいうと「感染する」としたら Web UA / OS の脆弱性をついたゼロディ攻撃くらいのもので、これを一般ユーザーが回避するのは極めて困難です。

>
> サイトを閲覧しただけで感染するタイプのウィルスがありますが、あれはhtmlやphp、JavaScript等のサイトを構築する言語で生成されるのでしょうか。

こういうのも今どきは「ない」と考えていいです。  
#
[無限アラート事件](https://ja.wikipedia.org/wiki/%E3%82%A2%E3%83%A9%E3%83%BC%E3%83%88%E3%83%AB%E3%83%BC%E3%83%97%E4%BA%8B%E4%BB%B6)
はウイルスではない  
# [hao123 ツールバー](https://ja.wikipedia.org/wiki/Hao123) なども「閲覧だけで感染」するわけではない

感染させる詳細な手口の解説はなんちゃら幇助になりかねないのでコメント・回答つかないでしょう。
CC BY-SA 4.0
2022-04-12T00:26:41.457
88279
2022-04-12T00:26:41.457
8589
88261
answer
HTMLとjavascriptやサポートされたメディアファイルを解釈してコンテンツを表示する、という純粋なブラウザの動作の範囲では「閲覧しただけで感染するウイルス」はありません。

現に存在するそういうものはどうやってるかというと

  * ブラウザそのものの脆弱性を経由する
  * アドオン(拡張機能、java、flashなど)の脆弱性を経由する
  * アドオンそのものを不正なものに置き換える

などの経路を利用します。

かつてはブラウザそのものやjava/flash、いわゆる｢ツールバー」のようなメジャーなアドオンに割と危険な脆弱性が多かったので、そちらでの攻撃がかなり効果的だったのですが、ブラウザのモダン化やそれにともなうjava/flashの下火、アドオンの制限強化なんかで｢誰でも攻撃される」という状況は減っています。

ただし、特定の拡張機能がターゲットにされることはまだまだ多いので、うかつに拡張機能をなんでもかんでも使うと危険、というのは利用者視点ではかわりません。アドオンそのものが不正なものに置き換えられる事例では正規の経路で配信されるので利用者側で対策することはほぼ不可能です。

｢閲覧しただけ」から1ステップ何かを増やすのであればさらに攻撃手法は広がります。例えば不正なDLLをダウンロードさせておいて(ここではなにも起きない)、ユーザーが後日DLLインジェクション脆弱性をもつプログラムをダウンロード→実行したら発動するウイルス、というのもあります。
CC BY-SA 4.0
2022-04-14T00:36:45.343
88328
2022-04-14T00:36:45.343
5793
88261
answer