絶対言うよね。登録してみたドン!
ここ数日で急激に勢い伸ばしてきたSNSツール「mastodon(マストドン)」。そのうち登録しようかなと思っていたらもう日曜日も終わってしまいそう。これはいけない…なのでとりあえずさくっと見てみることにしました。
マストドンとは
そもそも「mastodon」とは何か。ユーザー目線から見るとツイッターのようなものですね。
ログインしてみるとタイムラインがあり、フォロー/フォロワーに返信、リツイート(ブーストと呼ばれてます)機能など、ツイッターでみたようなものも多くあります。投稿はトゥートと呼ばれるみたい。吠えるってことらしいです。東に西に!
しかし、ユーザー目線ではなく管理者目線で見たときに、ツイッターと大きく異なる点があります。そしてそこが今、脚光を浴びている部分でもあります。
マストドンとはーーマストドンそのものは「サービスを提供するソフトウェア」、つまり「自分でツイッターのようなサービスを作ることが出来る」ソフトウェアなのです!
管理者の異なるサーバーが乱立しはじめている
これを利点として、それぞれが作成した「インスタンス」と呼ばれるマストドンのサービスが各地で続々と立ち上がっています。
今のところ日本で一番有名なのは「mstdn.jp」でしょうか。
他にもPixivが立てた「Pawoo」とかも海外摩擦で速攻有名に。(これについては後述します)
このほかにも個人で立てたインスタンスがぽこぽことできはじめていますので、気になるところがあれば見てみるとよいですよ。登録の仕方は全部同じですから。
登録してみた
さて、実際に登録してみます。登録先は、まずはmstdn.jpにしてみました。
サイトを開くとぞうさんが。
ユーザー名、メールアドレス、パスワードを入力して次に進むと、入力したアドレス宛に認証メールが届きます。
そこにある「Confirm my account」リンクをクリックしたら完了! 簡単!
超お手軽ですね。実に良い。
アカウント名はとは、そのアカウントを識別するためのものです。私はとりあえず、ツイッターと同じものにしてみました。
絶対に注意するべき点:パスワードを使い回さない
一つだけ、申し上げたい注意点があります。パスワードの使い回しは絶対に止めて下さい。
他のサービスとの共有はもちろん、他のマストドンインスタントと同じものを登録することも危険です。
パスワードの使いまわしはこれに限らず避けるべきですが、マストドンについてはさらに注意を払うべきだと考えていまして、その理由としてはマストドンはただサービスを提供するためのツールであって、それを使ってサービスを提供するのはそれぞれの個人や企業である点です。
悪意ある管理者が立てたインスタンスに知らずメールアドレスとパスワードをセットで提供してしまったりするかもしれません。
また何かの手違いでデータが外部に漏れてしまう、などの事故についても、企業より個人のほうが発生する可能性も高く、もし発生してしまった場合の対応についての責任を求めることも難しいと思われます。
こういったシステムでは通常、パスワードは内部的にはハッシュ化(パスワードから専用のキーを作成して、それをパスワードの代わりに保存して認証などに使うこと)が行われており、パスワードそのものが簡単に読まれることは無いはずです。でもそのハッシュからパスワードを割り出すことも、簡単ではありませんが出来てしまいます。
メールアドレスについても同様に、悪意ある管理者であった場合は、生きたアドレスの蒐集に使われる可能性があります。心配であれば専用のアカウントを用意するべきでしょう。
ただ個人的にはmstdn.jpやPawooなどでは専用メルアドの用意まではしなくていいかなとは思って、普通に登録してしまいました。(スパムが飛んできたらGmailでフィルタリングしてやればいいしって思ってる)
このあたりの案配は、どのインスタンスかによって変わりますが。
マストドンの盛り上がり方を見ていると、個人のインスタンスも割と素直に受け入れられているように思います。これ自体は良いことですが、もしものときのための用心をしておくに越したことはないでしょう。
(2017/04/17 追記と修正)
少し言葉足らずでしたので補足させてください。マストドンが危険、と言いたいわけではありません。マストドンのシステムについて、私は解析も何もしていませんから分かりませんし。
また、パスワードハッシュから、元の文字列を直接復元することもできません。
それから個人が信用ならない、企業なら安心、としたいわけでもありません。
言いたいのはひとつ、メールアドレスとパスワードのセットが万が一にも漏れてしまったときに、被害を最小限に抑えられるよう用心してほしいです。
元の文章を見ると、「個人管理者」を問題視してしまっている感じがしたので修正を入れました。それ言うたらmstdn.jpの管理者さんめっさ個人ですからね。本当にすまない。
どこかのサービスからアカウント情報とパスワードを盗み取り、それを用いてアタックを仕掛けることは「リスト型アカウントハッキング」と呼ばれ、その単語で検索してみると割と頻繁に起こっていることが確認できます。最近だと、Pixivが標的にされたりしているみたい…
pixivになりすましログインが発生、アカウント乗っ取りや第三者による画像投稿も 運営側はパスワード変更を呼びかけ - ねとらぼ
こういった事件の被害者にならないように、用心できるところはしていきたい。そういうことです。
またパスワードとハッシュについて、下の方に書いてみました。もしご興味あれば、こちらもどうぞ。
登録に失敗してしまったとき
障害などで、登録した後の認証メールが届かない場合があります。特に個人インスタンスなど、サーバー自体が不安定なところで発生しやすいかもしれません。
そうなってしまったら、再度同じアカウントとメールアドレスで登録しようとしてもエラーになってしまいます。認証はしていないけど登録は受け付けた、仮登録状態で停まっているわけですね。
ここから先に進むには、下に小さくある「確認メールを受信できませんか?」リンクをクリックして、その先のフォームでメールアドレスを入力します。
すると、認証用のメールが再送されますので、そちらにあるリンクから認証を行うことができるようになります。
メイン画面は分割されて表示
さてログインしてみた直後がこちら。見事に何もない…
いちばん左にあるのがツイート画面、次がフォローしたアカウントの投稿が表示されるホーム、その次が通知。最後の一番右端はいろいろですね。
ちなみにスマホで見るとこんな感じ。
1つの項目だけが表示されています。画面はホーム。
ローカルタイムラインと連携タイムライン
右端には主に、ローカルタイムラインや連合タイムラインを出します。ローカルタイムラインではそのインスタンスで投稿された内容が、連合タイムラインではインスタンスと連携しているインスタンスの投稿も含めた内容が流れてきます。
まとめるとこうです。
ホーム
フォローしてるアカウントがトゥートした投稿ローカルタイムライン
インスタンスにトゥートされた投稿連合タイムライン
自分のいるインスタンスと、連携してるインスタンスにトゥートされた投稿
トゥートって呼び方まだ慣れないな…要するにツイートなんだけど。
ツイッターでは、自分でフォローしたユーザーのツイートのみTLに流れてきていたので、全く知らない他のユーザーの投稿が自動的に流れてくるのはなかなか新鮮です。Pawooインスタンスだとさらに捗る。みんな絵、うまいよね…
プロフィールを変えてみる
次はプロフィールを変えてみます。アイコンなんかもデフォルトですし。
左の「プロフィールを編集」より、各種設定を行うことが出来ますので、そこからアイコンなどを変更します。
こちらも、いろいろわかりやすくツイッターと同じにしてみました。
保存して戻ると反映されています。
トゥートしてみる
さて準備はOK。「今何してる?」に文字を入力して「トゥート!」
ちゃんと流れていきました!
…うん、そうなんだ、登録後の状態を保存するの忘れてて、全体のスクショがあればよかったんだけど。本当にすまない。
でも感覚としてはツイッターと同じですね。まだ初期だからか、これだけでも反応してくれる人とかいます。素敵。
返信などの機能は?
機能面でツイッターと比較すると、返信、RT、お気に入りの三大機能は実装済み。(RTは「ブースト」と呼ばれます)
返信は、そのトゥートに対してのメッセージ。ブーストは、指定したトゥートを自分のTLに流す。お気に入りは、指定したトゥートをマークしておいて、後からそれだけの一覧が見られる機能ですね。
ツイッターとアイコンも同じなので、そちらを知っていれば迷うことはないかなと思います。
投稿は500文字まで、折りたたみもできる
ツイッターと違うのは、投稿の文字数が500文字までOKとなっているところです。
長文もたまに見かけますね。明らかに長い。
また、トゥートを分割して、後半を隠しておくこともできます。
「CW」をクリックすると上に入力欄が出るので、それに書けばいいみたい。なのでやってみる。
これが…
こうじゃ!
しくじりwww
開いてみるとこうです。
思っていたのと見事に逆に…いや、注意書きのほうが先に出ているの、仕様としてはそりゃそうですね…
画像に閲覧注意の設定ができる
画像を投稿するときは、「不適切なコンテンツ」マークを付けることもできます。配慮ってやつです。
画像を追加すると、下に「NSFW」なるボタンが出ます。それをオンにすると、TLでは「不適切なコンテンツ」としてクリックしないと表示されないようになります。
これが…
こうなる。
クリックするとこう
Pawooにも登録してみる
だいたいなんとなく分かったので、次はPawooインスタンスにも登録。
違うぞうさんが出てきてますけど、登録の流れはmstdn.jpと一緒です。
PawooはPixivが運営しているだけあって、画像がいっぱい流れてきます。すばらしい…
この記事をマンガラノベブログに書いた理由もここにあります。Pixivが乗ってきてるなら、こちらで紹介してみたほうが良いかなと思って。
Pawooのパージについて
このPawooインスタンスが有名になったのは、企業としてすぐに乗ってきたこともあるけど、その後すぐに諸外国のインスタンスからBANされたなんて経緯があります。
理由はお察しの通り、性表現画像が問題になったわけですが…その経緯をまとめたものなどを見ていると、単に「エロだから駄目」程度の話ではなさそう。
要するに「日本の性的表現が法に触れる国もある。そしてマストドンのシステム的に、流れてくる画像が保存(キャッシュ)されてしまうようになっている。つまりPawooに接続していると、画像がキャッシュされて所持となり、逮捕されてしまう可能性が出てきた。だからひとまずの対応として、Pawooを切り離した」とのことのようです。
(逆の場合を想像すると分かりやすいかもしれません。例えば国外から無修正のエロ画像が流れてきたときに、それをキャッシュしてしまうと拙いわけで)
これについてはマストドン作者も巻きこんだ議論となって、きちんと問題解決に向けて意見交換されているようなのでとても良い流れだと思います。
日本の性表現が分かりやすく引っかかってしまいましたが、この「各国の法は各国で決まっているが、その法に触れない国からの投稿をどうするか」問題は絶対にどこかでぶち当たるはずですから。
結論はまだ出ていませんが、良い落としどころに落ち着くことを願っています。
その他のインスタンスとかにも入ってみよう
上の二つ以外でも、個人で立てていたりするものがあるので、興味があったら入ってみると面白いです。
公開されていればこっそり入ってても大丈夫(何
たとえば社畜丼なんてものを見つけてしまったので入ってみていたりします。ローカルTLは静かやわ…
このインスタンスの管理者さんは「いきのこれ! 社畜ちゃん」でおなじみのビタワン氏のようで、だから通称社畜鯖。あー…
果たしてこのインスタンスはいきのこることができるのか…
それはそれとして、他にもインスタンスを見かけることがあると思います。インスタンスによって色が違うところも良いところですね。
メルアドとパスワードには気をつけなければなりませんが、興味があれば、管理者が信頼できそうであれば入ってみると面白いんではないでしょうか。
何も投稿することがなくてもだいじょうぶだいじょうぶ 俺なんかほとんどROM専よ…
…でも毎回同じ登録とプロフィール更新繰り返すの流石に面倒になってくる…OAuthみたく、どこかで一元化、または他のマストドンアカウントで認証とかできるようにならないかな…
一応、私のアカウントはそれぞれ次のものになってます。よろしければフォローを…してもらっても…何もない…か…
無様を晒していたらご笑覧ください。
Android/iPhoneクライアントとか、リモートフォローとか、まだいろいろ使い方ありそう。
※自前でインスタンスを立ててみた記事を書いてみました。まだ中途半端なところがありますが…ご興味あればこちらもどうぞ。
Mastodon(マストドン)のインスタンスをCentOS7で立ててみる
おまけ:パスワードとハッシュについて
上の方で「パスワードはハッシュで保存されているけど、元の文字列が割り出される可能性があるから気をつけよう」と書きました。
これだけだと説明不足感があるのですが、だからといってハッシュの話を始めると盛大に論点がズレてしまう…ので、そこで詳しくは書きませんでした。
でも最後にやっぱりちょっとだけ、そのことに触れてみることにします。もしご興味あればお付き合いください。
※注意として、これはパスワードハッシュの一般的な話になります。マストドンの認証システムとは関係ありません。
ハッシュとは
まずハッシュとは。ここでは、「パスワードから生成された一意の文字列」を指します。要するに、そのパスワードからしか生成されない文字列です。
例えば、md5と呼ばれるハッシュ生成方法で、「a」のハッシュを取ると「0cc175b9c0f1b6a831c399e269772661」となります。
「b」であれば「92eb5ffee6ae2fec3ad71c777531578f」です。
ただこのハッシュから、元の文字は分かりません。ハッシュは暗号化ではないので、復元できないわけで。「0cc175b9c0f1b6a831c399e269772661」が「a」だとは分からないわけです。
なのでパスワードを保存するときは、パスワードそのものではなく、そこからハッシュを取って保存しておき、パスワードが入力されたらまたそこからハッシュを取って、ハッシュが一致するかどうかで認証を行うわけです。
どうしてここからパスワードが分かるの?
元の文字が分からないならどうしてパスワードが分かるのか。答えは簡単、ハッシュが一致するまで試せば良い。
「0cc175b9c0f1b6a831c399e269772661」が「a」だと分からなくても、アルファベットのaから順にハッシュを取っていけばすぐ一致しますよね。「b」でも2番目です。
もちろん全パターンを試すには膨大な計算力が必要になりますので、簡単な話ではありません。出来るが簡単ではない、と述べた理由はここにあります。
このような攻撃は総当たり攻撃、またはブルートフォースアタックと呼ばれる攻撃方法になります。
でも実際に出来るの?
アルファベットの大文字小文字と0-9の数字だけでも61種類、それが、例えば4桁だったとしても組み合わせは61の4乗までを足して…14,076,604通り。現実離れした数字が出てきました…
でも例えば、これを小文字のみに絞ったらどうでしょか。26の4乗までを足して475,254通り。
人間が計算するとこれでもたぶん死にますが…これを計算するのは勿論コンピュータ。つまり高速で比較と計算が行われるのです。
「abcd」のハッシュを取って試してみましょう。これのハッシュは「e2fc714c4727ee9395f324cd2e7f331f」です。
んでんで、年末に買ったノートPCで、ちょっとPHPでプログラム書いて試してみますと、
Hit: abcd (0.0091300010681152 sec)
秒殺ですらない。
…出現ワードが最初のほうに偏っているから早かったのだろうか。じゃあ、「xyzx」ならどうかと試してみると、
Hit: xyzx (0.14858412742615 sec)
カスみたいな速度ですね…
じゃあじゃあ、調子に乗って一桁増やすと? と「xyzxy」で試します。
Hit: xyzxy (3.9309091567993 sec)
それでも4秒。しかし、4桁と比較すると28倍程度は掛かっています。
5桁までだと12,356,630通りとなり、一桁増えるだけで計算量も26倍くらいになるわけです。
6桁にすると
Hit: xyzxyz (91.698601007462 sec)
1分半。約23倍。この調子で増えていったとして、よくパスワードで使われている8桁を考えると、90秒x26(7桁目)x26(8桁目)=60,840秒=約17時間=1日かからずといったところでしょうか。ノートPCでこれか…
…もちろん、普通のパスワードは大文字、数字、記号が混ざっているのでパターンはさらに跳ね上がり、1つのパスワードをクラックすることも現実的な時間ではなくなるでしょう。
あ、ちなみに数字4桁は0.005秒くらいでした(震え
そもそも、自分が狙われるとは思わないんだけど?
そうですね。私もそう、自分が狙われるとはあまり思えません。そんな重要人物じゃないですし。よわったおっさんですし。
けれどコレに関しては、おそらく順序が逆です。「クラックされやすいパスワードを使っていたアカウントが被害に遭う」のではないかと思います。
マンガやドラマなんかだと重要人物を狙っていったりして、すごいテクでハッキングとかしたりしますが…リスト型アタックではぶっちゃけヒットすれば誰でもいいんですよね。
なので、例えば数字だけのパスワードとか、辞書攻撃(ある程度使われそうな単語を絞って試す攻撃)で引っかかったパスワードとか、そういったパスワードが分かったものだけで、次のアタックに進めていくのですよ。
結論として
簡単にではありますが、ハッシュからパスワードを得るための方法について説明いたしました。
私の持っている知識は全然たいしたことはなく、今の最新がどうなっているかはわからないのですが。こんな単純な話ではなく、攻める方も守る方も進歩しているでしょう…
ハッシュなどのパスワードに繋がる情報についても、各サービスの管理者様方が取り扱いに注意を払ってくださっていることだと思います。
ですがやはり万一ということはあります。そしてマストドンの現状は、メールアドレスとパスワードのペアを保存する独立したサービスがぽこぽこ増えていっているようなものでもあります。
しかし、もしものことがあった場合でも、パスワードが他のサービスと違っていれば、最悪、被害はそのマストドンのインスタンスだけに抑えることが出来ます。
メールアドレスをID代わりにして認証するサービスはよく見かけます。リスト型アカウントアタックの被害にあう前に、用心しておくことをお勧めしたいです。
それからパスワードの決め方について、参考になりそうな記事を見つけました。もしよかったら、こちらもご覧下さい。
米ヤフー、10億人の情報流出か 身を守るためのパスワードの作り方 - All About NEWS
(2017/05/05追記)
みやりん様よりコメント欄にて、以下の記事をご紹介いただきました。
よりシステム側に踏み込んだ内容になっています。ご興味ある方は是非こちらもどうぞ。