怪情報のタレコミがあったので調査をした結果です。
(2020-08-03) この記事で示したアーカイブは、現在 46.166.139.140
をそのまま表示しています。同様のテストを行ったところ、現在はクローラのIPを書き換えたり X-Forwarded-For:
でリクエストしたユーザのIPアドレスを漏らすことはなくなったようです。これは一見すると望ましい挙動ですが、archive.isが既にアーカイブしたはずのコンテンツでさえ書き換えてしまうサイトであることを示しています。
はじまり
archive.is、都合のいいようにサイトの内容を書き換えるので、使うならWebArchiveの方がいいですよ(運営元もはっきりしているし、ポリシーもちゃんと出ているので)。 例えば http://taruo.net/e のスナップショットを取ると、書き換えが再現できます。
https://ask.fm/amane_katagiri/answers/146448573544
03/08に上のような情報を受け取りました。
調べてみると、archive.isは取得したページの一部を書き換えてからアーカイブしているという情報が得られました。他にもrobots.txtを無視したりサイト管理者からの削除要求を無視するなどといった運営上の強引さを批判し、サイト管理者の立場からクローラをIPアドレスベースでブロックする方法を紹介する記事もいくつかあるようです。
関連: archive.is サーバーIPアドレス一覧 « REIMA's Blog、Red Fox 魚拓収集魔から自サイトを守るには?(1)〜Archive.isの魚拓拒否法
この怪情報を元に、以下の点について考えます。
- archive.isはサイトの内容をどのように書き換えているのか
- ウェブアーカイブサイトの信頼性について
archive.isとは何か?
archive.isは、リクエストに応じてウェブサイトをクロールして保存および公開するウェブアーカイブサイトの1つです。ウェブアーカイブサイトとしてはウェブ魚拓やWayback Machineもよく知られています。
「行儀の良い」ウェブアーカイブサイトがサイト管理者の意思を尊重してアーカイブのリクエストを拒否するのに対し、archive.isではrobots.txtを無視したり、ウェブアーカイブサイトのクローラであることを知られないようにUserAgentを偽装する1など怪しい振る舞いが目立ちます。
Why does archive.is not obey robots.txt?
Because it is not a free-walking crawler, it saves only one page acting as a direct agent of the human user. Such services don't obey robots.txt (e.g. Google Feedfetcher, screenshot- or pdf-making services, isup.me, …)
https://archive.is/faq
さらに、アーカイブしたコンテンツの削除についても厳しい基準が定められているようです。
Do you delete my stored page(s) ?
Pages which violate our hoster's rules (cracks, porn, etc) may be deleted. Also, completely empty pages (or pages which have nothing but text like “502 Server Timeout”) may be deleted.
https://archive.is/faq
archive.isが書き換えていること
先述の通り、archive.isでは取得したウェブページの一部を書き換えてからアーカイブしているようです。書き換えられている情報としては、以下のようなものがあります。
- HTMLヘッダの一部(TwitterカードやOpen Graph Protocolに関わるmetaタグ、canonical情報などを変更ないしは追加)
- archive.isが走らせるクローラのIPアドレス(リクエストしたユーザのIPアドレスに置換)
クローラのIPアドレスを隠そうとするのは、悪質と言えば悪質のような気もします。まぁそもそも、ヘッダの変更も含めてウェブページを完全な状態で閲覧できないというのは非常に悪い振る舞いです。
ちなみに、これは書き換えではないですが、クロールの際にリクエストしたユーザのIPアドレスをX-Forwarded-For:
で漏らしています。
実証
IPアドレスの書き換えについて、適当なサーバを動かして確認します。
このサーバは、クライアントのIPアドレスとリクエストヘッダを統合して返します。さらに、生成したレスポンスをそのままログに出力します。
通常のアクセス
以下はログです。ログとレスポンスは当然一致します。また、You are:
およびREAL IP:
が指しているIPアドレスも全て同じです。
You are: 127.0.0.1:44662
Host: localhost:8000
User-Agent: curl/7.58.0
Accept: */*
REAL IP: 127-0-0-1:44662
REAL IP: 127_0_0_1:44662
REAL IP: 127 0 0 1:44662
REAL IP: 127 0 0 1:44662
REAL IP: 127の0の0の1:44662
REAL IP: 一二七、〇、〇、一:四四六六二
archive.isを通したアクセス
以下のログに対応するアーカイブはhttps://archive.is/r5fAhです。
You are: 46.166.139.140:30922
User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2704.79 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: tt,en;q=0.5
X-Forwarded-For: 54.248.181.34
Connection: Keep-Alive
Accept-Encoding: gzip
Host: 54.248.181.34
REAL IP: 46-166-139-140:30922
REAL IP: 46_166_139_140:30922
REAL IP: 46 166 139 140:30922
REAL IP: 46 166 139 140:30922
REAL IP: 46の166の139の140:30922
REAL IP: 四六、一六六、一三九、一四〇:三〇九二二
archive.isによる取得結果では、46.166.139.140
というIPアドレス2が置換されていますね。下のREAL IP:
行は書き換えられていないことから、ドットを含んだ単純な置換を挟んでいることが確認できました。
--- clean.txt 2018-03-24 17:55:12.301277873 +0900
+++ dirty.txt 2018-03-24 17:54:58.309615729 +0900
@@ -1,4 +1,4 @@
-You are: 46.166.139.140:30922
+You are: 54.248.181.34:30922
User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2704.79 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
アーカイブのリクエストはlynx4を通して行いましたが、その情報はUser-Agent:
には漏らされていませんでした。代わりにクローラだと悟られないようなものを使っています。
他には何を書き換えているのかな? 怖いですね。知っている人がいたら教えてください。天安門3。
archive.isを使い続けるべきか?
筆者としては、これからは基本的にWayback Machineを使おうかなという感覚があります。サイト管理者がクロールを拒否しないようなウェブサイトにはWayback Machineを使っていけばよさそうです。もちろん、archive.isがお行儀の悪い振る舞いをするのでWayback Machineを全面的に信用しますというのもナンセンスですから、これからも事例に応じてarchive.isでアーカイブすることもあると思います。
とはいえ、archive.isがどのような情報を書き換えているかの全貌が分かっていないため、追加の情報があればまた立場は変わるでしょう。みんなも調べてみよう!
サイト管理者の意向を無視するのが悪いかどうかは個別の事例によるんじゃないかな? 検索サイトにクロールされないようにrobots.txtや画像や疑似要素を駆使して作られた企業の謝罪文をアーカイブできたら、僕はそれなりに嬉しいですけどね。
ウェブアーカイブサイトの信頼性
私たちはどのウェブアーカイブサイトを信頼すべきでしょうか? Wayback Machineを信頼すべきなのは、なぜですか?
今のところ、どのウェブアーカイブサイトを信頼すべきかという議論はあまり必要とされていないようです。運営元やポリシーで判断せざるを得ない状況になるまで待たなければなりません。
個人が簡単にウェブアーカイブサイトを立ち上げられるようになれば状況が変わるはずです。Mastodonが流行り始めた頃にも、サーバにパスワードを渡すのは危険などといった注意喚起をしてくれるおじさんがたくさん出てきましたよね。多分この人たちがまたヘンテコな注意喚起を広めてくれるでしょうから……。
fishprinterみたいな名前でウェブアーカイブサーバがゴロッとでてくるといいな。ストレージが巨大になるので流行らんと思う。
おわりに
あまねけ!サイト管理者としては、ウェブアーカイブサイトを特別に拒否する計画はありません。これは、このサイトのコンテンツがCC BY 4.0でライセンスされているというのもありますが、そもそも魚拓を取られることに対して怒りが湧いたりしないというのが大きいです。
あと、今回のタレコミはそれなりにありがたかったけど、「都合のいいようにサイトの内容を書き換える」みたいなセンセーショナルな怪情報を投げつけて人に調査させるのはやめてほしいかな。ごめんね。
おわりです。