風柳メモ

ソフトウェア・プログラミング関連の覚書が中心

お名前.com上に置いたページをブラウザで見ると点滅(短時間でリフレッシュ)してしまうことがある件

現象

お名前.comのレンタルサーバを使っていて気が付いたのだが、設置したページをブラウザで見ると、たまに点滅して表示される(ごく短時間でRefreshされたようになる)ことがある。
発生条件の詳細は不明だが、しばらく見ていないページを開いた時に起きやすい傾向があるように思う。


こちらの設定の問題なのか、お名前.com上の問題なのか、切り分けするために調査していたところ、上記現象が発生する際には、

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/1999/REC-html401-19991224/strict.dtd">
<!-- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd"> -->
<HTML>
<HEAD>
<META HTTP-EQUIV="Refresh" CONTENT="0.1">
<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Expires" CONTENT="-1">
<TITLE></TITLE>
</HEAD>
<BODY><P></BODY>
</HTML>

のようなHTMLが送られてきていることがわかった(当然ながら、自分ではこんな表示をするような設定は行っていない)。

お名前.comからの回答

サービス側の問題だろうということで、お名前.comに問い合わせをしてみたところ、次のような回答が得られた(要約)。

・サーバー側でDDos(アタック)対策を行っていることに伴う現象。
・発生頻度は、コンテンツのトラフィックが非常に多い場合に高くなる傾向あり。
・セキュリティ対策であり、無効化・回避策を設けることは困難。

どうやら、サーバー前段にセキュリティ装置が設置されており、これがトラフィックを監視し、攻撃と思われるものがあったら上記のようなHTMLを返す(サーバーには負荷がかからない)ということだろうと推測される。
しばらく見ていなかったページを見たときによく発生するように思われるのは、キャッシュ期限が切れて一度に様々なコンテンツを取得するから、だろうか?

攻撃だったらそもそも応答を返さなければよいのでは、とも思うが、HTTP-EQUIV="Refresh"のMETA要素を含むHTMLやHTTPレスポンスヘッダ内にも「Refresh:0.1」が設定されていることから推測すると、一般ユーザーに対する便宜を図っている、のかな?
クライアントがブラウザの場合には再読み込みが行われて、そのうち正規のコンテンツが取得されるから不便はない、ということなのかも知れないけれど……これ、クライアント側に対する攻撃じゃないのか……? それにリフレッシュされることでトラフィックは(サーバには届かなくても)増えていて、通信帯域を圧迫しそうな気が……?
サービス側のセキュリティには詳しくないが、これはDDoSに対して一般的に実施される対策なのだろうか? 教えて、えらいひと。

関連

ネットで検索してみると、いくつか関連すると思われる話題がヒットした。

お名前.comのVPSでの案件

お名前COMのVPSが妖しい…。 · GitHub

お名前COMのVPSサービスで、自分が上げてもいないポートが外部から見たら勝手にopenして何者かが応答を返すという乗っ取り案件が発生しているようなので経緯をメモ。




お名前VPSで乗っ取り発生!? - Togetterまとめ

自分で開けてもいないポートから応答が返ってきたら、警戒するよなぁ、それは…。
これはVPSの事例だけれど、レンタルサーバでも同様の攻撃対策が実施されているということか。

かつて三井住友銀行のサイトでも発生?

問題のサイトなのですが、三井住友銀行のトップページで起こりました。

URL指定のないHTTP-EQUIV="Refresh" 【OKWave】

2008年のQ&A。発生している現象は今回のお名前.comの事例と同様かな。


謎のHTMLを返しているのは、Cisco製のAGM(Anomaly Guard Module)?

This problem seems to be caused by Cisco's Anomaly Guard Module (AGM), which sits on the network between clients and servers and attempts to authenticate clients by challenging them with an HTML meta refresh. There isn't much you can do about it, short of asking your server network provider to disable basic protection for HTTP on their AGM.

WordPress › Support » [Plugin: WP Super Cache] Is this refresh problem related to supercache