pha::home

EasyBotterが勝手に動作させられる可能性とその対策

概要

EasyBotterはデフォルトだと第三者によって勝手に動作させられる可能性があります。被害が出た人、もしくはあらかじめ対策しておきたい人は対策をお薦めします。


起こりうる被害

botが勝手に動作する(設定した内容を投稿する・リプライする)。また、そのことによるAPI使用回数の消耗。

アカウントが乗っ取られたり、設定していない内容が投稿されたりすることはありません

例としては「昨夜からの修造botの大暴走の理由と、中の人による緊急停止への経緯まとめ - Togetter」みたいな感じ。


理由

EasyBotterはbot.phpにアクセスがあるとそれだけで動作するので、第三者がbot.phpにアクセスすることでも動作させられてしまう。


対策:URLがバレないようにしよう

何かのきっかけでbot.phpなどのEasyBotterファイルを置いてあるURLが第三者にバレると勝手に動作させられる危険があります。これに対しては「ファイルを置いてあるURLを推測されにくいものにする」「bot.phpやdata.txtのファイル名自体を変更する」などの対策方法があります(data.txtのファイル名を変えるときはbot.phpから呼び出している部分の記述も変える)。


対策:ファイルが検索エンジンにひっかかっている場合

EasyBotterのファイルが検索エンジンにひっかかっている場合があります(「"いろはにほへとちりぬるをわかよたれそつねならむうゐのおくやまけふこえてあさきゆめみしゑひもせすん" filetype:txt」でぐぐったりすると例が出ます)。その場合、botの発言内容をキーワードにして検索するとdata.txtがひっかかってしまって、そこからbot.phpのURLなども推測される可能性があります。また、検索エンジンのクローラーがファイルにアクセスするたびにbotが動作することもあり得ます。


data.txtなどが検索エンジンにひっかかっている原因の多くは、@PAGESなど一部のサーバーにおいて「index.htmlというファイルがフォルダ内に存在しない場合、フォルダにアクセスするとフォルダの内容が全て表示されてしまう」という設定になっているというためです。


この場合の対策としては、ダミーとして中身はなんでもいいので「index.html」というファイルを置いておく、というものがあります。最新版のEasyBotterでは内容のないindex.htmlを添付するようにしました。


既に検索エンジンに登録されてしまっている場合は、bot.phpとdata.txtの名称を変更するか、ファイルを置いているフォルダの名前を変更することをおすすめします。


対策:もっと強固に対策する

上記の対策で検索エンジンは大体来なくなると思うのですが、「フォルダにBasic認証をかける」などの方法を使えばもっと確実に、パスワードを知っている人以外はbotにアクセスできないように対策することもできます。Basic認証のやり方については検索してみてください。この場合、外部からcronでbotのスクリプトを叩いているときは、それにもパスワードなどの設定をする必要があります。



戻る