Hacker Song!恋のセキュリティホールをリリース!

この度『恋のセキュリティホール』を製作いたしました。img_0538-1

サイバーセキュリティ財団(https://csf.or.jp)の財団歌及びサイバーセキュリティ学習ゲームTEPPEKI〜CTF BATTLE FIELD〜の主題歌です。

制作:サイバーセキュリティ財団
ボーカル:YUKI
作詞:KOBA
作曲:atk project
映像編集:PandaMic
監督:DO
総監督:宮脇正

【歌詞】

何回でも言うからね
君はホワイトハッカー 白く輝いて
どうやったら埋まるの?ねぇ?
君はホワイトハッカー この胸セキュリティホール

キラキラ光る 画面の中の
君はいつも何に見とれてるの?ねぇ?
お散歩しましょ、どこへでもゆける
ふたり キセキ 出会い ラララ♪
root がとられちゃったみたい

プロトコルが ひゅんひゅん
あのね、もう行かなきゃ
気付けば私の感情 すべてが
クロスサイトスクリプティング

何回でも言うからね
君はホワイトハッカー 白く輝いて
どうやったら埋まるのかな?
君はホワイトハッカー この胸の穴は
どんなときも信じてる
君はホワイトハッカー 君は君らしく
トンってしたらとしたらキュンとくる
私まちがいない この胸セキュリティホール

カチャカチャタイピング スタバのソファーで
キーボードクラッシャーにクスクス笑いあった
まっすぐな目に ココロがときめく
君と わたし ふたり ラララ♪
ヘッダとペイロードみたい

プロトコルが ひゅんひゅん
ゼロデイじゃないのに。。。
夢の中まで メモリリークしちゃって
クロスサイトスクリプティング

何回でも言うからね
君はホワイトハッカー 白く輝いて
どうやったら埋まるのかな?
君はホワイトハッカー この胸の穴は
どんなときも信じてる
君はホワイトハッカー 君は君らしく
トンってしたらとしたらキュンとくる
私まちがいないこの胸セキュリティ(ホール)

生まれて初めて感じた気持ち
ムーアの法則で急上昇
こみ上げる思いが とめられなくて
バッファオーバーフローね

何回でも言うからね
君は絶対に夢を捨てないで
またどこかで会えたらね
私の恋はピュアなセキュリティ(ホール)

何回でも言うからね
君はホワイトハッカー 白く輝いて
どうやったら埋まるの?ねぇ?
君はホワイトハッカー この胸セキュリティホールimg_0541-1

応援よろしくお願い致します!

第三回Hackerzミーティング博多の様子

img_0410img_0209

第三回Hackerzミーティング博多無事終了しました!今回は弊社開発次世代型CTFゲームである『TEPPEKI〜CTFバトルフィールド〜』のお披露目会を兼ねて第一回目のCTF大会を開催しました!
告知通りMVPプレーヤーには10月発売予定のプレイステーション4VRセットをかけて白熱したバトルが繰り広げられました!今号ではその様子をお伝えします。
まずは何時ものように食べ放題飲み放題の会場にて乾杯の挨拶!それから開発経緯や開発秘話トークにてイベントスタートしました!img_0411

苦節4年!様々な妨害にもめげずにこの日を迎えられた事に感謝!感謝!です。
続いて早速1回目のバトルスタートですが準備の間はしばしご歓談www
当イベントのお決まりになったミクガール達がお酒&飲み物をお席までお届け!img_0416img_0429

準備も整いいよいよ1回目のCTFバトルスタート!
ルールは、、、
・3対3のチーム対戦
・制限時間30分間
・自陣に3つノード(サーバー)、敵陣に3つのノードそして中立の2つのノードがあり敵陣もしくは中立ノードの脆弱性を見つけて侵入し隠されたフラグを入力する事で加点。また自陣ノードの脆弱性を修正し『防御』する事によっても加点される。
※独自技術により修正=防御とし判別できるオンラインCTFはTEPPEKIが世界初搭載!
・三十分後合計ポイントが多いチームがい勝利

以上のルールで白熱のバトルの火蓋が切って落とされました!img_0413img_0422

頭を悩ませる問題に皆さん真剣な表情www
またTEPPEKIは観戦者も楽しめるようにリアルタイムで進行状況がわかる観戦モードも搭載!会場では観戦モードを大型プレジェクタで映し出し解説しながら皆んなで飲食ができる画期的なゲームソフトなんです!なんて素晴らしいんでしょう!
解説に皆んな真剣そのもの!img_0412img_0415img_0414

CTFに慣れていない方も多かったせいなのか?ちょっと問題難しかったのか?w一回目は正解者0!プレーヤーの感想を伺いました!img_0417img_0418

大方のご意見は、不正解ごとに少しずつヒントを出して欲しい!との事!正式リリースまでに検討しますwwimg_0419img_0420

少しの休憩・ご歓談を経て第二回目に突入!悔しかったのか2回目も参戦された方も!果たして結果は!?!?img_0423img_0421

2回目は正解者続出!!!観戦者への解説にも熱が入ります!img_0426

そして結果は1Pチームの勝利!!!
そして初代TEPPEKI MVPは!?!?img_0424

写真中央の金子健哉さん!おめでとうございます!金子さんにはunnamed (9)

をお届けしますので今しばしお待ちを!!!!!!!

計2回のバトル対戦が終了し田口氏より難しかった問題やゲームのコツなどを解説!img_0427img_0407

田口氏の解説に皆んな興味深々!次回のバトルの参考にしてください!

イベントも終盤に差し掛かった所で頭山満翁のひ孫にあたる頭山晋太郎氏が会場に駆けつけ一言挨拶いただきました!国防の観点からもこの様な集まりの中から優秀なホワイトハッカーが育っていく事を願っていますとの事!img_0428

ここ福岡では私たちの集まりに賛同してくださっている県議・市議の方々も大変多くおり次回以降実際見てみたいとのお声も多いのでじゃんじゃん視察に来てもらう予定です!

ここで一通りのスケジュール終了!後は交流会としてしばし飲み食いし親睦を深めました!img_0430img_0425

今回終わってつくづく思った事は、本当にこのハッキングゲームソフトを作ってよかった!イベントやっててよかった!と心底思いました!
問題解けた方も解けなかった方も皆さん共通して仰ったのが、もっと技術力向上したい!です。
当イベント及びTEPPEKIがそのきっかけ作りにまた練成の場になってくれたら幸いです!それではまた第四回でお会いしましょう!有難うございました!img_0408

第三回hackerzミーティング博多のお知らせ(MVPハッカーには賞品ありCTF大会!)

unnamed (8)大人気イベントHackerz MTG.の第3回!
早いもので当イベントも三回目のなりました!

・第一回目の様子(http://www.whitehackerz.jp/blog/hacherz%E3%83%9F%E3%83%BC%E3%83%86%E3%82%A3%E3%83%B3%E3%82%B0%E5%8D%9A%E5%A4%9A/)

・第二回目の様子
(http://www.whitehackerz.jp/blog/%E7%AC%AC%E4%BA%8C%E5%9B%9Ehackerz%E3%83%9F%E3%83%BC%E3%83%86%E3%82%A3%E3%83%B3%E3%82%B0%E5%8D%9A%E5%A4%9A%EF%BC%81/)
この度、WhiteHackerZHackerz Lab.博多が開発しているマルチプレイヤーオンラインCTF対戦ゲーム『TEPPEKI』の初お披露目イベントとなります。
現在IT、WEB業界では人材不足が大きな問題となっています。
中でもセキュリティ人材不足は顕著であり、優秀な人材は引く手数多となっています。
これからもその傾向はより強くなると考えられています。
『TEPPEKI』を通し楽しみながらセキュリティスキルを学ぶことによりセキュリティ人材、ホワイトハッカーを育てていきたいと考えています。

今回は『TEPPEKI』の対戦を実際にその場で観戦することができます。
また希望者には実際に対戦に参加いただけます。
さらに!対戦参会者の中からMVPホワイトハッカーを選出しMVPには豪華賞品が進呈されます!賞品詳細は後半で。
これから業界内外問わずに確実に大注目間違い無しの『TEPPEKI』を日本で一番最初に目撃していただきたいと思います。

unnamed (6)

【TEPPEKIとは】
1.Capture The Flag(CTF)の簡易版として、攻撃をクイズ形式、攻略性を陣取り型にしたマルチプレイヤーオンライン対戦ゲーム。
2.実際のプログラムソースなどからFLAGと呼ばれる脆弱性を拾いだし、正誤を判定。
3.正解する事で、セキュリティ突破とみなす攻略性。課程を学習する目的も兼ねて提供。
4.マッチングサーバを用いたマルチプレイ対応。ゾーンと呼ばれるノードの密集地帯に集ったプレイヤー同士で対戦可能。
5.持ち時間内に全て突破(完全制圧)するか、制限時間内に制圧率の高い方が勝利。
6.観客としての観戦も可能。観戦時はどちらのチームが勝利をするかをゲーム内通貨を利用して投資が可能。

開発費用2,000万円をかけた本格派マルチプレイヤーオンライン対戦ゲーム。
WEB CTF業界では今後当システムがプラットフォームになっていくと予想される。
上記理由として、現在あるWEB CTFは攻め側だけの加点方式!何をもって防御に成功したのか?を検知するのが難しいのですが、TEPPEKIは業界初!独自の監査サーバー設置により防御も加点可能に!これにより攻守いずれでも加点される為白熱のオンラインバトルを実現!観戦モードにも力をいれ、視聴だけでも楽しく学べるようにセキュリティ人材育成にも貢献します。unnamed (4)unnamed (7)unnamed (1)unnamed (2)unnamed (5)unnamed (3)
【当日内容】
1.WhiteHackerZ 宮脇 正(TEPPEKI開発責任者)&
Hackerz Lab.博多 古林 侑樹(TEPPEKI発案者)によるトーク

2.『TEPPEKI』ゲーム対戦第1回(3対3)
解説者:田口 雅章(WhiteHackerZ)
実況:古林 侑樹(Hackerz Lab.博多)
対戦者:coming soon…

3.『TEPPEKI』ゲーム対戦第2回(3対3)
解説者:田口 雅章(WhiteHackerZ)
実況:古林 侑樹(Hackerz Lab.博多)
対戦者:当日参加者の中から有志6名(3対3)

ゲーム対戦第1回、第2回参加者の中からMVPホワイトハッカーにはなんと
「PS4+PlaystationVRセット(予約)」をプレゼント!総額10万円相当の賞品を見逃すな!

unnamed (9)unnamed (10)

http://www.jp.playstation.com/psvr/
ゲーム参加希望者はお問い合わせ、または当日申し込みをお願いします。

4.交流会

5.希望者は2次会へ(場所は未定。会場近くの居酒屋などを予定)

【概要】
Hackerz MTG.Vol_3
会場:ル・ジャルダン(中洲ゲイツ7F)ジャルダンHP⇒(https://www.hotpepper.jp/strJ001133640/party/
日時:9/11(日) 18:00〜20:30 (会場オープン17:30)
料金:無料招待(無料!!!)
申し込みはこちらのフォームからお願いします!
https://docs.google.com/forms/d/1nGapMOtNTE8Zp67Io9F1-YRW1GBUUhdPaKlqI7bY_E8/edit

猛者どもの挑戦待っていおるぞ!!!unnamed (11)

当イベントのお決まりパターンになってきた初音みくちゃんも大量参戦www
それでは当日会場でお会いしましょう!unnamed (13)unnamed (12)unnamed (14)

アラブ首長国連邦(UAE)に行かれるときの注意点(VoIPアプリの使用を抑制)

これからアラブ首長国連邦(UAE)に行かれるときの注意点
として仲間から送られてきたので掲載します。
(2016/8から適用)
IMG_0029
VPNを非合法とはしないですが、利用方法によっては罰金と懲役が科せ
られる法律を通過させ適用を開始しました。
その理由は
UAEでは規制されたプロキシ・サーバーの設定が必須
自動プロキシ設定では、”http://proxy.emirates.net.ae/proxy.pac“を使用
それに伴ってインターネットは閲覧規制がかかっておりSkype 、WhatsApp、
Snapchat、ViberなどのSNS 、イスラエル関係、反イスラムを標榜するサイト、
女性の水着・下着のモデル写真、不適切とみなされる単語(例: fuck)を
含むサイト、猥褻目的のサイト(ポルノ・風俗産業関連)などがブロックされ
ています。
そのため、VPNはツーリストには必須なものとなっていました。
それが、UAE国内の利用者が増加したことで、国が介入してきたと
いうことになります。
アラブ首長国連邦に居住する人の多くがVPNアプリを導入しVoIPを利用して、
メッセージング、音声アプリがあるSkype、WhatsApp、Snapchat、Viber
などを利用したり、VPNを利用していますが、そのことでUAE国内の
ローカルテレコム会社(国営企業Etisalat と 新参企業du)の事業経営に
支障が出始めてきました。
その対策として事業を取り戻すため(これらVoIPアプリの使用を抑制する)
この新しい法律を実施することになったのです。
日本の方が国際ローミングを利用した場合にはすべてのトラフィックは
ローカルテレコム会社(国営企業Etisalat と 新参企業du))を経由する
国際ローミングため本法律の対象ではありません。またVPNを張った
としても上記ローミングを経由した後のVPNとなるため本法律の対象に
はなりません。
ただし現地でWiFiなどを使う場合には、MACアドレスを固定で利用する
のではなく必ず定期的に(1日一回以上)変更し利用することを推奨して
います。
参考、出典元資料:
Takeo Yoshida

第二回Hackerzミーティング博多!

皆様こんにちは!IMG_6403

今回は7月30日土曜日20時より開催された第二回ハッカーズミーティングの様子をご報告させていただきます。第一回同様60名を超える方々にご参加頂きました。また企画面も前回を超える内容で満足頂けたのではないかと思っております。登壇者は以下!IMG_6188IMG_6187IMG_6191IMG_6190IMG_6186それでは見ていきましょう!

第二回ハッカーズミーティング

20:00 スタート 司会 ITeensLab近藤(http://www.do-luck.net/plady/kidsit/
VJ  atk

IMG_6275IMG_6276

挨拶・乾杯 Whiehackerz 宮脇正IMG_6306

乾杯も済みいよいよ Talkイベントスタート!まずは九州大学サイバーセキュリティセンター(http://staff.cs.kyushu-u.ac.jp/ja/index.html)准教授の金子晃介さんから!IMG_6279

非常に興味深い話でした。特に九州大学ではサイバーセキュリティが必修科目になるんですって!金子さんまた次回もよろしくお願いします!

つづいて株式会社Skydisc(https://skydisc.jp/)代表取締役 橋本司さんの登場!お題は『IoTで必要とされるセキュリティ』についてIMG_6282

丁度当イベント準備期間中に孫正義氏の英半導体大手のアームホールディングス買収ニュースが飛び込んできていましたので、本イベントで唯一のIoT業界の橋本さんのお話を密かに一番の楽しみにしておりました!大変興味深くまたじっくりとお伺いできればと思います!

続いて、第一回も登壇し皆勤賞中のリーガルジャパン法律事務所 代表弁護士 清田知孝さん!お題は『サイバー犯罪の判例と今後の法規規制について』IMG_6285

今回は判例をもとに具体的なお話頂きました。第3回もよろしくお願いしますwww

それから満を持して我らが校長!株式会社ブースタ 代表取締役 Whitehackerz養成学院校長 田口雅章さん!お題は『サイバー攻撃に関する被害回復事例』IMG_6288

今回は実際に弊社にお問い合わせ頂き被害調査&対策を行った事例を公開できる範囲でお伝えしました!少し事前に飲みすぎたのか!?いつもより流暢にしゃべる校長でしたwww次回から酔拳トークが決定しましたww

最後にオオトリ!この日のために東京からわざわざお越し頂きました!株式会社サイバーセキュリティクラウド(http://www.cscloud.co.jp/) 会長兼ファウンダー 横田武志さん!攻撃遮断くん(https://shadan-kun.com/service/)で有名な会社です!お題は『サイバーセキュリティ業界の人材動向について』IMG_6292

アメリカのサイバーセキュリティ業界との比較とってもわかりやすかったです!本記事でお見せできないのは残念ですが極秘資料まで用意くださり皆さん食い入るようにプロジェクターから映し出される資料をみていました!IMG_6397

それからお待ちかねの登壇者5名によるフリートーク!IMG_6257IMG_6258IMG_6259IMG_6262

とここで、、、

え!!?

ええ!?!?

IMG_6255

筋肉ムキムキの謎の男が壇上に乱入!!!この男性は、、

ただでさえ堅苦しい話が多いのでWhitehackerzが用意したイベント盛り上げ男のショーンと愉快な水着ガールの皆さんですwwwIMG_6267IMG_6254

ここからは交流会イベント!!!飲んで騒いで!!!楽しんで交流してます!!!IMG_6266

今回も初音ミク参戦!今回は5人!!!大人気ですwwwIMG_6268IMG_6269IMG_6297

ちょいちょい出てくるチェックのスーツの人wwwwwwwwwww女の周りにしまいせんwwwwIMG_6396IMG_6301IMG_6277IMG_6256IMG_6296

遅れてきたコバちゃんwwwIMG_6272

彼らのITeensLab(http://www.do-luck.net/plady/kidsit/)子供向けプログラミングスクールは九州地区ではテレビに引っ張りだこ!!皆さん応援よろしくお願いします!IMG_6271

とそのまま二次会へ流れていくのでした。。。

このイベント次回は9月11日に第三回開催決定!現在開発中のハッキングゲームもその時にお披露目します!3on3で戦う本格ハッキングゲームです!是非ともお越しください!ただし参加条件はIT関係者でセキュリティに携わっている方もしくは興味がある人のみ!!!それではまたお会いしましょう!

あ、whitehackerzアプリがAppストアとAndroidマーケットでインストール可能になりました!是非チェックしてみてください!IMG_6394

それではさようなら!IMG_6299

Hackerzミーティング博多

6/12日曜日に福岡市博多区のGARB LEAVESさんにて第一回ハッカーズミーティングを開催致しました。今回はその様子をお伝えします。

福岡 博多駅前のカフェレストラン GARB LEAVES(ガーブ リーブス)

IMG_5585

当日の行程は以下の通りです。

以下敬称略
司会:近藤
ファシリテーター:古林
コメンテーター:日下部
19:00 挨拶、乾杯
挨拶(19:00)
・司会自己紹介(近藤)
IMG_5606
IMG_5612
・Hackerz Lab.代表挨拶(古林)
IMG_5607
・タイムテーブル紹介・システム紹介・DJ・VJ紹介(近藤)
(null) (1)
IMG_5599
IMG_5604
・White Hackerz挨拶(宮脇)
・乾杯(宮脇)
IMG_5591
19:00〜19:30 DJ Wimps&VJatk
IMG_5588
19:30〜20:00 ハッカーズトーク&サウンドファシリテートatk(右からWhitehackerz田口校長、ジェリー氏、清田弁護士、日下部氏、ファシリテーター古林氏)
対談では田口校長より最近のサイバーセキュリティ業界の動向についてお話しし、続いて清田弁護士よりサイバー犯罪についての見解、そして最も驚いたのがドイツ人ジェリー氏による量子コンピューター界隈の情勢について!自身も量子コンピューターの研究・開発者でもあるジェリー氏のディープすぎる話しに会場は生唾飲んで聞き入っていましたwwww
IMG_5589
IMG_5594
IMG_5590
IMG_5603
IMG_5602
IMG_5593
20:00〜20:20 フリートーク
IMG_5592
IMG_5598
IMG_5600
IMG_5610
IMG_5613
IMG_5614
20:20〜20:30 ハッカーズソングLIVE
IMG_5611
(null) (2)
20:30〜21:00 フリートーク&希望者自己紹介など
IMG_5615
IMG_5616
IMG_5617
21:00 挨拶、イベント等告知、記念撮影
IMG_5583
以上惜しまれながら閉会の運びとなりました。
第一回にしては多くの方々にお集まり頂き感謝申し上げます。
これからこの集まりにおいて、技術的考査をしたりサイバー犯罪における事例検証したりサイバーセキュリティにおける法令・条例についての議論の場であったりそしてサイバーセキュリティにおける新しいサービス・ソフト開発のきっかけになったり、、、この4点に重点をおき九州地区ナンバー1のセキュリティ会議に成長させてまいります。
次回第二回開催日程は今から2週間程度で決定しますが粗方7月20〜末頃になる予定です。
また改めて告知させて頂きますが九州地区の皆様は奮ってご参加ください!
次回は100名!
IMG_5609
それではまた!

Kali Linuxをインストールしてみる!

Kali Linux セットアップ手順

はじめに。
Kali Linuxは、BackTrack Linuxの後継にあたるペネトレーション用のOSになります。
擬似的にハッキングを仕掛けてシステムの耐久力をテストするための様々ツール、ソフトが初めから入っています。
BackTrackに関しては以前紹介したこちらの記事を参照>>

KaliLinuxはソフトではなく、WindowsやMacと同じようなOSとなりますので、通常はパソコンを用意してその中に入れていくのですが、実際に専用のパソコンを準備するのは大変なので、バーチャル(仮想)として、現在利用しているWindowsの中に別のOSをインストールして利用する事が出来ます。
使いたい時だけ、仮想OSを起動して利用する事になります。
このようなことを実現するためのソフトが、VirtualBoxというソフトになります。

VirtualBoxにKali Linuxをセットアップして利用するための手順を紹介します。

まずは、VirtualBoxのセットアップを済ませておいて下さい。
VirtualBoxのダウンロードはこちらから>>

次に、Kali Linuxをダウンロードしておきます。
Kali Linuxのダウンロードはこちらから>>
VirtualBox用のImageをダウンロードしますが、約3GBあるので、時間がかかります。

Kali Linux Custom Images Download - Offensive Security

ファイルをダウンロードし解凍して、Kali-Linux-2016.1-vbox-amd64.ovaをVirtualBoxで読み込みます。

VirtualBox起動して、左上「ファイル」から「仮想アプライアンスのインポート」をクリックします。
36

ダウンロードして解凍した、Kali-Linux-2016.1-vbox-amd64.ovaを開き、次へをクリックします。
37

「インポート」をクリックします。
38

インポートが完了すると、VirtualBox、左側にKaliが表示されますので、選択して「起動」を」クリックします。    8

しばらくすると起動しますので、
ユーザ名、root
パスワードに、toor
と入力してログインします。29

パスワードには、toorと入力
30

最初は英語なので、日本語に変えておきます。
右上、電源のアイコンをクリックして、左下の設定ボタンをクリックします。
39

「 地域と言語」のアイコンをクリックします。
40

日本語を選択します。
41

一度、再起動します。
43

42

再び、ユーザ名、root、パスワード、toorでログインします。
VirtualBox上のKaliLinuxと利用しているWindows双方で、コピー・ペーストが出来るようにしていきます。
VirtualBoxの「デバイス」から、「Guest AdditonsのCDイメージを挿入」をクリックします。

32

自動実行するか聞いてきますので、「キャンセル」します。
33

左端にある、ターミナルをクリックします。34

CDの中にある、VBoxLinuxAdditions.runというファイルを、手元にコピーします。
起動したターミナルに以下のように入力してエンターキーをおします。
cp /media/cdrom/VBoxLinuxAdditons.run /root/
コピーコマンドです。

[code title=”Copyコマンド”]
cp [コピーするファイル] [コピー先]
[/code]

次に、コピーしたファイルを実行します。
以下のように打ちエンターキーを押します。

[code]
./VBoxLinuxAdditions.run
[/code]

45

yesかnoか入力を聞いてきますので、yesと入力してエンターキーをおします。
46

以下の様な画面になったら完了です。
47

これで、Windowsからの文字をコピーして、Kaliに貼付けしたり、ファイルを直接ドラッグしたり出来るようになります。

このままでは、日本語が入力出来ませんので、次に日本語入力できるようにしておきましょう。
ターミナルに以下のように入力してエンターキーをおします。

[code]
apt-get install yim yum-anthy
[/code]

続行するか聞いてくるので、Yを入力してエンターキーをおします。

51

処理完了したら、一度再起動します。

アップデートもしておきましょう。

[code]
apt-get update
[/code]

50

Tiger育夫3ラウンドKO勝利!Whitehackerzスポンサーのキックボクサー応援4649!

今大会から微力ながらスポンサーさせて頂いているTiger育夫こと柳井育夫氏。7/19の試合では3ラウンドKO勝利!と絶好調です!もう次の試合が気になってしかたありません。これからも応援し続けて行きます!

IMG_2740 (2)

IMG_2714 (2)

IMG_2713 (2)

早く博多で祝勝会しましょう!!!!待っています!IMG_2012 (2)

また柳井氏は大阪府松原市にて若獅子会館松原支部の代表でもありそのコンセプトにもゆるぎない信念を感じさせる男です!

IMG_2745 (2)

IMG_2746 (2)

熱い熱い男ですので皆様も応援宜しくお願い致します!

Tiger育夫ブログ⇔http://ameblo.jp/ikuo0820/

 

ハッキング対策実例①~ショッピングサイト運営者様の場合~

日頃から、多くのお問い合わせをいただいております。
今日はその中から、実際の相談内容を紹介させていただきます。

4月下旬、1本の問い合わせメールを頂きました。

その内容は、

当社のショッピングサイトが何者かに不正にクローキングされているので、非常に迷惑している。Googleにも問い合わせしたが、対応してもらえず、会社の存続の危機であり、色々な方に相談したが、対応策が見当たりません。
どうか、話しだけでも聞いてほしい、

との内容でした。

早速、状況確認するため、メールの送り先であるショッピングサイトのオーナーに電話し、話を聞くことにしました。

相談内容は、ある特定のキーワード(実際には、このショッピングサイト名)で、検索すると、上位に、見に覚え内のないサイトが表示される、という内容でした。

実際に、検索して確認してみます。
(仮にキーワードをHOGEとします。)

Googleで、HOGEと入力して検索すると、全く同じタイトル、内容の検索結果が上位に2件表示されていました。

1番目に表示されているサイトにアクセスすると、ショッピングサイトが表示されます。
しかし、このショッピングサイトは、お問い合わせいただいたオーナー様も見に覚えのない、誰かが作成した偽物のショッピングサイトのようでした。
内容はオリジナルを丸コピーしたものでなく、全く別物のショッピングサイトでした。

2番めに表示されているのは、問い合わせされた方の正規のショッピングサイトです。

search

1番目に表示されている検索結果のURLは、www.dummy.comとなっていますが、アクセスして表示される偽のショッピングサイトのURLは、www.fake.jpとなっていました。

ですので、dummy.comから、fake.jpに自動でジャンプされていました。

検索からではなく、アドレスバーに直接、dummy.comとURLを入力してアクセスすると、自動ジャンプされず、dummy.comのコンテンツが表示されます。
ショッピングサイトではなく、海外の情報を発信するサイトが表示されました。

dummy.comがハッキングされ、細工された可能性があります。

アドレスバーに直接dummy.comを入力してソースを表示してみると、下記スクリプトがはいっていました。
<script>var s=document.referrer;if(s.indexOf(“google”)>0 || s.indexOf(“bing”)>0 || s.indexOf(“yahoo”)>0){self.location=’http://www.fake.jp/’;}</script>

このコードは、google、bing、yahooの検索サイトを経由してアクセスした場合は、fake.jpにジャンプさせ、アクセスさせる、という内容です。
ですので、検索からではなく、直接URLを入力するとこのコードは実行されず、dummy.comが表示された事になります。

このdummy.comのコンテンツは、海外のサイトであり、ショッピングサイトでありません。
当然、正規ページの内容や文章、HOGEといったキーワードなどまったく入っていない(そもそも国、言語が違う)、関係ないサイトが、なぜHOGEというキーワードで上位表示されているのでしょうか?

そこで、色々調査する中で以下の内容が判明しました。

Googleは、検索に表示させるサイトを収集するため、定期的に自動巡回プログラムを使ってサイト情報を収集しています。このプログラムをGoogleボットといいます。

通常、人がアクセスするのと変わらないのですが、このGoogleボットにはある特徴があります。それは、自分はGoogleボットです、という情報をもっている事です。

Googleボットにかぎらず、インターネットにアクセスした際、かならず、自分(利用しているブラウザの情報)が相手サーバーに送られます。

これを、User-Agent(ユーザーエージェント)といい、この情報にはアクセスしているブラウザの種類、バージョンなどのがはいっています。

Googleボットの場合、このUser Agentに、自分はGoogleボットです、という情報がはいっています。
アクセスするサーバー側で、このUser Agentが取得できますので、
見せるページを切り替える事ができます。

この切替手法はよく使われており、
たとえば、PCとスマホでは、画面のサイズが異なるので、UserAgentを取得して各端末毎にデザインされたページに切り替えさせて表示させる方法です。

このUser Agentは簡単に偽装できます。
Chromeだと、User-Agent Switcher for Chromeという拡張機能を使うと簡単に実現できます。

では、このUserAngetを偽装して、Googleボットがアクセスしたようにみせ、ハッキングされたサイト、dummy.comにアクセスしてみます。

すると、正規のショッピングサイトのページが表示されました。

また、Googleボットでアクセスした場合、URLが変わっていなかったので正規のショッピングサイトに移動されておらず、dummy.comのままで、正規のサイトが表示されていました。

つまり、YahooやGoogleから検索した場合は、dummy.comを経由して偽のショッピングサイトに誘導し、Googleボットには、正規のショッピングサイトに誘導していました。

また、Googleボットでアクセスした場合、さらに別サーバーに移動している事が分かりました。

まとめると、流れとしては、

①通常のアクセス   —> www.dummy.com —> JavaScriptでリダイレク —-> fake.jp

②Googleボット —> www.dummy.com —> 別の国のサーバ —-> official-site.jp

また、Googleボットでアクセスした際に表示される正規ページの中身は、ミラーリングされており、リアルタイムに情報を取得していました。
正規ページで商品追加などの更新を行うと、dummy.comの表示も即座に反映していました。

fake.jpは、フィッシングサイトであり、個人情報やクレジットカード情報を収集しているサイトと判明しました。
当然、購入しても商品は届きません。
しかし、問い合わせ先が正規サイトの情報が明記されていましたので、見に覚えのない問い合わせが入り、クレームが多発している状況でした。

このdummy.comは、海外の情報発信サイトであり、ページランクも高く、Googleの検索評価も高いと予想され、結果、正規ページより上位(結果1位)に表示されたと考えます。

このオーナー様が色々な方に助言され、対策を行ったが、解決せず当社に問い合わせされた、という経緯になります。

どのような助言をされたのか、聞いたところ、直接解決とは程遠い内容でした。
たとえば、ある業者からSSLを取得する事で、改善されますよ、と言われたそうで、実際に費用を支払、SSLを導入し、対策されておりました。
SSLを取得するという事は、サイト移転と同等です。httpよりhttpsの方が検索結果として優位だとは思いますが、決定的な順位決定事項でなく、まして今回の件が改善されるはずがありません。
逆に一時的に、順位が更に落ちる可能性もあります。
また、うまくいったとしても、1位と2位が入れ替わるだけで、なんら解決策ではありません。

オーナー様は現在の状況をすぐにでも解決したい、との事なのでSEO対策を行い、順位を上げる方法を行っても根本的な解決方法にはなりません。

また、Googleに問い合わせしてもいつになるのか、分からないといった状況です。

このハッキングされているサイトが日本国内で運営、稼働している場合は、サイト管理者にメールや場合よっては直接電話する、弁護士に相談など、色々手法はあるのですが、今回の場合は海外(英語圏ではない)です。

弊社に依頼する前にもこのサイト管理者に対して何度か問い合わせを試みたようですが、対応されていない現状でした。

そこで弊社の技術的チームがあらゆる対応策を洗い出し、対応を行いました。

結果、ご依頼をいただいてから2日でオーナー様が望む結果をだしました。

ご依頼されたオーナー様からは、多大な感謝を頂きました。

 

Web上でのユーザーを追跡する方法

検索エンジンでの私の古いクエリに応じて、Google AdSenseが頻繁にコンテキスト広告を侵入させてくることに私は常に悩まされてきた。検索したときからだいぶ時間が経ち、ブラウザのクッキーやキャッシュを何度か消去しているのにも関わらず、広告が残った。いったいどうやって彼らは私を監視し続けたのだろう?実は、これを行うための方法がたくさんあることが判明した。

まずはじめに

IDやユーザー追跡、または単にWebトラッキングは、特定のサイトを訪問する各ブラウザの一意識別子を計算し設定することを暗示している。元々はここまで悪用されるとは予想だにせず、他のものと同じく、役に立てるようにとまったく逆に考えられたものだった。たとえば、サイト所有者がボットと普通のユーザーを区別したり、ユーザー設定を保存し、二度目以降の訪問でもそれらを使用できる機能を提供するためだ。しかし同時に、この機能は広告業界に非常に好まれてしまった。あなたも良く知っているように、クッキーはユーザーを識別するための最も一般的な方法の一つである。積極的に広告業界で使われ始めたのが90年代半ば頃だ。

その時から多くのことが変わり、技術ははるか先へと進んだ。現在では、ユーザー追跡はクッキーだけに限られない。実際には、いろいろな方法でユーザーを識別することが可能だ。一番ハッキリした方法は、クッキーに似た識別子を設定することだ。次のやり方は、要求を送ったHTTP­ヘッダから収集することができるPCユーザーによって利用されたデータを活用することである。アドレス、使われたOSタイプ、時間など。そして最後に、ユーザーの行動及び習慣(カーソル移動、サイトのお気に入りセクション、等)によってそのユーザーを区別することができる。

明示的な識別子

このアプローチでは、必要とされるすべてのことが大変にハッキリしている。リソースの二度目以降の訪問の際に確認することができる長い間存在した識別子をユーザー側で保存する。最近のブラウザは、ユーザーに対して透過的にこれを実現させる方法をいくつも提供している。何よりも古い親切なクッキーがそれだ。そして、いくつかのプラグインの特徴はクッキーの機能に近い。例えば、フラッシュのLocal Shared Objects 、あるいはシルバーライトのIsolated Storageである。HTML5もクライアント側でいくつかのメカニズムを持っている。localStorage、File、IndexedDB APIなどである。これらの場所以外に、ユニークなマーカーはローカルマシンまたはメタデータキャッシュのキャッシュされたリソースに保存できる。(Last­Modified、ETag)

また、SSL­接続用ブラウザによって定義づけされているOrigin Bound Certificatesから取得した描画、SDCH辞書に含まれるデータ、これらの辞書のメタデータなどからユーザーを識別することが可能である。一言で言えば、やり方は充分すぎるほどあるのだ。

Cookies

クライアント側でそれほど大きくないあるデータ容量を保存することになった場合、まず一般的に考えるのがクッキーだろう。Webサーバーはクッキーに新しいユーザーの一意識別子を保存しながらそれを設定し、それ以降のすべての要求について、クライアントがその識別子をサーバーに送信する。すべての人気あるブラウザは、クッキーで管理された便利なインターフェースによってだいぶ前から提供されているにも関わらず、ネットにおいてはクッキー管理やクッキーブロックのための外部ユーティリティが溢れかえっているのに、クッキーは依然としてユーザー追跡のために活発に利用され続けている。実は、クッキーをチェックして消去する人は結構少ないのだ。(あなたがそれを最後にやったのはいつだったか思い出してみてほしい)おそらくその主な理由は、たとえば認証に使用することができるような必要な「クッキー」を間違って削除するのを皆恐れているのだろう。一部のブラウザでは、サードパーティクッキーの設定を制限することが出来るのに問題は消えず、ブラウザはちょくちょく、ページコンテンツのロード中にHTTPリダイレクトや他の方法を介して受信されたクッキーを「ネイティブ」だと考えてしまう。後で述べるメカニズムの多くと異なるのは、クッキーを使うことがエンドユーザーにとって透過的なことだ。ユーザーを「指定」するためには、必ずしも別のクッキーに一意識別子を保

存する必要はない。いくつかのクッキーの値から収集することもできるし、又はExpiration Timeのようなメタデータに保存することもできる。したがって、この段階でトラッキングするために特定のッキーが使われているのかどうかを把握することは非常に困難である。

ローカル共有オブジェクト

クライアント側でデータを保存するためにAdobe FlashではLSOのメカニズムが使われる。これはHTTPのクッキーのアナログであるが、最新のものと異なり、テキストデータの短い断片を保存することができるだけでなく、何よりもそのようなオブジェクトの分析とチェックを複雑にする。10.3バージョンまでは、フラッシュクッキーの行動はブラウザの設定とは別に調整されていて、macromedia.comサイト上にあるフラッシュ設定マネージャを訪問する必要があった。(ちなみに今もこのリンクで設定できる) 今日では、コントロールパネルから直接行うことができる。さらに最近のブラウザのほとんどはフラッシュプレーヤーとの密接な統合を保証しており、クッキーや他のサイトのデータを削除するときにLSO削除される。一方、ブラウザとプレーヤーの相互作用はまだそれほど密接ではないので、ブラウザ内の外部クッキーのポリシー設定がフラッシュクッキーにいつも反映するわけではない。(Adobeサイトで手動でオフにする方法を見ることができる)

 

FirefoxでのlocalStorageからデータを削除

Silverlightの分離ストレージSilverlightのソフトウェアプラットフォームは、Adobe Flashとの共通点がたくさんある。フラッシュのLocal Shared Objects のアナログとなるのはIsolated Storageと呼ばれるメカニズムだ。実際、フラッシュと違ってプライバシー設定がブラウザにはまったく縛られない。だからブラウザのクッキーとキャッシュを完全消去した場合であっても、Isolated Storageに保存されているデータはどちらにせよ残る。ただもっと興味深いのは、ストレージがすべてのブラウザウィンドウ(「シークレットモード」で開いた場合を除く)や同じマシンにインストールされているすべてのプロファイルで共有されていることだ。LSOのように、技術的な観点からすると、ここにはセッション識別子を保存するための障害は何も存在しない。しかも、ブラウザ設定を通じてこのメカニズムにアプローチできないことを考えると、このメカニズムは一意識別子用のストレージとしてそれほど広く展開することなかった。

 

どこでSilverlightの分離ストレージを探すか

HTML5とクライアント上のデータ保存

HTML5は、クライアント上で構造化データを保存するための一連のメカニズムである。これに相当するのがlocalStorage、File API、IndexedDBだ。違いはあるものの、これらはすべて、特定のリソースにバインドされたバイナリデータの任意の部分を永続的に保存できるように設計されている。加えて、HTTPやFlashクッキーとの違って、保存されたデータの量に有意な制限はない。最新のブラウザにおいてHTML5のストレージはサイトの他のデータと一緒に位置している。しかし、ブラウザ設定を介してのストレージの管理の仕方を推測することは非常に困難である。たとえば、 FirefoxのlocalStorageからデータを削除するために、ユーザーはoffline website dataかsite preferencesを選択し、everythingと同等の期間を設定する必要がある。さらにもう一つのIE特有の変わった機能は、データがそのデータ保存時に開いているタブの存続期間中のみ存在することだ。これに加えて、上記のすべてのメカニズムは、HTTP­クッキーに適用される制限に従おうとはしない。たとえば、localStorageに記述して、外部クッキーを切った状態であってもクロスドメインフレームを通してlocalStorageから読み取ることができる。

 

Flash Playerのためのローカルストレージ設定

キャッシュされたオブジェクト

皆、ブラウザが速やかに、止まることなく動作することを望んでいる。だから、ブラウザは訪れたサイトのリソースをローカル・キャッシュに保存しなければならなくなる。(二度目以降の訪問でそれらを要求しなくて済むように) このメカニズムは明らかにランダムアクセスのストレージとして使用されるためのものではないのだが、そのように変換することが可能である。例えばサーバーは、ボディ内部の一意識別子を伴ったJavaScriptドキュメントをユーザーに戻し、Expires/max­age=ヘッダに遠い未来を設定することができる。このようにしてスクリプト、そしてそれと共に一意識別子がブラウザのキャッシュに登録される。その後、既知のURLからスクリプトのダウンロードを要求し、ウェブ上の任意のページからアクセスすることができる。もちろんブラウザは、スクリプトの新しいバージョンがあるかどうか、定期的にIf­Modified­Sinceヘッダを使って確認する。しかし、もしサーバーがコード304(Not modified)を返してきたら、キャッシュされたコピーが永遠に使用できるようになる。他にキャッシュの面白いところは何か?ここではHTTPクッキーのような「サードパーティ」のオブジェクトという概念はない。同時に、キャッシュを無効にすると真剣にパフォーマンスに影響を与えることができる。いくつかの識別子/ラベルを保存しているリソースの自動検出は、ウェブ上で良く見られるJavaScriptドキュメントの複雑さや容量の大きさに起因して困難になる。もちろんすべてのブラウザは、ユーザーが手動でキャッシュを消去できるようになっている。ただ、経験(自分を例にする)から言うと、もしその作業をしているとしても、そんなに頻繁には行わない。

ETagとLast­Modified

キャッシュが正しく動作するには、ドキュメントのより新しいバージョンがあることをブラウザが何とかサーバーに通知する必要がある。標準のHTTP/1.1は、この問題を解決する2つの方法を提供している。一つ目は、ドキュメントの最終変更日に基づいて、二つ目は、ETagとして知られている抽象的識別子に基づいた方法である。ETagの場合、サーバーは文書と一緒にある応答ヘッダのいわゆるversionタグを最初に返す。指定されたURLへの二度目以降の要求の際、クライアントはIf­None­Matchヘッダーを介してローカルコピーに関連付けられた値をサーバに伝える。このヘッダーで指定されたバージョンが有効であれば、サーバーはHTTPコード304(Not modified)で応答し、クライアントが安全にキャッシュされたバージョンを使用することができる。その逆の場合、サーバーは新しいETagを伴ったドキュメントの新しいバージョンを送ってくる。このアプローチはどこかHTTPクッキーに似ている。サーバーはクライアントの任意の値をあとで計算するためだけにその値を保存する。Last­Modifiedヘッダを使ったもう一つの方法は、のちのちIf­Modefied­Sinceヘッダ内でクライアントによってサーバーに送られる日付文字列内のデータの少なくとも32ビットを保存することができる。興味深いのは、ほとんどのブラウザは、この列が正しい形式で日付を表示する必要がないことだ。キャッシュされたオブジェクトを介してユーザ認証をする場合と同様、クッキーとサイトデータの削除はETagとLast­Modifiedにまったく影響を与えず、キャッシュをクリアにすることによってそれらを取り除くことができる。

 

サーバーはクライアントにETagを返す

HTML5 AppCache

Application Cacheは、ユーザーがオフラインの場合でも、サイトのどの部分をディスクに保存し、利用できるようにしなければならないかを指示することができる。キャッシュのアイテムを保存し、取得するためのルールを設定するマニフェストを使ってすべては管理される。今までのキャッシュのメカニズムと似ているのは、マニフェスト内部と同じように、無期限に保存されているリソース内でAppCacheもユーザーに依存した一意なデータを保存することができることだ。(従来のキャッシュとの違いは、キャッシュからのリソースがある程度時間が経つことで消去されるところ) AppCacheは、HTML5でのデータ保存のメカニズムとブラウザの従来のキャッシュとの中間の値を占める。一部のブラウザでは、クッキーとサイトデータを削除する際にクリーニングされるが、その他は、閲覧の履歴やキャッシュされたすべての文書を削除するときだけだ。

SDCH­辞書

SDCHは、 サーバーによって提供される辞書の使用を基本に、Gzipやdeflateよりも高い圧縮レベルを達成することができたGoogleの圧縮アルゴリズムである。実は普段ウェブサーバーは、ページのヘッダ/フッタ、内蔵JavaScript / CSSなど、あまりにもたくさん繰り返される情報を与えている。このアプローチだとクライアントは、あとに続く応答(同じヘッダー/フッター/ JS / CSS)に表示されることがある文字列を含む辞書ファイルをサーバーから受け取ることになる。その後、サーバーは辞書内のこれらのアイテムを参照することができ、クライアントはそれに基づいて自分でページを収集するようになる。お分かりのように、これらの辞書は、Avail­Dictionaryヘッダ内のサーバーへクライアント自身で返された辞書のIDにも、コンテンツ自体にも直接置くことのできる一意識別子を保存するために、簡単に利用することができる。そしてその後で、ブラウザの従来のキャッシュの場合と同様に使用しようする。

その他の保存メカニズム

しかし、方法はこれで全部ではない。JavaScriptとその同類の仲間を使用して、すべての閲覧履歴やサイトデータを削除した後でさえ存続できるような形で一意識別子を保存し、取得することができる。その方法のひとつは、保存のためにwindow.nameまたはsessionStorageを使うことだ。たとえユーザーがすべてのクッキーとサイトデータを削除しても、追跡サイトが開かれたタブを閉じなかったら、二度目以降のエントリーの際、サーバーによってトークンが受信され、ユーザーは再びそれについて既に収集されたデータに関連付けられてしまう。同じような動作がJSでも観察され、開いているあらゆるJavaScriptコンテキストは、ユーザーがサイトデータを削除した場合でも状態を保存する。この場合、このようなJavaScriptは表示サイトに属するだけでなく、iframeやウェブワーカー内に潜むことができる。たとえば、iframeにダウンロードされた広告は閲覧履歴やデータの削除にはまったく関係なく、JS内のローカル変数に保存されたIDを使用し続ける。

プロトコル

JSや色々なプラグインの利用、キャッシュに関連するメカニズムに加えて、最新のブラウザでは一意識別子の保存および取得を可能にするいくつかのネットワーク機能がある。

1. Origin Bound Certificates(別名Channel ID) ­ クライアントを識別するHTTPSサーバへの永続的な自己署名証明書。それぞれの新しいドメインのために、後に開始する接続に使用する別の証明書が作成される。サイトはユーザー追跡のためにOBCを使用することができ、その際クライアントに気づかれるような何かしらのアクションを実行しない。一意識別子として、正当なSSLハンドシェイクの一部のようにクライアントが提供する証明書の暗号ハッシュを取得することができる。

2. 同様に、TLSにも2つのメカニズムがある。完全なハンドシェイクを実行せずに、中断したHTTPS接続をクライアントによって再開することができるsession identifiersとsession ticketsである。これは、キャッシュされたデータを使用することによって達成される。これら2つのメカニズムは、一人のクライアントからの要求をサーバが短時間で識別することを可能にする。

3. 事実上、すべての最新ブラウザでは名前解決のプロセスをスピードアップするための独自の内部DNSキャッシュを実装する。(場合によっては、DNS rebinding攻撃のリスクを減らす)。このキャッシュは少量の情報を保存するために簡単に使用することができる。例えば、もし16個のIPアドレスを持っている場合、8~9個のキャッシュされた名前でネットワーク上の各コンピュータを識別するのに十分であろう。しかし、このアプローチは、ブラウザの内部DNSキャッシュのサイズによって制限され、名前解決においてDNSプロバイダとの衝突につながる可能性が潜在的にある。

マシンの特徴

ここまで見てきたすべての方法は、ユーザーが二回目以降の要求のためにサーバーに送信される何らかの一意識別子を設定するということが基本になっている。他に、クライアントのマシンの特徴の要求または測定によるユーザー追跡のあまり目立たないアプローチがある。単独だとそれぞれが得た特徴は情報の数ビットだが、もしいくつかを組み合わせた場合、それらは独自にインターネット上のあらゆるコンピュータを識別することができる。しかもそのような追跡を見分けて防止するのは非常に難しいことから、この技術は様々なブラウザやプライベートモードを使用しているユーザーを識別することができてしまう。

ブラウザの「描画」

トラッキングの最も簡単な方法は – 各オプションが別々だとそれぞれは反応しないのに、それらが一緒になると各マシンに固有の値を形成するといった、ブラウザ環境で利用可能なオプションのセットを組み合わせることで識別子を構築することだ。

∙ User­Agent。ブラウザ、OSのバージョン、およびインストールされたアドオンのいくつかを配布。User­Agentが見つからないか “本物”であるかをチェックしたい場合、実装された、あるいはリリース間で変更された特定の機能をチェックすることでブラウザのバージョンを確認することができる。

∙ クロックシステム。もし、システムがサーバー側の時間とクロックを同期していない場合、クロックはJavascriptを使ってマイクロ秒まで正確に測定することができるシステムタイムとリアルタイムの間のユニークな違いを生じさせ、遅かれ早かれ、進んだり遅れたりし始める。実際に、NTPサーバーと同期する場合であっても、どちらにしても測定することができるような小さな変化が生じる。

∙ CPUとGPUに関する情報。これは直接(GL_RENDERERを通じて)か、JavaScriptで実装されたテストとベンチマークを通じて得ることができる。

∙ 画面解像度とブラウザウィンドウのサイズ(マルチモニタシステムの場合の第2のモニターのパラメータを含む)

∙ たとえば、getComputedStyle APIを使用して取得したインストールされているフォントの一覧。

∙ バージョンも含めたすべてのインストールされているプラグイン、ActiveXコントロール、BrowserHelper Object などの一覧。navigator.plugins[ ]探索を使って得ることができる。(一部のプラグインはHTTP­ヘッダー内にその存在を配布)。

∙ インストール型拡張機能、およびその他のソフトウェアに関する情報。広告ブロッカーのような拡張機能は、拡張の種類やその設定を決めることができる現在のページに一定の変更を行う。

ネットの「描画」

さらに、ローカルネットワークのアーキテクチャやネットワークプロトコルの設定においても様々な兆候が見られる。そのような兆候は、クライアントマシンにインストールされているすべてのブラウザで見受けられるようになり、単にプライバシー設定または一部のセキュリティユーティリティでそれらを隠すことはできない。次のようなものがそれだ。

∙ 外部IPアドレス。IPv6アドレスの場合、このベクターは特に興味深い。場合によっては最後のオクテットがデバイスのMACアドレスから得られ、したがって異なるネットワークに接続された場合であっても保存することができる。

∙ 発信TCP / IP接続のポート番号。(通常、ほとんどのOSに一貫して選択される)

∙ NATまたはHTTPプロキシの背後にあるユーザーのためのローカルIPアドレス。外部のIPアドレスと一緒になって独自に顧客の大半を識別することができる。

∙ HTTPヘッダ(X­Forwarded­For)から得たクライアントが利用するプロキシ∙サーバの情報。いくつかの可能なプロキシをバイパスする方法で受信したクライアントの実際のアドレスとの組合せでも、ユーザーを識別することができる。

行動分析や習慣

そしてもう一つのやり方は、PCではなく、地域の設定や行動などのエンドユーザーに関連する特性を見ることだ。このような方法も、プライベートブラウジングの場合においての様々なブラウザセッション、プロファイル間でクライアントを識別することが可能だ。研究のために常に利用可能である以下のデータに基づいて結論を出すことができる。

∙ 優先言語、デフォルトのエンコーディングおよびタイムゾーン(すべてはHTTP­ヘッダ内にあり、JavaScriptから得られる)

∙ クライアントのキャッシュ内のデータと閲覧履歴。キャッシュの要素は、時間の攻撃により検出することができる。追跡者は、単にダウンロードの時間を計測することにより、人気のあるリソースに関連するキャッシュの長寿命の要素を検出することができる。(時間が予想されるローカルキャッシュからのダウンロード時間を超えた場合、動作をキャンセルする) また、ブラウザの履歴に保存されたURLを抽出することもできるが、そのような攻撃は最新のブラウザではユーザーのちょっとした操作を必要とする。

∙ マウスジェスチャー、キーストロークの頻度および持続時間、加速度計データ ­ これらのパラメータのすべては、各ユーザーに固有である。

∙ サイトの標準フォントの変更とそのサイズ、zoomのレベル、テキストの色、サイズなどの特別な機能の使用。

∙ クライアントによってカスタマイズされたブラウザの特定の機能のステータス:サードパーティクッキーのブロック、DNS prefetching、ポップアップブロッカー、Flashのセキュリティ設定など(皮肉なことに、デフォルトの設定を変更したユーザーは、実際には、自分のブラウザを簡単に識別できるようにしてしまう)これは、表面的に存在する明らかな方法である。もしもっと掘り下げたい場合は、さらに方法を思いつくことができる。

まとめ

ご覧のように、実際には、ユーザーを追跡するためのさまざまな方法がある。それらのいくつかは、実装の間違いや欠落の結果であり、理論的には補正することが可能となる。他の方法となると、コンピュータネットワークの原理やウェブアプリケーション、ウェブブラウザを完全に変更をしないことには、実際に根絶することは不可能である。何らかの技術で対抗できるのは、キャッシュやクッキー、または一意識別子を保存することができる他の場所をきれいにすることだ。他は、ユーザーには完全に気づかれないように作動し、それらからの防御はまず上手くいかない。したがって最も重要なことは、プライベート閲覧モードでのネットサーフィンであろうと、あなたの動きはどちらにしても追跡されていることを覚えておくことだ。390870_3121815863768_2033907823_n