2010年06月24日(木) << 前の日記 | 次の日記 >>
これまでの06月24日 編集

■1クロールとDoSの違いと業務妨害罪と[法律][無断リンク][電子自治体] このエントリーをはてなブックマークに追加

#Librahack[http://twitter.com/search?q=%23librahack] の議論。多く登場する「スクレイピング」と書こうと思ったけれども、クロールで得たHTMLの後処理がスクレイピングだから、ここでは「クロール」対「DoS」とした。
そもそも、クロールとDoSは行っている側の目的に決定的な違いがある。
クロールを行う際は、クロールによって相手サーバの情報を取得することが目的だ。そのために、リクエストに対する応答を受け取って、そのまま保存するなり、何らかの加工(スクレイピング)を行って、情報を保存する。 情報を得るのが目的だから、サーバが落ちるのは困る立場だ。
一般的な作りとしては、ページのリクエストを出して、結果を受け取ったら、その場で解釈して、次にリクエストを出すページを決めるか、あるいは予め予定している次のページのリクエストを出す。この間に待ち時間を入れる。例えば、 1秒に1リクエストといった、一定間隔でリクエストを出す様な実装は、まずしない 。そういう風にクローラを実装するのは、難しい上に、トラブルを引き起こしやすいからだ。問題のスクリプトも リクエストは同時に複数送信しない、リクエストの応答が返ってきてから次のリクエストを送信する[http://librahack.jp/okazaki-library-case/stress-test-thinking.html] 構造であると言う。
一方、DoSは、サービスを妨害するのが目的で行う行為だ。一般的なサーバでは、ページを取得し続けるだけでサーバ停止することは無いから、ページを大量に順次取得することによってDoSを達成しようとするのは効率が悪い。
複数のプロセスを使って頑張っても、自分の回線の下り帯域幅を埋めるところまでで限界が訪れるし、Webサーバ側は能力を他のクライアントにも分配するから、他のクライアントは遅くなるとはいえ、サービスを受けることができる。
そこで、 DoS攻撃する立場に立つと、他の利用者と同じ様に結果を受け取る必要はない のだから、結果はそもそも捨てて掛って、応答を待たずに次のリクエストを送出してしまえば、より負荷を掛けることができる。
いわゆる F5アタック[http://ja.wikipedia.org/wiki/DoS%E6%94%BB%E6%92%83#F5.E3.82.A2.E3.82.BF.E3.83.83.E3.82.AF] でも、サーバの応答は待たないし、 もっと効率的にとなると、TCPレベルでFIN送らずにコネクション切って次のリクエストを出すとか、何らかの方法で第三者に間接的にリクエストを出させると言ったテクニックを駆使することになるが、いずれにせよ、結果を受け取る必要が無いから取り得る方法だし、ピンポイントでサーバの不具合を突くにしても、DoSが成功すれば、自分も情報が得られなくなるという結果は共通している。
ところで、サーバ管理者は、「DoSの様なクロール」というたとえをすることがあるが、やっていることがクロールだと理解した上で「DoSの様」と言っている。
サーバ側から観測した時に、相手が行っているのが過剰なクロール *1 か、あるいはDoSなのかは、Webサーバのログでも大体見当は付く *2 し、パケットキャプチャして、TCPセッションを時系列にグラフ化してやれば、まず間違いなく *3 DoSを行っているに違いないと断言できる記録が得られるに違いない。
従って、今回のケースにおいても、被害届を出す前に、ログを子細に確認するか、あるいは警察が捜査の過程でログを解析していれば、 過剰なクロールを行われた結果、サーバ停止に至った。 という結論が得られていたか、逆にDoSと判断したのであれば、DoSであることを立証するに足る証拠集めをサーバ側で行う必要があった *4 筈である。
それらの手続きを行わずに、逮捕に至った事は非常に残念だ。 業務を妨害しようとしているに違いないという予断があったのか、とりあえず逮捕して自白を取りさえすれば公判が維持できると考えたのか、警察や検察の判断の根拠にも関心がある。

無断リンク禁止教に新宗派、無断クロール禁止教:

robots.txtに従わなかったこと[http://www.nantoka.com/~kei/diary/?20100526S2] が問題なのか。この点に関心を持っている。
例えば、Webサーバの利用規約に「スクリプト等による自動アクセスは、業務の妨げになるため行わないこと」と書いてあって、実際、このサーバは自動アクセスされると落ちてしまう様なサーバだったとすると、これに反してクロールし、業務が妨げられた場合には、業務妨害罪を構成するのだろうか。robots.txtに書いてあった場合はどうだろうか。
刑事上の判断はさておき、民事上の問題も考慮すれば、一般的な利用者はクロールをためらうだろう。
この議論、変な方向に行くと 無断リンク禁止教[http://www.nantoka.com/~kei/diary/?20050203S3] に新宗派ができて、自治体のシステムを作る時のテンプレとして、自動アクセス禁止を利用規約に盛り込んだり、robots.txtで全てのクロールを禁止したりという事が行われるようになったりしないかと危惧している。
ロボットによるクロールは、知る権利の保証を裏付けするために一定の役割を果たしている。普通の人は辿りつけない様なページに「公開」することで、「Webで公開しているから、情報公開の責務を果たしている」と言う主張を認めても良いものだろうか。

三菱図書館システム MELIL/CS[http://www.mdis.co.jp/case/city-okazaki/200908.html]:

この図書館、 三菱電機インフォメーションシステムズ[http://www.mdis.co.jp/] 社内で 論文[http://www.mdis.co.jp/company/techpaper/2009/0907_melil.pdf] になる程の、素晴らしいシステムが利用されている様で、 このシステムは、 全国多くの図書館で利用されている[http://www.asahi-net.or.jp/~gb4k-ktr/indexjv.htm#melil]
これだけの図書館で利用されながら、今回の様な問題が生じなかったということは、恐らく、Webのフロントエンドをカスタマイズする際に、何らかの手違いがあったのだろう。 いくらなんでも、この品質のパッケージを全国で展開していて、問題になっていないとは考えにくい。
確認した限りでは、岡崎市立図書館だけが、 件の謎の挙動[http://www.nantoka.com/~kei/diary/?20100621S1#T201006211S1] を示すようだ。

7月14日追記:

岡崎市立図書館だけではなく、検索文字列に依存したものでも無いことが分かったので、 続・クロールとDoSの違いと業務妨害罪と[http://www.nantoka.com/~kei/diary/?20100714S1] として、続報を書いた。
*1: サーバにとって過剰。クローラは欲張っているに過ぎない。
*2: DoSの場合、明らかに応答を受け取れないだろうという間隔でリクエストを発行してくる様な特徴がある。効率的な攻撃を行った時ほど、特徴は現れやすい。DDoSはやや見分けにくいかも知れないが、何かが進行中ということについては分かりやすいだろう。
*3: 間違いがあるとすれば、複数プロセスあるいはスレッドを駆使して、TCPを自前でしゃべる様な特殊なクローラを実装しようとした人が、ローカルでテストをせずに他人のサーバにアクセスしたといった、かなり申し開きが難しいケースだろう。
*4: もちろん、利用者のアクセスのプライバシーに対する十分な配慮が必要になるが。

■ 関連記事

今日のつぶやき

  • なんか、何度もつぶやいている気がするけども、想定外の大量のアクセスを受けたからと言って、普通、サーバは落ちませんって。落ちるのは、恐らく何らかの瑕疵があったからで、アクセスする側が存在するかどうか分からない瑕疵を想定せよと言うのはあまりにも過酷。#librahack2010-06-24 00:38:16 Tween
  • サーバが落ちたら、従来のサーバ管理者は、まずは設定や実装に問題があったと考え、原因を究明し、仮に、直接の原因がサーバ側になくともサーバ側で対処しようとした。最近のサーバ管理者は、アクセスしてきた人を逮捕させようと考える。サーバ管理者の原因究明離れが進んでいる。#librahack2010-06-24 00:51:43 Tween
  • 手動でアクセスしても落ちるサイトだったらどうでしょう? RT @shinyado: ああ、スクレイパー(呼称てきとう)の皆様がどうすれば怯えずにすむかを書いてなかった。#librahack2010-06-24 00:55:02 Tween
  • 【イヤなぼっと】「今から録画してた○○対××戦を観る」ってつぶやきを検知して、結果をRTするぼっと。2010-06-24 00:58:20 Tween
  • ブロックできるだけのFWがあったかどうかという話を無責任に考察すると、「錆びて手摺が取れたら誰が責任を取るんですか」の論理で、必要のある無しに関わらず、HWだけは入札仕様で入っているものの、「設定費用は別ですよ」とか「運用費用は!円ですよ」とか、ごにょごにょ…#librahack2010-06-24 01:05:31 Tween
  • 「激しいアクセス=DoS」じゃないよ! #librahack2010-06-24 01:17:38 Tween
  • 手でアクセスしていても始終応答が無くなるシステムをどう判断しますか? RT @shinyado: @keikuma 前提として、スクレイピングしてたらサーバ落ちたって時に「ヤベえ俺やらかした?」と思えないのはかなりノンビリしてるなあと思う。#librahack2010-06-24 01:24:02 Tween
  • Twitterに連続投稿をしたらクジラが出てきましたが、「ヤベえ俺やらかした?」とは思えないかなりノンビリした性格です。 #librahack2010-06-24 01:27:12 Tween
  • .@shinyado 気付かれるとマナー違反だし、対策されて不幸になるという点で、気付かれないのが理想的だと言うのは理解しますが、負けたら拘留20日とすると、スクレイパー側にずいぶん厳しいルールですね。 #librahack2010-06-24 01:35:35 Tween shinyado宛て
  • 勾留と拘留。書き分けていた筈なのにミスった。 #librahack2010-06-24 01:38:44 Tween
  • Googleで「懺悔室」の画像を検索していたら、懺悔しないといけない様な画像を見てしまいました。お赦しください。2010-06-24 01:45:35 Tween
  • @shinyado http://twitter.com/shinyado/status/16852390886 で示されている前提を違って捉えていた様です。この指摘通りであれば、サーバ管理者は、どう対応するかは別として攻撃と判断する可能性があると思います。 #librahack2010-06-24 01:59:27 Tween shinyado宛て
  • @morirunn こんばんは。深夜までお疲れ様です。楽しみに読んでおります。ご活躍下さい。2010-06-24 02:05:25 Tween morirunn宛て
  • あ!今気付いたのだけど、スクレイピングって、普通は、出力を画面に出して挙動を見ながらやるんですかね。今まで、動くようになったらcronに仕込んだりしてました。致命的ですか。 #librahack2010-06-24 02:09:49 Tween
  • 「迷惑を掛けるのは一切ダメ」とか、「スクレイピングはばれたら負け」とか、そういう方向に行くと、robots.txtで禁止していたのにやったのだから業務を妨害する意図があったとか残念な方向に行くんですよねぇ。利用規約で禁止すれば良いやとか。 #librahack2010-06-24 02:17:09 Tween
  • 日本中の公共機関のWebによる情報提供がそうなったら、かなり残念な世界が待ってると思うんですね。Google以前を想像して下さい。 #librahack2010-06-24 02:18:34 Tween
  • 現代的には、関連キーワードを入力していく間に、候補をタグクラウド表示して、マウスオーバーで関連書籍の書影を表示する位のことはできると思います。でも、そんなのを要求してるんじゃ無いんです。キー指定した一冊のテキスト情報を無事に返して落ちないで欲しいだけなんです。#librahack2010-06-24 02:28:15 Tween
  • 明日こそ、図書館や警察やできれば管理会社側の見解をあたるマスコミが出ますように。無理かなぁ。 #librahack2010-06-24 02:33:55 Tween
  • 【情報募集】福砂屋のカステラのCMのBGMを入手したい!昔の中島川編ももう一度観たい聴きたい! #nagasaki2010-06-24 02:36:54 Tween
  • 無断リンク禁止教に新宗派、無断クロール禁止教 http://bit.ly/c4nOEo #Librahack2010-06-24 09:12:55 Tween
  • これはすごい。 - IKEAのARカタログがすごすぎる… http://www.ideaxidea.com/archives/2010/06/ikea_ar_catalog.html2010-06-24 11:05:11 Tween
  • クロールしてる時にサーバが落ちると悲しい。DoSしてる時にサーバが落ちると嬉しい。 - クロールとDoSの違いと業務妨害罪と http://www.nantoka.com/~kei/diary/?20100624S1 #Librahack2010-06-24 11:13:08 Tween
  • 「私の#iPhone4は入荷しましたか?」と、5分に一度SBMショップに電話していたところ、「迷惑です」とも言われずにいきなり逮捕、20日間勾留された様な話。 #Librahack2010-06-24 14:49:14 Tween
  • 「かつては舟の往来もあったと言う中島川。今は岸辺に残る常夜灯に遥かな時の流れを偲ぶのみである。」という福砂屋のCM映像捜索中。 #nagasaki2010-06-24 15:14:59 Tween
  • @HiromitsuTakagi 先生、ご無沙汰です。名工大での薫陶は今も私の中に生きております。「皮肉が通用しない人達もいるので」了解致しました。まさに、電話に例えるのを皮肉った積りだったのですが、配慮が足りなかったかも知れません。 #Librahack2010-06-24 15:20:27 Tween HiromitsuTakagi宛て
  • 今は諫早赤十字病院内に東洋軒のレストランがあるらしいですよ! RT @yao_yokagoto: 浜の町のメイジヤ隣に東洋軒のレストランがあったのを覚えているのは、over30世代?「はっきりと」と言えば、over35かな? #nagamog #nagasaki2010-06-24 15:22:55 Tween
  • ブブゼラシリーズクオリティ高いです! RT @hana_hitsuji: 「ブブゼラが鳴らなくて」(国武万里)2010-06-24 15:25:33 Tween
  • あえて「高"値"の花」と書く手もあるだろうけど、みっともないな。やはり、「高嶺の花」という言葉を使うのを避けるのが美しい気がする。常用漢字に無い文字が入った単語は使わないと。2010-06-24 15:58:31 Tween
  • Tweetのひらがな率が低下している。140文字に詰め込むとこうなっちゃうんだよなぁ。2010-06-24 16:02:03 Tween
  • AndroidとiPhoneのヤなトコ取りをすると、Windows Mobile携帯が…2010-06-24 16:03:57 Tween
  • Reading: 出島新聞第二十四号 - 「船が小さすぎる 荷が届かない…最近変だぞオランダ商館」長崎のまちは久々の蘭船入港のニュースに沸き立った。しかし到着してみると、船は意外に小型で関係者はがっかり…1801年、イギリス軍制圧下アメリカ船を雇い入れ。 #Nagasaki2010-06-24 17:07:09 Tween
  • うーむ「偽計業務妨害罪の法文上は故意が必要とは書かれていない。我々は法文でどうなのかを重視して判断する。」 RT @rocaz: ブログ書きました: 岡崎市立中央図書館事件 #librahack について愛知県警に電話して聞いてみた http://goo.gl/fb/MgLok2010-06-24 17:55:58 Tween
  • 「先に了解を得るべきだった」の論だと、「リンクを張ったらアクセスが増えてサーバが落ちる可能性があるから」先に了解を得るべきということになるのか。無断リンク禁止教新宗派誕生だ。 - クロールとDoSの違いと業務妨害罪と http://bit.ly/bDVefj #Librahack2010-06-24 18:10:35 Tween
  • 考えてみると、「この人痴漢です!」って言われたら、いきなり逮捕されるもんなぁ。2010-06-24 18:28:16 Tween
  • デザイン会社にチラシのデザイン代を払うのが嫌になる→デザイナ引き抜いてやらせる→机に向かって考えている様子がヒマで遊んでいる様に見える→荷物運び等の雑用に使う→肝心のデザインの質が落ちてデザイナは嫌になって辞める… という話を思い出した。 http://bit.ly/cHov052010-06-24 18:34:44 Tween
  • @wamkichi @flowtime_ YM2203(OPN)をPC-1245(ポケコン)につないでですね…2010-06-24 22:57:32 Tween wamkichi宛て
  • あの東洋軒には外食の夢があったね。 RT @H_charo: 東洋軒で社内結婚した両親は外食できないくらい薄給だったけど、私が子供のときそこで外食したのだけは憶えてる。割引券をたくさん持ってたなぁ RT @keikuma @yao_yokagoto: 浜の町のメイジヤ隣2010-06-24 23:11:16 Tween
  • 福砂屋のCM動画探索中…「かつては舟の往来もあったと言う中島川。今は岸辺に残る常夜灯に遥かな時の流れを偲ぶのみである。」というバージョン。せめてBGMだけでももう一度聴きたい。 #Nagasaki2010-06-24 23:29:43 Tween
以上、1 日分です。

指定日の日記を表示

前月 2010年06月 翌月
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30

最近の日記

2019年04月01日

新元号「令和」について

2019年03月23日

DXアンテナ ワイヤレスチューナー メディアコンセント DMC10F1

2019年02月17日

#例のグラボを活用する

2019年01月03日

シリーズ5・myHomeAlexaで自分のCDをかける

2018年12月25日

シリーズ4・英語の楽曲・アルバム・アーティスト名をカタカナに直す

2018年12月23日

シリーズ3: Echo Dotがやってきた

2018年12月19日

続・Echo Dotがやってきた

分野別タイトル一覧


全て
CLIP
SYA!nikki
book
freebsd
hns
magic
おさけ
おしごと
お買いもの
ぐる
ごはん
アクセシビリティ
オープンソース
セキュリティ
音楽
地域情報化
電子自治体
日記

keikuma on Twitter

keikuma Name:前田勝之
Location:長崎市
Web:http://www.nantok...
Bio:前田勝之(まえだかつゆき)。長崎在住。コンサル、SE、プログラマー、 なんとか株式会社代表、非常勤講師(情報セキュリティ)。 セキュアド、テクニカルエンジニア(SV,NW)。サーバ管理とWeb日記を10年ほど。 ネットとリアルの接点に関心あり。食べること・歌うこと・愛すること・作ること・飲むこと。おいしいものがぜんぶすき。

サイト内検索

Google AdSense

Powered by hns-2.19.9, HyperNikkiSystem Project