Gmailは危ない?
お客様とメールをやり取りしていると「Gmailは危ないから使わない」と言う話を最近でもちらほら聞きます。
メールのプロトコルを考えると平文(プレインテキスト)でメールを送るほうがよっぽど危ないと思うんですが、どうしたもんでしょうか。
後のような話に限らず「よくわからないから怖い」ということで良いものを利用していない企業さんをよく見かけます。
そこで企業のセキュリティに関して何が良くないかをまとめてみました。
セキュリティ対策「これだけはやっておこう」
USBメモリを使わない
平文(暗号化せずに)でメールを送信しない
PCのメールソフトを使わない
無料のゲームやソフトをむやみに使わない
インストール時にウィルスやアドウェアをインストールされる危険。
一番のリスクは「知らないこと」
金融の世界ではリスクに関する格言として「リスクはその正体を知ればリスクではなくなる」というものがあります。
コンピュータの世界では知っていても不可避で対処できない状況もありますが、やはり「なんとなく怖い」ではなく「○○だから怖い」とその理由をしっかりと述べられるようにすることが重要であると思います。
「なんとなく怖い」のまま最新のテクノロジーを利用しないことは、生産性の低下にもつながるばかりか、逆にセキュリティに関するリスクを高めてしまうことになるからです。
突然のメルカリからの利用停止通知
メルカリ利用者の人で、ある日突然複数アカウント利用による規約違反で利用停止の通知が来て途方に暮れている人が結構いるようです。
複数アカウントで検索した結果 - メルカリボックス 疑問・質問みんなで解決!
メルカリ利用規約を読んでみると確かに複数アカウント利用の禁止が述べられています。
第4条 ユーザー登録及びアカウント情報の「2.複数登録の禁止」
ユーザーおよびユーザー登録をされようとする方(以下併せて「ユーザー等」といいます)は、
複数のユーザー登録を行うことができないものとします。
また、併せて第8条 禁止事項で参照されている禁止事項にも明記されています。
複数アカウント利用を禁止する理由としては
- 業者による転売行為の防止
- ロボットプログラムによるスクレイピング行為蔓延の防止
- さくら行為による特定アカウントの評価偽装の防止
辺りが理由ではないかと推測できます。
何を持って複数アカウント利用が検知されるかの考察
しかし複数アカウントで利用停止を食らった人の中にも
「端末を変えて利用」、「別なネットワーク環境から利用」にもかかわらず、
複数アカウントと認識されてしまったケースもあります。
メルカリでは一体どのようにして異なる環境からのアクセスを同一ユーザと判断しているのでしょうか?
Webページを利用者が閲覧する際にはHTTPプロトコルという通信規約が使われており、
この環境下でWebサーバ側では次のような限られた利用者の情報を取得することができます。
- IPアドレス/ドメイン
- OS/ブラウザ情報
- 画面サイズ
- 言語
- 通信ポート
- 参照元
1. IPアドレス/ドメイン
コンピュータのインターネット上の場所を特定するための住所または電話番号のようなものです。
例えば私の現在のIPアドレスとドメインは下記のとおりです。
IPアドレスとドメインは一対一で、IPアドレスが数字だけで人間に覚えづらいとして用意された変わりの識別子がドメインです。
IPアドレス:223.134.18.139
ドメイン:pdf86128b.tubecm00.ap.so-net.ne.jp
このIPアドレス/ドメインが分かると何処の国・都道府県・市区町村辺りまでだいたい特定できてしまいます。
一般的な家庭用のインターネット回線を利用しているとこのIPアドレスとドメインは変わりますが、一部のみであり、国・都道府県・市区町村を表す部分は変わらないことが多いです。
2. OS/ブラウザ
ユーザーエージェントといい、ブラウザがサーバに自分の利用環境を通知します。
例えば下記のようなものです。
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.77 Safari/537.36
この情報から、利用中のOSとバージョン、ブラウザの種類とバージョンが分かります。
ただし、偽装可能です。
3.画面サイズ
1920×1080(24bit) のように利用中の端末の画面のサイズと解像度を通知します。
4.言語
ja,en-US;q=0.9,en;q=0.8,id;q=0.7,zh-CN;q=0.6,zh;q=0.5,zh-TW;q=0.4
のように、ブラウザに設定されている言語とその優先順位を通知します。
5.通信ポート
52290のようにクライアント端末が利用している通信ポートを通知します。
※コンピュータ上の内線番号見たいなものと思ってください。
6.参照元
どのサイトからアクセスされたかを通知します。
おそらく1〜5の情報に「ページを移動する間隔」や「検索・よく見るページの傾向」などを加え、
異なるアカウント間の相関値を算出し、その値が一定値を超えた時点で同一アカウントと判断しているのではないかと推測できます。
どうすれば利用停止にならずに複数アカウントを利用できるか?
理屈はいいとして「どうやれば複数アカウントと検知されずに複数アカウントが利用できるの?」と思われるでしょう。
これはサービスの不正利用ではなく、あくまで技術上の好奇心からの推測ですが、
同一アカウントと判断しうる要因としてIPアドレス/ドメインの情報が大きいと思います。
同じ人が物理的に離れた場所で同時刻にアクセスできるのは不可能であると考えるのが妥当であるためです。
そうなるとこのIPアドレス/ドメインの壁をいかに乗り越えるかですが、離れた場所のネットワークを介してアクセスすれば可能です。
VPNなどの方法もありますが結構お金がかかります。
一番手っ取り早い方法はリモートデスクトップを使って遠隔地のPCにログインし、利用するという方法です。
「職場のPCでアカウントA、離れた場所にある自宅のPCでアカウントB」を同時に利用する形になります。
ただし、これで確実に同一アカウントのジャッジを回避できる保証はありません。
今後AIの進歩でおそらく利用者の行動パターンから同一アカウントと検知する仕組みが実現可能になるはずです。
あと、あまり過激なことをやるとユーザ登録の取り消しになるみたいなのでご注意ください。