ソースをエロサイトにパクられた話
w2018年4月上旬、妙なサーバー負荷があったのでアクセスログを調べてみると、よそのサイトからのアクセスがいくつもあるのが確認されました。
別のサイトからリソースを読み込まれているらしい
結局はサーバー負荷は別の要因だったですが、そこで発覚したのはjsとcssを外部のサイトから読み込まれているということでした。アクセスログの残っている3ヶ月前までさかのぼってもアクセスが確認されたので、しばらくうちのサーバーから勝手に拝借されていたようです。
パクられているのはHTMLとCSS、そしてJSでした。当サイトのドロワーメニューを実装したかったらしく、そのままパクったようです。
ドロワーメニューはマネされても構わない
別にドロワーメニューをマネされたことには何とも思いません。自分のドロワーメニューをむしろ認めてくれたのかな、とも思っています。
何が腹立たしいかといえば、実装するために「パクる」という手段を取ったことです。もっと言うと、当サイトでは実装方法を記事にして紹介しているにもかかわらず、単純にコピペするWebサイト制作者としての態度に憤りを感じています。
100歩譲って、コピペするにしても単純にパスまでコピーせず、jsとCSSを自分のサーバーにアップしていれば、気づかれることもなかったでしょうに。(画像といった素材への)直リンクは違法でないにしても、喜ばれるものではないでしょう。
あんたのところのエロ画像や動画を直リンクされて、よそのサイトに使われてもいいんですかね。
Javascriptも読み込まれている…
と、怒りがこみ上げてきたのですが、冷静に考えるとjsが読み込まれている意味に気づきました。つまり、jsを通じて相手側のサイトをいじれるということです。
$(body).hide();
で全体非表示にしてもいいし、
location.href = "http://example.com"
でどこかのページに飛ばすのもできます。色々できるので、どんなことをしようかと悩んだ結果、
そうだ、マイニングをしよう
という結論に至りました。
マイニング用JSを設置
とはいえ、無断でユーザーのCPUリソースを拝借するのは色々問題があるので、ユーザーが同意した時のみマイニングをするようにしました。そのあたりのやり方はこちらで解説しています。
自分のサイトで使っているjsを一旦退避させ、直リンクされている方にマイニング用JSを設置しました。これで当該のエロサイトにアクセスすると、当該サイトではマイニングをする旨、および同意画面がポップアップします。同意もしくは拒否しないとポップアップが閉じません。
ついでに、エロサイトのアクセスというのも気になったのでアナリティクスのタグも埋め込んでおきました。
エロサイトの管理人は気づくだろうか
ある日突然、マイニングのポップアップが出るようになればさすがの管理人も気づくでしょう、と思いました。もちろん、管理人とサイト制作者は必ずしも同じとは限らないでしょうから、慌てて制作者に連絡するかもしれません。そうして、直リンクを直してくれればこっちとしては満足でした。
しかし、1週間経っても変化がなかったので、少し手を加えることにしました。ポップアップは1度拒否するとCookieでしばらく出なくなるので、もしかしたら初回で閉じてしまい、忘れてしまったのかと勝手に想定したので、ページビューごとにCookieを消し、拒否しても次のページで出てくるように修正しました。
ようやく気づいてリンクを直される
さすがに毎度毎度ポップアップが出てくれば気づいたのか、その後わりとすぐに直リンクは解消されました。
ただ、マイニングやアナリティクスのタグを埋め込んだjsをそのまま再度自分のサーバーにアップしたので、スクリプト自体はしばらく生きていましたが、マイニングのはほどなくcoinhive側のマイニングスクリプト変更に伴い無効になりました。
アナリティクスは最近まで生きていましたが、こちらでアカウント自体を閉鎖しました。(もしかしたら、スクリプト自体は今も生きているかも?)
で、マイニングで儲かったのか?
結論から言うと、全然儲かっていません。ほとんど0円です。アクセスもそれほど多いわけではありませんし、そのうちのわずかの人しか同意しなかったですし、閲覧者のマシンパワーもそんな強力ではないので採掘されませんでした。
もちろん、これで儲けようとは思っていませんし、管理者への警告になったので目的は達成されました。
直リンクはやめよう
画像であってもファイルを差し替えれば相手のサイトにこちらの裁量で画像を載っけられます(エロ画像でもいいし、警告画像でもいいし)。
ましてやjsやCSSを直リンクすればDOMを操作できるので、大変なことになります。
無断で直リンクするのは当然マナー違反ですし、直リンクされている側がどうにでもできてしまうので、やめましょう。