アシュレイ・マディソンのソースコードで解読、女性botの実態

150902_ashmadbotcode1.jpg

botでひっかけ、お金を落とさせ、サクラに引き渡し…。

不倫サイト「アシュレイ・マディソン」では不倫したい男女が出会えるはず…でしたが、女性とされるユーザーのほとんどはニセモノらしい、と先日お伝えしました。これについて、流出したアシュレイ・マディソンのソースコードを米GizmodoのAnnalee Newitz編集長が読み解いて検証しています。そこでわかったのは、男性にまめまめしくメッセージを送り、お金をせびるbotの実態でした。以下、Newitz編集長どうぞ!

* * *

先日、アシュレイ・マディソンにいる本当の女性ユーザーは1万2000人くらいとお伝えしました。でもその後アシュレイ・マディソンのソースコードを精査したところ、ちょっと誤解していたところがあり、リアルな女性はそこまで少なくなかったことがわかりました。でもさらにわかったのは、アシュレイ・マディソンが作り出した女性botが7万人以上いたということです。

アシュレイ・マディソンは声明を出し、流出したデータからはアクティブな女性ユーザー数を把握できないはずだと言っています。そして、たしかにその通りのようです。といっても、女性ユーザー数が相対的に少ない可能性はまだ高いです。そして、女性ユーザーの少なさを裏付けていると思われたデータは、実は別のことの裏付けになっていたんです。それについては後述します。

ソースコードからわかったのは、アシュレイ・マディソンの女性botたちは金もうけのために作られた高度な詐欺集団だということです。コードから読み取れるのは、「このサイト上にはなびきやすい女性がたくさんいる」という幻想を生み出そうとする運営会社の意図ばかりです。アクティブ女性ユーザーがどれだけ存在していても、彼らはニセの女性集団を作ろうと懸命だったんです。

最初のデータはbotの行動記録

アシュレイ・マディソンのソースコードは、同サイトをハックしたImpact Teamがリリースした2番目のダンプデータに含まれるものです。圧縮しても20GBあり、最初のデータの約2倍のサイズでした。一部は壊れていましたが、社内メール数百通が含まれています。

それを読むと、彼らがニセの女性プロフィールを作り、ニセ女性と男性をチャットさせるためにかなりの費用をかけていたのがわかります。データの中には複数のGitリポジトリやソースコードのコンテナも入っていて、日付は2010年半ばにまでさかのぼります。

ソースコードを見てまずわかったのは、Impact Teamが最初に公開したデータベースは会員データの一部に過ぎなかったということです。そのデータは、私が彼らのアクティブ女性ユーザー数の根拠としたデータでもあります。でもコードを見ると、そこから参照されているデータテーブルは550もあり、Impact Teamが公開したのはそのうち4つだけでした。これによって、アシュレイ・マディソンのデータベースの見え方が大きく変わってきました。

が、最初のデータを見たとき、私はアシュレイ・マディソンのデータテーブルのすべて、またはほとんどを見ているのだと思ってしまいました。先日の記事にある通り、あるデータテーブルには「bc_email_last_time」、「bc_chat_last_time」、「email_reply_last_time」という3つの項目がありました。データアナリストふたりに相談し、これらはユーザーの行動をトラッキングするためによく使われる項目名だろうと考えました。

つまりそれぞれの項目は、ユーザーがメッセージを最後にチェックした時刻、チャット開始時刻、といった意味を持つようです。前回の記事ではこの項目を根拠に、たとえば「アシュレイ・マディソンでチャットを使った男性ユーザーは1,100万人いるのに対し、女性は2,400人しかいない」のだと考えました。

でも私は間違っていました。が、私が考えた以上におかしなこともわかりました。それらの項目が記録していたのは、人間の行動ではなかったんです。それは、botまたはアシュレイ・マディソン内部用語では「engager」と呼ばれる人間でないものがユーザーとメールまたはチャットした時刻を記録していたんです。

つまりImpact Teamのデータダンプには、人間の行動を記録したデータがまったくなかったということです。わかるのは、ニセの人間が本物の人間にいつコンタクトしたかということだけです。そして男性と女性の数に大きな差がついた理由は、アシュレイ・マディソンのソフト開発者がbotをほぼ男性とだけ会話するように作っていたからなんです。

150902_ashmadbotcode2.jpg

botがユーザーにメッセージを送った回数(男女別)。

これらの分析には、リサーチャーふたりが協力してくれました。ソフト開発者のJake Perkowskiさんと、米GizmodoユーザーのMr. Falconと名乗る人です。彼らはコードを精査し、engagerとよばれるbotが人間に話しかけると、「bc_chat_last_time」、「reply_email_last_time」、「bc_email_last_time」というデータベースの項目に記録を残すようプログラムされていたのを解読してくれました。彼らが示したコードの該当部分を見ると、たしかにそれははっきりした証拠でした。その項目は、男性と会話するたびに忠実に記録を残していくbotで埋まっていました。

150902_ashmadbotcode3.jpg

botがユーザーとチャットした回数(男女別)。

Perkowskiさんはまた、ishost(訳注:is host=「hostである」)というデータベースの項目についても指摘しました。あるユーザーのishostの値が1である場合、そのユーザーはbotであることを意味します。コードをざっと検索すると、たしかにbotたちはishost=1になっていました。そこで私は、ishostなユーザーの内訳がどんなものか見てみました。

150902_ashmadbotcode4.jpg

botアカウント数(男女別)。

上のグラフの通り、bot=hostは7万572人いて、7万529人が女性、43人が男性でした。つまり、アシュレイ・マディソンのbotにおいて、男性比率は約0%、と言えます。botのメールアドレスのドメインはashleymadison.comであることが多く、他にも passthecake@hotmail.com、kimmakesprofiles@hotmail.com、digital-romeo@hotmail.comといったものがありました。また数万人のbotのIPアドレスは、そのプロフィールを作ったのがアシュレイ・マディソンのオフィスにいる人物であることを示していました。

ではImpact Teamのデータには人間の行動はなかったんでしょうか? 残念ながらそのようです。でもコードを見る限り、人間同士のチャットやメッセージをトラッキングするデータテーブルはいくつかあるようです。また、アシュレイ・マディソンではユーザーのチャットでの発言までちゃんと記録していたようです。Impact Teamがもっとデータを細かく見ていれば、またはもっと多くデータを落とす時間があれば、人間同士のかけひきや逢瀬のキャッキャウフフについてももっとわかっていたかもしれません。アシュレイ・マディソンには、まだまだ危険な情報がたくさんあるんです。

でもImpact Teamのデータでわかったのは、男性たちがしょっちゅうbotにコンタクトされていることだけでした。これらのデータ項目は、男性ユーザー3100万人のうち2000万人がbotからメールを受け取っていたことを物語っています。また、1100万人が自動のengagerとチャットしていました。コードを見る限り、botたちがたくさんのユーザーにほとんど数分おきにコンタクトしていました。もうひとつわかったのは、エンジニアたちによる不断の努力です。彼らは男性に対し、アシュレイ・マディソンならやる気あふれる女性がすぐ釣れる空間だと思い込ませようと必死でした。

botで男性を落とす方法

コードを読み解くのは簡単ではありませんが、作業を高速化するためにふたつのものが役立ちます。ひとつは任意のフレーズでテキスト内を検索できるプログラムのgrep、もうひとつはエンジニアがコードの中に残しているコメントです。私はgrepを使い倒し、コメントでもコードでも重要そうなフレーズを探していきました。

アシュレイ・マディソンの社内メールから、エンジニアやマネジャーたちがbotをある特定の用語で呼んでいたのがわかっています。たとえばhostとか、engagerとかです。エンジニアのコメントを見ていて一番興味深かったのは、engagerがどうふるまうべきか書かれた部分です。これは、engagerの活動を記録したデータベースから発見しました。以下のようなものです。

host bot mother creates engagers(Host botの母がengagerを作り出す)

birth has been given! let the engager find itself a man!(誕生! engagerに男性を見つけさせよう!)

randomizing start time so engagers don’t all pop up at the same time(engagerがみんな同時に登場しないように開始時間をランダムにする)

for every single state that has guest males, we want to have a chat engager(ゲスト男性の存在するすべての州に対し、チャットengagerが必要だ)

これらのコメントを見ると、botは生まれてすぐに「男性を見つける」という目的に向かわされていることがわかります。次にプログラマーは、engagerが同時に登場しないことが大事だと書いています。

engagerとは基本的にソフトウェアであり、アシュレイ・マディソンが「Angel」と呼ぶニセプロフィールの皮をかぶって行動します。Angelについては、アシュレイ・マディソンのCEOがじきじきに大量作成を指示していたことがメールからわかっています。Angelたちはhostともよばれ、botが動かすまでは眠っているのですが、botが男性ユーザーにコンタクトするときにスキンのような形で使われます。だからエンジニアは、複数のbotが同じプロフィールを使わないようにプログラムしたんでしょうね。基本的に、botのクローンがたくさんいない方がニセモノ感は少なくなります。

そして最後に、無料で使う「ゲスト」男性がいる全州、つまりカナダのヌナブト準州から米国カリフォルニアにいたるまで、そこにチャットengagerを作る決まりがあったようです。

もちろん、当初の想定通りいかないこともあるようです。あるパッチ、または編集では、こんなコメントがありました。「ゲイ男性をengageするのはやめた」。つい笑ってしまいました。これは多分、ゲイ男性ユーザーが女性botからしょっちゅうアプローチされるので、苦情が来たせいでしょうね。

コードから見たところ、チャットbotは相当うっとうしいです。まず彼らはあんまり賢くありません。以下はコードから直接とってきた言葉のリストで、チャットbotが吐き出すようプログラムされたランダムなメッセージです。

‘hi’,(ハーイ)

‘hi’,

‘hi’,

‘hi (s)‘,

‘hi there’,

‘how are you?’,(元気?)

‘hey’,

‘Hey’,

‘hey there’,

‘hey there’,

‘Hey there’,

‘u busy?’,(忙しい?)

‘you there?’,(そこにいるの?)

‘any body home?’,(誰かいる?)

‘Hi’,

‘Hi’,

‘Hi’,

‘hows it going?’,(どうしてる?)

‘chat?’,

‘how r u?’,(元気?)

‘anybody home? lol’,(誰かいる?w)

‘hello’,

‘hello’,

‘Hello’,

‘hello?’,

‘whats up?’,(どうしてる?)

‘so what brings you here?’,(何でここに来たの?)

‘oh hello’,

‘free to chat??’,(チャットできる?)

で、男性が会話を始めると、botはこんなことを言い出します。

うーん、私も若いときは友達のボーイフレンドと寝たものよ。昔の習慣ってなかなか変えられないわね、でも友達の夫とは寝たことがないけど。

私はセクシーで口が固くて、気まぐれなチャットはいつでも歓迎。お互いのことがわかってきて、うまくつながれそうなら直接会うこともできるわ。興味ある?

他にどんなことを言うのかは不明です。botはこんなにシンプルなのか、単にこれ以上のフレーズはコードに入っていないだけなのか。他の部分のコードを見たところ、これ以上話をするならお金を払えと迫ってくるようです。

Falcon氏は、RunChatBotXmppGuarentee.service.phpという特殊なbotプログラムがあると指摘しました。これは「情事保証」を受けるために250ドル(約3万円)払った会員と会話させるためだけに作られたbotのようです。そのコードではたしかに、botが男性とチャットし、クレジットを買わせ、「Affiliate」と呼ばれる何かにその人を引き継ぐことになっています。Affiliateとは多分、男性がチャットできるリアルな人間を集めたサードパーティの会社か何かなのでしょう。ひょっとしたら売春サービスにつながっているのかもしれません。

また、リアルな女性が男性をアシュレイ・マディソンに引き込んだ場合、女性に対しお金を払うシステムがテスト的に作られてもいました。そのコードでは「MaleProfit」(男性がアシュレイ・マディソンに払う金額)にもとづいて「FemaleValue」(女性のアカウントに割り当てられるパーセンテージ)を計算していました。もしある女性が、男性がクレジットを買っている20~30分のうちに引き込めれば、その女性に利益の5%が入る仕組みです。このシステムは実際使われてはいないようですが、アシュレイ・マディソンでは明らかにこんな構想をしてたんです。

150902_ashmadbotcode5.jpg

Map via Jake Perkowski

また社内メールから、経営陣は英語以外の言語でニセアカウントを作る人を見つけるのに苦労していたことがわかっています。botは31もの言語を話せる必要があり、チャットやメッセージの相手は50ヵ国、1,500の州や県に存在しています。上の地図は、Perkowski氏が「全女性アカウント数に対するengagerアカウント数の国別割合」を可視化したものです。青が濃いほど、botの割合が多いことになってます。つまり世界のほぼどこにいても、アシュレイ・マディソンには「誰かいる?w」をその国の言語で言えるbotがいるんです。

アシュレイ・マディソンは世界展開を重視していたためか、コードには地政学的な事情も反映されていました。たとえば今年5月には、クリミアでの支払い処理を変更するためにシステムがアップデートされたようです。これはロシアの侵攻に対応したもので、支払いシステムの言語がウクライナ語からロシア語に変更されました。別のコメントでは、「南アフリカのengagerは、同じ人種のPnum(ユーザー)にしかengageしない」とありました。

アシュレイ・マディソンが目指したのは、YOLO(You Only Live Once、人生一度だけ)を掲げて一夫一婦制のしばりを打ち砕く人たちの世界ネットワークでした。でも実際は非ゲイの男性がbotに語りかけ、botは男性にメッセージを送りまくってお金をせびる、そんな場に過ぎません。

「Mistress」(愛人)なるメールテンプレート集も見つかりました。それはバレンタインの前日、2月13日のMistress Dayに向けた販促メールです。アシュレイ・マディソンのCEO・Noel Biderman氏は、2014年にMistress Dayの大々的パブリシティをしています。CEO自らメディアでインタビューを受けたり、Mistress Dayまでに愛人を見つけるべく、より多くのクレジットを購入させるメールを送ったりしていました。

そんなメールの大半は非ゲイの男性向けでした。コード内のあるコメントでは、新ユーザー向けbotメールは月曜日、水曜日、金曜日に送るとありました。でも男性を求める男性には火曜日だけ、女性を求める女性には木曜日にしか送られていませんでした。

engagerたちは非常にうっとうしいので、デベロッパーはbotメールがスパムとしてブロックされないよういろんな処理を入れる必要がありました。インドやフィリピンの特定のIPアドレスが除外されていて、そこにはhostアカウントを運営している人がたくさんいるということを示唆しています。

リアルユーザーの意外な内訳

アシュレイ・マディソンのデータに関する最初の記事を出してから、アシュレイ・マディソンを使ったという男女数十人からメールをもらいました。そこがセックスbotだらけだという見立てと同意見の人もいましたが、女性の場合、多くの人は何年もアシュレイ・マディソンを楽しく利用していました。また男性も、そこで出会った女性の素晴らしさについて語り、中には「情事」の後にちゃんとした恋愛関係になったという人もいました。

何人かの女性は、「女性を求める女性」がコードやデータベースの中でどう処理されているかの調査を強く望んでいました。その多くは、男性を含めた3人での行為のため、または男性と結婚していながら女性同士でセックスするため、女性と出会っていました。私は彼女らの意見を取り入れました。当初考えたより多くの女性がアクティブであることがはっきりしたからです。

まずわかったのは、女性を求める女性がデータベースに77万人以上いるということです。女性全体が550万人の中での77万人で、しかもbotを除いた数です。つまりレズビアンが14%ということで、米国人口で推定されるレズビアン率1.5%(バイ・セクシャルは0.9%)よりかなり高い数値です。アクティブなアカウントではないかもしれませんが、engagerでもないようです。

この77万人がリアルな人間のアカウントなら、そこにはbotメッセージが送られていないこともわかっています。botは女性を避けているんです。コードのコメントでも、「女性を求める女性」のプロフィールは非ゲイの男性には提示されないことがわかっています。アシュレイ・マディソンでスパムとかうっとうしいものに悩まされていないのは、女性同士、またはカップルと出会いたい人だけのようです。

また、男性を求める男性は34万5000人いるようです。上に書いたように、engagerが彼らに不快な思いをさせないようデベロッパーが努力しているようです。ある人がメールに書いていたのですが、アシュレイ・マディソンはゲイの人たちにとってはそこそこまっとうな出会いの場だったかもしれません。ただそれは主に、システムが彼らを無視していたからなのですが。

実際、アシュレイ・マディソンのコードで想定されている嗜好は6パターンしかありませんでした。コメントにはこうあります。

1.男性を求めるパートナーあり女性

2.女性を求めるパートナーあり男性

3.パートナーあり女性を求める独身男性

4.パートナーあり男性を求める独身女性

5.男性を求めるパートナーあり男性

6.女性を求めるパートナーあり女性

つまり、パートナーありの女性と出会いたい独身女性とか、パートナーありの男性を求める独身男性とかじゃいけないってことです。このソースコードを作った人は誰も、ゲイの人たちの選択肢に関しては深く考えてなかったみたいです。

また女性についてもあまり考えられてません。リアルな女性はbotからほとんどコンタクトされず、人間の男性に出会うのに苦労はせずに済んでいたようです。無視される集団に属しているのって、一種の自由があります。スパムbotの陰で、女性は女性同士、または男性と、つながっていたんです。総数や頻度はわかりませんが、そんなふうに使っている女性がいたことはわかりました。

とはいえ、アシュレイ・マディソンのソフトウェア開発の大部分は女性bot軍の強化に向けられていました。彼らがそうしたのは、女性の数が本当に少なかったせいか、男性が本物の女性と出会ってクレジットを買わなくなるのを阻止したかったのか、どちらかなのでしょう。理由はどうあれ、アシュレイ・マディソンのビジネスはbot頼みだったようです。

Art and data tables by Tara Jacoby

Annalee Newitz - Gizmodo US[原文

(miho)