2017年8月10日木曜日

SSHでトンネルを掘りVPS経由で実家のPCへVNC接続する(その1)

先日TeamViewerの乗っ取り被害に遭った。7月26日の朝、出かける前にふと目に入ったメインで使っているWindowsデスクトップPCの液晶画面が、なんだか壁紙が消えた状態なのを発見。まさかとは思ったがタスクトレイのTeamViewerを終了させると壁紙が戻り、血の気が引いた。もつれる手で反射的に回線ケーブルを抜き、しばらく呆然とする。何が起こった?慎重に被害を確認する。と、Amazonサイトの購入履歴が表示されない。すべて消えているようだ。1クリック注文ボタンの横に表示されている支払い方法のアイコンが「VISA」と表示されている。なんだろう?ポイントが目的で、つい先ごろ「Amazonマスターカードゴールド」作ったところだ。Amazonの支払いはそれを唯一の方法に設定している。VISAは過去にも登録したことがない。アカウントメニューから支払い方法のページへ進むと、無数の他人名義のクレジットカードが登録されている…戦慄。口がカラカラに乾く。ほとんどはカード番号だけの表示だったが少なくとも二件は日本人と思われるローマ字姓名が表示されており、そのうちの一つの「VISA」が現在の支払い方法に指定されていた。Amazonアカウントは何度操作してもパスワード変更ができない。取り急ぎAmazonカスタマーサービスの電話番号を調べて連絡。侵入のあったその日の内に既にAmazon側でセキュリティアラートが上がっており、幸いなことに発送は保留状態でアカウントもロックされているという。
 TeamViewerのログを確認すると、侵入時刻は2日前の7月24日の午前4時18分~5時40分頃。さらに2日前の未明にも数分間接続されている。TeamViewerに登録していた残りの2台のノートPCはオフラインだったかWindowsをログアウトしていたようで荒らされた形跡は無い。実家のノートPCはTeamviewerを使ってシャットダウンし家人に触らないように伝える。Wi-Fiでつながっていたもう一台のノートPCもネットワークから切り離す。TeamViewerのパスワードは変更したものの、あまりにもずさんなパスワードリセットの手順に驚愕。すぐにアカウント自体も削除し、TeamViewerもアンインストールする。だが今さら消したところでもう遅い。愚かにもデスクトップにショートカットを置いていた秘密の平文メモファイル・゚゚(ノД`)が盗まれたことを想定せざるを得ない。これには利用している数十のサービスのログインIDとパスワードが記入されている。情けない。一刻を争う緊急事態だ。
 飯も食わず便所にも行かずぶっ通しで作業を続ける。金融サービス、GoogleやYahooなどのポータルサイト、あらゆるショッピングサイト、VPS(レンタルサーバー)や使ってもいないFacebookやSNSなど過去にアカウント登録したことのあるすべてのサービスをチェックする。アカウントが有効ならパスワードを変更する。利用していないサービスは退会手続きをする。二段階認証の設定が可能なものはニコニコ動画に至るまですべてそれを設定する。深夜までかかって一通りの作業を終えた。結果、Amazon以外に異常を見つけることはできなかった。デスクトップに侵入された以上、バックドアがインストールされている可能性がある。「トレンドマイクロ オンラインスキャン」をダウンロードし、オフライン状態で全てのドライブに対してフルスキャンを行う。TeamviewerがインストールされていなかったLAN内PCもWindows Defenderとトレンドマイクロでスキャンを行う。すべてのドライブのスキャンを終えるのに3日間を要したが、それらしいものは検出されなかった。やられたメインのデスクトップPCの再インストールは行わず、ひとまずオンライン状態に復帰させることに。だがしかし、発見されなかったバックドアは見事に常駐していた。
 …数日後。第二の戦慄が。SSHトンネリングを使いVPS経由でデスクトップPCからノートPCへVNCを接続し、リモートデスクトップ操作をする実験を繰り返している最中だった。横目で見ていたデスクトップPCの画面に突然Chromeブラウザが起動し、ものすごい速さでカーソルが奪われアドレスバーに「あAa」という文字とバックスペースが次々と打ち込まれている。反射的にルーターからケーブルをひっこ抜く。その間約1秒。今入られた! 心臓がバクバクする。何が起こった!?
今まさにトンネルを張る実験をしていた。確かにVNCはインストールした。今の実験で入られた?? 万一VPSに侵入されたとして、すべての仕組みがバレたとしても、ここまで入る方法があり得るだろうか? 今の瞬間はトンネルも張っていなければVNCサーバーも起動させていない。2台のPC画面と今引っこ抜いたケーブルの先端を見つめながら30分程呆然とする。どう考えても今やっていた実験を関連付けることはできない…バックドアだ。
タスクマネージャーを起動してみる。「C:\INFO\Ser.exe」なるものが起動している。中国語のDescriptionが表示されている。露骨に完全にもうこれだ。3日かかったフルスキャンは何だったのか。最初にタスクマネージャーを確認するべきだった。不審なプロセスを終了させ、イーサネットアダプタのIPアドレスを通信できないアドレスに設定しケーブルを接続してリンクアップさせる。再びプロセスが上がってくるのかどうか挙動を観察するも、1時間くらい放置しても自動起動される様子はない。スタートアップには登録されているがタスクスケジューラやサービスには登録されておらず、ログイン後にユーザーモードで起動するだけのように見える。C:\INFOフォルダとSer.exeのタイムスタンプを見るとTeamviewerで長時間侵入された時間帯と一致する。数日間このプロセスが起動した状態でネットに接続されていたことになり、その間果たして何度入られたのかは知る方法が無い。AmazonはSMSを使う二段階認証に変更済みだ。ブラウザのパスワードはすべて削除し、必ずログアウトするようにした。「この端末は今後確認しない」のオプションは選択せず、このブラウザからAmazonへログインすれば必ずSMSが送られる。そしてこの数日間は身に覚えのないAmazonからのSMSは届いていない。ということは、危険にさらされていたこの数日間はこのPCのブラウザからAmazonへの不正ログインは試行されていない。今しがた勝手にアドレスバーに入力された文字からして、敵の第一目標がAmazonであるならば、たまたま居合わせたつい今しがたこそが、バックドアから初めて侵入された瞬間だったのではないだろうか。初回侵入された時間帯あたりのタイムスタンプですべてのファイルを検索する。気味が悪いので関連のファイルは後日消してしまいファイル名などは失念してしまったが、C:\に別のフォルダがあり、Ser.exeのログと思われる不思議なサムネイル画像が10個程格納されていた。ブラウザウィンドウの画面キャプチャのようで、横が100ピクセルほどの大きさのため詳細は分からないが、侵入中のAmazonの注文明細ページと思われる画像、自分が開いていたタブと思われるNikonサイトの画像、見覚えの無い中国風の腰痛だの健康グッズのサイトのような画像が数種類。後半はバックドアのダウンロードに使うサイトなのかもしれない。そのほかにいくつかのバイナリやテキストファイルがあり、テキストファイルの一つはBase64でエンコードされた受信メールのようで、From:にAmazonが含まれていたと思う。メーラーが受信する注文メールを抽出したのだろうか。使っているメーラーのThunderbirdのデータファイルの中にもタイムスタンプが該当するものがあった。普段自分では受信時にだけThunderbirdを起動させ、見終わったら終了させている。自分では起動させていない時間帯のタイムスタンプのファイルがあるということは、侵入した犯人がThunderbirdを起動し、注文確認メールを受信・削除する操作を行ったのだろうか。あるいはこのSer.exeが自分でそれを行う仕組みなのだろうか。Amazonのカスタマーサービスへ電話した際に、Amazonからのセキュリティアラートがメールで送信されている旨とその時刻(初回侵入時時間帯の約30分後)を教えてくれたが、その際「もしAmazonからのセキュリティアラートのメールが見つからなかったらまた連絡を」という意味ありげなことを言われた。Amazonからのアラートメールが消される事例があることを示唆しているのかもしれない。そして実際にそのメールは探しても受信トレイやジャンクフォルダには見つけることができなかった。
後にAmazonから受信した注文キャンセルメールによれば、ChromeブラウザがログインしていたAmazonサイトでNintendoやモバゲーなどのゲームプリペイドなど27件・23万円程の注文操作がされていた。Amazonアカウントスペシャリストなる対応部署により、不正操作による注文と変更をAmazon内ですべてキャンセルしてくれたため、今回の件での金銭的被害は無い。だが二次被害防止のためにパスワード変更やウィルススキャンに要した時間、この後おこなうメインPCの再インストールと復旧作業の負担、それに加え精神的ダメージは大きい。だがしかし、発見がもっと遅れていたり侵入者が日本人だったとしたら、各種サービスのログインIDとパスワードをメモした平文ファイルへのリンクがデスクトップに丸出しでネットバンキングや証券口座を操作することも可能な状態であったことを考えると、これが被害のすべてだとしたら幸運だと言うしかない。
 TeamViewerの二段階認証の存在を知らず、設定していなかったのが致命的だった。二段階認証を設定していない場合のTeamViewerアカウントのパスワードリセットの方法はおそろしく簡単で、ログインページでメールアドレスを入れてボタンを押すだけで、パスワードリセットのメールがアドレス宛に平文で送信される。届いたメールの本文内にある長いURLにアクセスするだけで、新しいパスワードを入力することができる。この方法は極めて脆弱と言える。今回の侵入被害を確認した直後、自分ではTeamViewerのアカウントにはログインすることができず、パスワードは変更されているようだった。実際に自分でパスワードリセットのボタンを押してみると一度目ではパスワードリセットのメールを受信することはできず、二度目で中国語バージョンのパスワードリセットメールが送られてきた。中国語のメールにあるURLをクリックするのは勇気がいるが、事件の二週間ほど前に日本語バージョンの同じフォーマットのパスワードリセットメールを二度受信していたので、今回のこれが何であるかはわかる。心当たりのないパスワードリセットのメールを受信した際には何が起こっているのかがピンと来ず無視しただけだったが、それらがなぜ届いていたのかが今やっと理解できた。自分でパスワードを変更した後、更にもう一度パスワードを変更しようとしたところ、パスワードリセットのメールを受信するまでは3回ボタンを押す必要があった。TeamViewerの乗っ取り被害は去年から多発しているそうだが、犯人の手口は流出した他のサービスのアカウントリストやパスワードの総当たりによる突破だけではなく、TeamViewer.comから送信されるパスワードリセットのメールの一部を不正な経路へ転送させてキャプチャしているのではないかと思う。

2017年5月23日火曜日

赤外日和

デジカメ用に設計された現代のレンズは赤外線撮影に向いていないので、いつものようにNikkor-UD Auto 20mm F3.5を使用。IR76フィルターでは赤外指標を使ってピントを補正。SC72フィルターは通常撮影と同じピント位置で撮影している。SC72・IR76とも現像時に雲やアスファルトの舗装面などをポイントしてホワイトバランスを補正。SC72では可視光成分が多く、天然色に近いカラフルな画像になるが、赤色の物体は黄色にシフトして見える。

フィルター無し
SC-72フィルター使用
IR-76フィルター使用
フィルター無し
IR-76フィルター使用
SC-72フィルター使用
フィルター無し
SC-72フィルター使用
IR-76フィルター使用
フィルター無し
IR-76フィルター使用
SC-72フィルター使用
フィルター無し
SC-72フィルター使用
IR-76フィルター使用
フィルター無し
IR-76フィルター使用
SC-72フィルター使用
フィルター無し
SC-72フィルター使用
IR-76フィルター使用
共通データ:Nikon D800E, Nikkor-UD Auto 20mm F3.5
ISO800 F8 5~8秒(SC-72)
ISO800 F8 30秒(IR-76) 現像時 露出補正+1

Gifアニメーション画像

2017年1月23日月曜日

Little Planet 2

日曜日の秋葉原にて。歩行者天国を往復して、数か所でパノラマ写真を撮影してみた。14ミリレンズ横位置で上下3枚x水平4枚=12枚の画像からパノラマ画像を合成した。カラフルなビルに囲まれた賑やかな画像が出来上がった。数秒置きに撮影された複数の画像セットから一枚のパノラマ画像を作成しているため、画像のつなぎ目では周囲を歩いている人々の姿が幽霊のように上半身だけや足元だけの人影となって写っている。これを不自然だと思えば修正することもできるが、画像を機械的に生成することは写真という技術の使命であり、機械的な手順で生成するステッチング画像に現れるこの現象も、同じ技術の延長線上にあると考えれば、これは受け入れられるべき自然な描写であると考えるのが本来的にも自然であるように思う。撮影時にアクティブDライティングをHPにしているので、暗部が持ち上げられたやや人工的な階調になっている。


こちらは1枚目と同じ元画像のセットから上下方向を上から2段のみ使用し、8枚の画像から合成。

Little Planetと手順はほとんど同じだが、パノラマ画像の上下を回転させずに極座標フィルタを適用するとこうなる。この画像加工方法には別な名前があるのだろうか。





画像左の女性と画像下中央の後姿の女性は同一人物で、スマホのシャッターを押してしてあげた後に、末広町方面へ向かっている。







14mmレンズを横位置で使う場合の水平画角は81度。画像をくっつけるためのコントロールポイントをHuginで検出させるために画角の3分の1くらい重複させているため、上下を3枚で撮影すると天頂から足元までカバーするには少し足りない。上下の画角は約135度で、ビルのてっぺんが仰角67.5度以上の位置にあれば画像の上からはみ出してしまい、極座標フィルタを適用するとな下のように変な画像になってしまう。


今回までは横位置で上下3段・水平は4枚だったが、今度やるときは縦位置で上下は2段・水平は6枚でやってみよう。縦位置で上下3段x水平8枚にすればもっときれににつながると思うので、1コマ24枚からの合成も試してみようと思う。

2016年12月31日土曜日

Little planet

14ミリレンズの画角は104度なので、90度ごとに4枚撮るだけの簡単な操作で360度のパノラマ画像を撮影することができる。Little Planetを作成する場合、縦方向の画像は必ずしも180度分必要ではないが、中央部のヘソをきれいにつなげるには真下の足元まで撮影しておく必要がある。

14ミリレンズで周囲4枚撮影した画像から合成。上下方向は水平方向に1枚のみで、14ミリレンズの垂直画角(81度)分しか含まれていない。

垂直方向を3回撮影し12枚の画像から合成。下方向が完全に真下まで撮影されていなかったため、ヘソ部分がつまんだように不自然になってしまった。

垂直方向を3回撮影し12枚の画像から合成。真下まで撮影したので中央部はきれいにつながっていて、三脚のパイプが写りこんでいる。

上下方向は2回で合計8枚の画像から合成。ズームリングの位置がずれてしまい18mm位置で撮影されていて画角が不足していたが、ぎりぎり合成できた。合成画像の一部に穴が開いてしまったので修正した。

垂直方向を3回撮影し12枚の画像から合成。

1枚目の画像のように、垂直方向を足元まで含まない画像の方が球体が小さくなり周囲に飛び出す構造物のニョキニョキ感が強くなって面白い画像になるが、中央のヘソは不自然になる。また、元画像を足元まで撮影した場合、中央部のヘソをつまんだ感じはなくなるが、三脚のパイプや自分の影が写りこんでしまうので、いずれにせよ中央のヘソ部分をどうごまかすかは工夫が必要になる。また、Little Planet画像の四隅に放射方向にスジが現れたり、2枚目の画像のようにシャボン玉のような画像になってしまう場合があるが、天頂付近に雲があるとこうなる。撮影時に注意するか、パノラマ画像を後、極座標フィルタを適用する前に画像修正で天頂付近の雲を消しておくのが良いかもしれない。

2016年11月21日月曜日

小雪(しょうせつ)

昨日は日中に汗ばむ程の陽気だったが、今日あたりはめっきり寒くなった。明日は雪が降る地域もあるという。






Nikon D800E, Ai Micro-Nikkor 55mm F3.5
ピクチャーコントロール[LS]  ISO400-1600
Capture NX-D Ver.1.4.2

AF-S Micro NIKKOR 60mm F2.8G EDも持っているが、ピント面前後の色収差が気になる場合があり、古典的なマイクロらしい素直で端正な写りを求めてこの古いAi Micro-Nikkor 55mm F3.5をつい持ち出してしまう。後ボケに癖があり、中距離では背景がうるさくなる場合があるが、それを除けば実用上は無収差と言ってもよいくらい素直で、どんな天候でもどの絞りでもコントロールし易く、思った通りに写ってくれる。最新レンズに比べると発色はやや渋めだが、このレンズは季節の色をそれらしく紡ぐ。

2016年4月3日日曜日

皇居乾通りと東御苑 AF-S NIKKOR 35mm f/1.8G EDにて

皇居の乾通りが一般公開されたので見物に行く。ここは紅葉や桜の季節などに一般通行が可能になる。坂下門で荷物検査とボディチェックを受け、大勢の人々といっしょに皇居の中をズルズル歩き抜ける。通りの両側に石垣や池などの景色が広がるが、天候も悪く差ほど見事でもない。このイベントの見どころと言えば、DJポリスやボディチェックなどの警備体制の面白さくらいだろうか。去年12月には、携帯電話会社が設置する移動基地局が見られたが、今回は出ていなかったようだ。



最近手に入れたAF-S NIKKOR 35mm f/1.8G ED。画面周辺まで十分な解像力を得るにはF8まで絞る必要がある。
東御苑 展望台より
Nikon D800E, AF-S NIKKOR 35mm f/1.8G ED, ISO200, F8

大手門付近
Nikon D800E, AF-S NIKKOR 35mm f/1.8G ED, ISO200, F8

共通データ
Capture NX-D
ピクチャーコントロール[LS]
ゆがみ補正:なし, 倍率色収差補正:あり, 軸上色収差補正:なし, ヴィネットコントロール=50
ピクチャーコントロールの輪郭強調=0
アンシャープマスク 半径=2, 適用量=100, しきい値=0