• 締切済み

JavaScriptインジェクションアタックとはなんですか?

無料レンタルサーバーで趣味のWebサイトを持っています。 急にサイトの表示が遅くなったのでソースを調べたら、書き込んだ覚えのないJavaScriptが全部のページに書かれており、びっくりしてローカルのファイルをアップロードしなおしたら直りました。 別の掲示板で質問し、クロスサイトスクリプティング?か、JavaScriptインジェクションアタックでは?と言われましたが、どうしてこうなったのかが分からず、また具体的にどのような被害があるものなのかがよく分かりません。 HTMLを独学で多少勉強した程度で、JavaScriptは全くの素人ですが、二度と起こさないために対策を取りたいので、教えていただけたらありがたいです。 よろしくお願いいたします。

みんなの回答

noname#94983
noname#94983
回答No.1

おそらく掲示板とか何かのコメントとか、不特定多数の人間が投稿できるページがあるのだろう。それのセキュリティがしっかりしてなかったということだろう。 SQLインジェクションというのは、SQLで本来エスケープ処理しなければならない記号類をそのままデータベースに送信するようなセキュリティの甘いサイトで、SQLのクエリー改ざんを意図するデータを送信することで、本来取得されないデータベースの情報が取り出せるようにする攻撃。 クロスサイトスクリプティングというのは、JavaScriptのスクリプトを使い、そのサイトのクッキー情報を他のところに転送する処理を投稿し、誰かがそのページにアクセスした瞬間にその人間のアクセス情報を盗み取るようにする攻撃。 いずれも、送信されたテキストをそのままデータとして保存している場合に起こる。これは、データを取り出し表示する際に「サニタイズ」と呼ばれる無効化処理を行うことで対処できる。したがって、どのようにしてデータを保存したり取り出したりしているか(どんな言語を使っているか、どういう処理をしているか)によって対策は異なる。そのへんの情報がないとなんともいいようがない。 もし、自分は全く知らない、レンタルサーバーにある機能をただ使ってるだけ、ということなら、そのサイトの管理者に問い合わせてみたほうがいいと思う。

zzzccc
質問者

お礼

お答えくださりありがとうございます。 自サイトに掲示板等、不特定多数の人間が投稿できるページはありません。 日記として使っているブログにリンクはしていますが…もしかしてそこでしょうか? ブログ自体には不審なjavascriptは書き込まれていませんでしたが… それと、もうひとつ私が管理している別のサイトがあるのですが(URLは違いますが、同じ無料レンタルサーバーを利用しています)そちらにも同じ現象が見られました。 私の管理しているサイトが両方やられている、というのは、何らかの方法で私の情報を盗み、管理するサイトにアクセスしてjavascriptを埋め込んだ、という事でしょうか? 同じレンタルサーバーを借りている友人のサイトにはないのに、私の管理しているサイトふたつが偶然に対象になったというのは考えづらいと思うのですが… 度々で申し訳ありません。ご教授願えたら助かります。

専門家に質問してみよう