SSブログ

映画「永遠の0」 [雑談]

映画の永遠の0を観ました。



























小説と比較してゼロ戦の映像が入るため、かなり迫力がありました。空母や空中戦などはかなり良かったと思います。




原作に基づいた宮部久蔵の生きることへの執着心は、かなり再現されていたと思います。

それなのに、映像や演技を加えて観ても、やはり生きることへの執着心が無くなった心情が理解できませんでした。


終戦間近には特攻に行きたくなかった人が大勢いたと思います。家族を守るため、後世の国を守るために不本意ではあったけれど、自分なりに納得して行った人がほとんどだと思います。

それだけに、もともと死にたくないと言っていた宮部久蔵が、特攻に志願し、助かる可能性が大いにあった故障機を交換し、大石氏に託した想いも理解できません。

生きたいという想いも家族のため、というのは、至極当然な感情であり、周りの反対や軽蔑の眼差しを受けながらもその想いを貫こうとしたのであるため、もっと強い理由がなければ死にに行くという感情に変化する理由が不明確だと思いました。



主人公役の岡田准一氏は、かなりいい演技をしていたと思います。


他の、三浦春馬氏、吹石一恵氏、井上真央氏、いずれもイマイチの演技力でした。

井上真央氏の演技が良かったという人もいるようですが、私には全然でした。



泣けるとか、感動する、とかの触れ込みや書き込みを見たため、タオルを取り出しやすいようにカバンから取り出しやすい位置に置いて観ましたが、どこが?泣ける?と思ってしまいました。


泣ける人は、どこを理解して泣いているのでしょうか?

宮部久蔵の心情の変化が理解できたのでしょうか?理解しなくても泣けるのでしょうか?




邦画は嫌いなのですが、評判なので観に行きましたが、やっぱりなぁと思ってしまいました。



邦画が好きでよく観るという人とは、映画についてそもそも意見が合いませんが、今回の映画も良かったという人とは意見が合わないかなと思います。



同じ戦争映画でもプライベートライアン。あれは、ストーリーは全然ダメだったが、戦争映画として観ると本当にすごいと思いました。
リアリティが半端ない。

ストーリーがダメなのは同じなのに、俳優陣の演技や道具の造りであれほど異なるとは。
やはり予算がものをいうのだろうか?

小説「永遠の0」 [本]

小説「永遠の0」を読み終わった感想。



















主人公である宮部久蔵がなぜ特攻を選択したのか、この肝心な部分が最後まで理解できませんでした。

想いを託した青年には確かに飛行訓練中に助けられましたけど、あれだけ生きることに必死だった想いが、その青年に託すという想いに変化してしまうことが理解できませんでした。

この部分がどうしても理解できないため、私の中では中途半端なストーリーに感じました。

また、宮部久蔵の妻だった人が知らない人に助けられた話、やくざに囲われた話は、不要に感じました。

全体的には、史実に基づく部分は非常に描写が細かく、一部フィクションが入っているとはいえ、かなりイメージすることができ、その意味では良かったです。

ただ、上層部に対する視点が一方的過ぎるのと、靖国で会おう、みたいな部分や特攻に行った青年たちの想い、遺書等の史実は描写されていなかったのは、少し物足りない気がしました。



この本が売れているのは、良く分かりません。そんなに素晴らしい内容とは思えないし、流れも良くないです。


65点/100点です。

PHPでUnixtime変換 [プログラム]

ずっと昔にPerlでUnixtime変換を書いていました。
http://jemsec.blog.so-net.ne.jp/2005-07-04

なので、PHPで書いてみました。

Unixtimeを時刻に変換
>php -r "echo date('Y/m/d H:i:s', 1394203709) . PHP_EOL;"
2014/03/07 23:48:29

文字列をUnixtimeに変換
>php -r "echo strtotime('2014/03/07 23:50:00') . PHP_EOL;"
1394203800

Baidu IME パート2 [ツール]

もう少し詳しく、Baidu IMEを追っかけてみました。


対象ソフトウェア(2014年2月11日現行バージョン)
Baidu IME 3.5.2.17
2014年1月24日リリース


■インストール~起動までの流れ
インストール時に
CoCreateGuid
を呼び出しており、Windows APIを用いてGUID(UUID)を生成している。
CoCreateGuidは、内部でRPCRT4のUuidCreateを呼び出している。

GUIDは以下のファイルに保存される。
C:\WINDOWS\system32\baidujp20.cfg

このファイルは、インストール中は、GUIDのみ保存していたが、インストール後、以下の内容が保存された。
[USER]
GUID_FOR_LOG={96199E8A-BA9C-4B42-A465-961BFAC56486}
Install_Times=1
GUID={96199E8A-BA9C-4B42-A465-961BFAC56486}
install_time=2014-02-11 01:47:59
[settings]
path=C:\Program Files\Baidu\IME\3.5.2.17
connect_time=600
[url]
upload=http://sync.ime.baidu.jp/cgi-bin/getlog.cgi
uploadText=http://sync.ime.baidu.jp/cgi-bin/getmsg.cgi
[version]
app_ver=3.5.2.17
dict_ver=3.5.2.17



この作業+最新版確認の通信を行った後、インストールをするかどうかの画面が表示される。

インストール中(設定ウィザード表示前)に基本情報を送信する。

インストール直後(設定ウィザード表示後)に最新版確認をおこなうために、あるいは、インストール完了情報のためにデータを送信する。

その後、すぐに辞書をダウンロードする。

起動時に基本情報を送信する。

一定時間経過後に最新版を確認するために送信する。



■クラウド機能をOn
入力を行うごとに接続を行うが、確定情報は送信されない。
また、以前確定した情報は送信する場合としない場合がある。



■バグ?
一定時間経過後に最新版を確認するためにダウンロードしようとしたファイルを、プログラムではなくダミーの文字列にすると、以下のようにクラッシュする。
baidu-ime-02.PNG


また、ログ機能をOnにしても確定データ等は送信されず。



■UUID
UUID(MSではGuid)は、上記のとおり、CoCreateGuidを用いて生成しているため、UUID ver.4又はver.5であると思われます。
以下は、2回インストールした際の値であり、全く異なりました。

1回目
96199E8A-BA9C-4B42-A465-961BFAC56486

2回目
577AC2D1-7CA6-4163-8AAD-9DF0C610D1C4




■通信
Base64で送ったり、そのままUTF-16で送ったりする場合があり、マチマチなところが多々ある。

User-Agentもおそらくハードコーティングされていると思われます。

表示が上手くできていませんが、コピー&ペーストをすれば全部読めます。

時期ドメイン名IPMethod、Path、QueryUA備考(内容)
インストール前update.ime.baidu.jp119.63.197.130日本GET /pre_install.htmlMozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)-
インストール中
(設定ウィザード表示前)
sync.ime.baidu.jp119.63.197.171日本POST /cgi-bin/get_install_msg.cgiMozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)type=install_new|||partnerID=|||UserID={96199E8A-BA9C-4B42-A465-961BFAC56486}|||install_time=2014-02-11 01:47:59|||app_ver=3.5.2.17|||old_ver=|||
インストール後
(設定ウィザード終了後)
update.ime.baidu.jp119.63.197.130日本GET /finish_install.htmlMozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)-
インストール後
(設定ウィザード終了後)
download.ime.baidu.jp119.63.197.131日本GET /sub-dic/v3/cell_dict.xmlMozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)-
インストール後
(設定ウィザード終了後)
download.ime.baidu.jp119.63.197.131日本GET /sub-dic/v3/girlpower.btodMozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)-
インストール後
(設定ウィザード終了後)
download.ime.baidu.jp119.63.197.131日本GET /sub-dic/v3/2013SummerAnimation.btodMozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)-
インストール後
(設定ウィザード終了後)
download.ime.baidu.jp119.63.197.131日本GET /sub-dic/v3/SummerKaomoji.btodMozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)-
インストール後
(設定ウィザード終了後)
download.ime.baidu.jp119.63.197.131日本GET /sub-dic/v3/stars.btodMozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)-
インストール後
(設定ウィザード終了後)
download.ime.baidu.jp119.63.197.131日本GET /sub-dic/v3/2013AutumnKaomoji.btodMozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)-
インストール後
(設定ウィザード終了後)
download.ime.baidu.jp119.63.197.131日本GET /sub-dic/v3/2013AutumnNewAnimation.btodMozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)-
インストール後
(設定ウィザード終了後)
download.ime.baidu.jp119.63.197.131日本GET /sub-dic/v3/ZipCode.btodMozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)-
起動時sync.ime.baidu.jp119.63.197.171日本POST /cgi-bin/getmsg.cgiMozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)Base64のUTF-16で次の内容が送信
[2014-02-11 01:51:14] USER={96199E8A-BA9C-4B42-A465-961BFAC56486}|||app_ver=3.5.2.17|||dict_ver=3.5.2.17|||install_time=2014-02-11 01:47:59|||enable_default_ime_check=1|||enable_use_table=1|||sns_enable_use=1|||enable_skinnewer=1|||enable_joinadvance=1|||skin_name=default|||first_use_time=2014-02-11 01:51:14|||DefInputLang=1|||
クラウド機能を
Onにして起動時
sync.ime.baidu.jp119.63.197.171日本Base64のUTF-16で次の内容が送信
POST /cgi-bin/getmsg.cgi
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)[2014-02-11 01:51:14] USER={96199E8A-BA9C-4B42-A465-961BFAC56486}|||app_ver=3.5.2.17|||dict_ver=3.5.2.17|||install_time=2014-02-11 01:47:59|||enable_default_ime_check=1|||enable_use_table=1|||sns_enable_use=1|||enable_skinnewer=1|||enable_joinadvance=1|||skin_name=default|||enable_cloud_input=1|||first_use_time=2014-02-11 01:51:14|||DefInputLang=1|||
クラウド機能を
Onにして入力時
cloud.ime.baidu.jp119.63.198.161日本GET /py?py=%E3%81%BE,&ol=1Mozila/4/0 (compatible: MSIE 6.0; Windows NT 5.1)
クラウド機能を
Onにして入力時
cloud.ime.baidu.jp119.63.198.161日本GET /py?py=%E3%81%BE%E3%81%A3%E3%81%8F,&ol=1Mozila/4/0 (compatible: MSIE 6.0; Windows NT 5.1)まっく
クラウド機能を
Onにして入力時
cloud.ime.baidu.jp119.63.198.161日本GET /py?py=%E3%81%BE%E3%81%A3%E3%81%8F,&ol=1Mozila/4/0 (compatible: MSIE 6.0; Windows NT 5.1)まっく(Enter)
クラウド機能を
Onにして入力時
cloud.ime.baidu.jp119.63.198.161日本GET /py?py=%E3%81%82,&ol=1Mozila/4/0 (compatible: MSIE 6.0; Windows NT 5.1)
クラウド機能を
Onにして入力時
cloud.ime.baidu.jp119.63.198.161日本GET /py?py=%E3%81%82%E3%81%A9,&ol=1Mozila/4/0 (compatible: MSIE 6.0; Windows NT 5.1)あど
クラウド機能を
Onにして入力時
cloud.ime.baidu.jp119.63.198.161日本GET /py?py=%E3%81%82%E3%81%A9%E3%82%8C,&ol=1Mozila/4/0 (compatible: MSIE 6.0; Windows NT 5.1)あどれ
クラウド機能を
Onにして入力時
cloud.ime.baidu.jp119.63.198.161日本GET /py?py=%E3%81%82%E3%81%A9%E3%82%8C%E3%81%99,&ol=1Mozila/4/0 (compatible: MSIE 6.0; Windows NT 5.1)あどれす
クラウド機能を
Onにして入力時
cloud.ime.baidu.jp119.63.198.161日本GET /py?py=%E3%81%82%E3%81%A9%E3%82%8C%E3%81%99,&ol=1Mozila/4/0 (compatible: MSIE 6.0; Windows NT 5.1)あどれす(Enter)
最新版チェックupdate.ime.baidu.jp119.63.197.130日本GET /cgi-bin/get_update_info.cgi?id=%7B96199E8A-BA9C-4B42-A465-961BFAC56486%7D&ver=3.5.2.17&os=win%205.1.2600&input_stype=2&partner_id=&dict_ver=3.5.2.17&is_def_ime=1&user_type=1&service_status=4Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)この時は、USER=ではなく、idとなっているが、UUIDである。id={96199E8A-BA9C-4B42-A465-961BFAC56486}


Baidu IME [ツール]

まとめサイト
Baidu IMEまとめサイト


去年末にBaidu-IMEが騒がれており、その後何度かアップデートがされたもようです。

そこで、現行バージョン3.5.2.17を調べたところ、インストール時に
update.ime.baidu.jp
sync.ime.baidu.jp
にアクセスを行い、更新情報及び辞書データを受信しようとしていました。


また、起動時、再起動時にもアクセスをしていました。
その際に、UUID(マイクロソフトではGUID)を送信していることを確認しました。
以前はどうやらSIDでしたが、UUIDに変更されたようです。

ただし、正規のAPIを使って取得したUUIDなのか、独自の方式なのかは不明でした。

2回インストールを行って、2回ともこの値は、全く異なる値だったので、インストール時に生成していると思われます。


クラウド機能をOnにするとデータがSSL通信で行われていましたが、通信時に上記のUUIDやSID、インストールファイルパス等は送信されておらず、py=に文字列、ol=1が送信されているのみでした。
確定した文字も送信していませんでした。

プリンタ [製品]

2009-11-06に購入したプリンタiP4600が壊れた(T-T)。

4年以上使ってきたら仕方がないか。

パリ1日目 [技術]

パリ1日目
シャルル・ド・ゴール空港(通称CDG)に到着。

パリ市内にはバスで行きました。

市内へのバスは往復が安いです。
券売機があるのですが、往復チケットをクレジットカードでは使えませんでした。


券売機は2台しかなく、混んでいたらなかなか購入できません。

そのため、バスの運転手ならクレジットカードでの決済が可能ですので、乗るバスの運転手に往復チケットを発券してもらいます。

確か片道が17ユーロで、往復なら29ユーロなので、往復の方がかなりお得です。
#2013年12月のユーロは1€=146円でした。


バスの詳しい乗り方は、こちらのページが詳しいです。
http://paris.yuru-lilas.com/airport/airport_city/airfrance_bus.html


往復チケットの帰りの半券(レシートみたいな紙)をくれるので失くさないように。


バスは、この券売機のそばに何分後というのが表示されているので、それを見れば次のバスの発車時刻が分かります。



今回使ったホテルは
Hotel Pullman Paris Montparnasse(プルマンホテル モンパルナス店)
でした。
ホテルへのリンク


このホテルは空港から4番バスの停留所の前なので、雨が降っていても走れば少ししか濡れない場所にあります。

また、このホテルは、13号線のGaite(ゲーテ)駅、4号線、6号線、12号線、13号線のMontparnasse Bienvenue(モンパルナス・ビヤンヴニュ)駅が近くにあり、かなり交通の便が良いです。


ホテル:Hotel Pullman Paris Montparnasse
  • 無線LANインターネットが無料で使える。ただし、メールアドレスの登録が必要で、容量も1日200MBまで。
  • 朝食はJust Inというレストランで食べられますが、25ユーロと高くそれほど豪華ではないため、近くのパン屋でパンを買った方が安い。
  • 低階層と高階層のエレベータが異なるので注意。
  • 中心地から少し外れており、オシャレな外観、内装ではないが、アメリカンタイプのオーソドックスなホテルで使用しやすかった。
  • エッフェル塔が見える側と見えない側がある。
  • 冷蔵庫のコーラ等は6ユーロもする。
  • すぐ近くにMarche franprixという小さなスーパーがあり、食材が購入できる。地図リンク
  • Gaite(ゲーテ)駅、Montparnasse Bienvenue(モンパルナス・ビヤンヴニュ)駅が近く便利。
  • Montparnasse Bienvenue(モンパルナス・ビヤンヴニュ)駅近くにMonoPrixというスーパーがあり便利。
  • 近くにクレープ通りと呼ばれるガレット屋がたくさんある。
  • ホテルのすぐ近くにショッピングアーケード街があり、雨にぬれずにGaite(ゲーテ)駅に行ける。
  • 1階にパソコンがあり無料でインターネットができます。使用時に氏名を入力するだけで使えます。


パリの路線図は手元にあると便利です。
ダウンロード



プルマンホテルの近くにあるモンパルナスタワー
montparnass.png

朝食のために買ったマンゴジュースとサンドイッチ
breakfast.png

試験 [法律]

久しぶりの書込み。


試験に通って、色々な方からお祝いの言葉をいただきました。
嬉しかったです。



関係ないですけど、Jim Hall氏が亡くなったそうです。

パットメセニーとの名演のCDは今も手元にあります。

ご冥福をお祈りします。

Jim Hall氏死去

ラスベガスお役立ち情報 [その他]

ラスベガスお役立ち情報

去年に引き続いて今年もラスベガスに行ってきました。

その時、気づいたことを記載。



バス

バスは回数乗るのでしたら便利です。
ルートはこちら

Parisホテルの前に北方向行きのバスの停留所があります。

バスにはDeuceとSDXがあり、SDXはノースアウトレットモールに向かいます。
Deuceは途中までしか行きません。

また、SDXはDeuceよりも停留所が少なく、スキップして走行しています。

Deuce、SDXは2時間乗り放題で6ドル、24時間乗り放題で8ドルです。
お釣りは出ませんので、小銭がなければParisホテルなどのATMで両替して下さい。

どちらに乗っても構いません。
料金表はこちら
Deuceは24時間運航していますが、SDXは朝9時~夜12時30分までです。



バスに乗車する際は、何もせず乗れます。入り口にチケットをチェックする機械がありますが、入れなくてもOKでした。
途中で車掌さんがバスチケットを確認するので、その際に見せて下さい。



ベラッジオの前から乗るバスは、南方向に行きます。

MGM、エクスカリバー、New York New Yorkなどに向かうにはこちらのバスを使います。

MGMのバス停から乗るには、お土産屋さんの前の停留所から乗ると、北方向行きでParisホテルの前に停まります。

PDFデータ
bus.JPG


バス停に記載しているバス停一覧
DSC06225.JPG

チケット券売機
DSC06228.JPG

チケット券売機
DSC06230.JPG


シャトルバス

リオホテルに行くにはバリーズから無料のシャトルバスが出ています。

30分に1本の間隔です。時間は10時~夜1時まで運行しています。

ただし、乗り切れなかった場合は立ち乗り不可で、次のを待つように指示されますので混んでいるときは注意が必要です。
また、大きな荷物を持っていると乗せてくれません。タクシーで行きましょう。


タクシー

タクシーは空港から出るとすぐに乗れます。
2013年7月31日現在、空港税として2ドル上乗せされました。乗った時にその説明があります。

タクシーからストリップまではチップ込でだいたい15ドル~20ドルです。


両替

カジノにあるATMは、両替機になります。

20ドルを入れると5ドル4枚に、10ドルを入れると5ドルと1ドル5枚に、5ドルを入れると1ドル5枚に崩してくれます。

アメリカではチップなどのために1ドルが必要になる機会が多いため、重宝します。

DSC06224.JPG


ABC Store

Miracle Miles Shopsの中にABC Storeが2軒あります。

ハワイを本店とするため、看板にはハワイと書いてあります。
ハワイのお土産もありますが、ラスベガスならではのお土産もたくさんあります。

水は1リットル99セントで売っています。

食材、お菓子、お土産と揃うので何度も行きました。


レストラン

行ったレストラン一覧です。

・ヌードル(ベラッジオ)

ベラッジオの中にあるヌードル屋さんです。
中華料理からタイ料理、うどんまであります。

チャーハン、エビワンタンなどもありました。

チャーハンは美味しかった。
メニュー


・バッカナル・バフェ
シーザース・パレス内にある人気店です。
紹介ページ
サンデーブランチはシャンパンが無料です。
日曜の13時半ぐらいに行きましたがたくさんの行列で約1時間並びました。

料理はたくさんあり、ミニハンバーガーやステーキ系が美味しかったです。

カニに多くの客が並んでいました。

給仕の方も親切で、みんなニコニコとしていて感じも良かったです。


・Mon ami gabi(Paris)
メニュー

Parisホテルに隣接するオシャレなフレンチレストラン。
朝7時半ぐらいにモーニングを食べに行きました。

レモンパンケーキとエッグベネディクト、それにフレッシュなオレンジジュースを注文。

オレンジジュースは爽やかで美味しかった。

レモンパンケーキは大きくて、皿いっぱいにありました。
何層にも重ねられたパイ生地っぽくて、美味しいのですがだんだん飽きてきます。
半分の量で良かった。

DSC06219.JPG

DSC06220.JPG


・ファットバーガー
ストリップを南下して、MGM付近にあるのが、このFAT BURGER。

大きめのコーラにハンバーガーのお店。でも肉は脂肪が少ないらしい。

メニュー
DSC06247.JPG


・Table 10(パラッツォ)
メニュー

パラッツォショッピングモールの中にある高級店です。

ランチに入りましたが、一人2,500円ぐらいでした。

ハンバーガーを注文しましたが、大きすぎてナイフとフォークで食べました。


・Le Village Buffet at Paris Las Vegas

ページ

Parisホテルにあるバフェです。

ParisホテルとBally'sホテルとをつなげる通路の途中にあります。

18時過ぎに行くと並ばずに入れました。
ここは、デザートが美味しいと聞いたので行きましたが、給仕の方は良く無かったです。

全体的に仕事が粗く、面倒くさく思いながら仕事をしている印象でした。
バッカナル・バフェとは大違いです。

味は悪くありませんが、期待したデザートはまあまあ。
ソフトクリームがセルフサービスで食べ放題なのがいいですね。

クレープもありまあまあ並びます。クレープの上に山盛りのホイップクリームを乗せられましたが、甘すぎて食べられませんでした。

DSC06463.JPG


・Earl of Sandwich(Planet Hollywoodホテル内)

ページ

サンドイッチ専門店です。

ものすごく美味しくてしかも安い。3回は食べました。
シチューが美味しくて日替わりで色々あります。レジの横の黒板に書いてあります。

注文すると、コースター型の機械を渡されます。
出来上がるとこのコースターが光って振動するので、これを受け取りコーナーに持って行って引き換えます。コースターに番号が書いてあるので、間違うことはありません。

よくできたシステムだと思います。

wiresharkの保存ファイル [ツール]

Wiresharkのダンプファイルは、pcapngファイルとpcapファイルがあり、デフォルトだと前者になってしまう。
tcpdumpでは読めないっぽい。

変換するには、editcapを使う。
editcap.exe -F libpcap [変換前ファイル].pcapng [変換後ファイル].pcap


フォーマット
pcap-ngファイルフォーマット

pythonとdpktでパケット解析 [プログラム]

pythonでpcapファイルを解析する方法

dpktモジュールを使えば簡単にできました。

使い方
#python pcap.py [pcapファイル]

ファイル名
pcap.py

# -*- coding: utf-8 -*-

import dpkt, socket
import string
import binascii
import sys

#メイン関数
def main(filename):
    pcr = dpkt.pcap.Reader(open(filename,'rb'))
    #パケット数
    packet_count = 0

    #パケット処理
    for ts,buf in pcr:
        packet_count += 1
        try:
            eth = dpkt.ethernet.Ethernet(buf)
        except:
            continue

        #IPデータの場合
        if type(eth.data) == dpkt.ip.IP:
            ip = eth.data
            ipheader(ip)
            #TCPデータ
            if type(ip.data) == dpkt.tcp.TCP:
                tcp = ip.data
                #ペイロードが0以外
                if len(tcp.data) != 0:
                    thex = binascii.b2a_hex(tcp.data)
                    payload(thex)
            #UDPデータ
            elif type(ip.data) == dpkt.udp.UDP:
                udp = ip.data
                #ペイロードが0以外
                if len(udp.data) != 0:
                    uhex = binascii.b2a_hex(udp.data)
                    payload(uhex)
            #ICMPデータ
            elif type(ip.data) == dpkt.icmp.ICMP:
                icmp = ip.data
                #ペイロードが0以外
                if len(icmp.data) != 0:
                    ihex = binascii.hexlify(str(icmp.data))
                    payload(ihex[8:])

    print "処理終了:", packet_count

#IPヘッダ処理
def ipheader(header):
    #ヘッダの処理
    src = socket.inet_ntoa(header.src)
    dst = socket.inet_ntoa(header.dst)
    #TCP
    if type(header.data) == dpkt.tcp.TCP:
        print "TCP %s:%s => %s:%s (len:%s)" % (src, header.data.sport, dst, header.data.dport, len(header.data.data))
    #UDP
    elif type(header.data) == dpkt.udp.UDP:
        print "UDP %s:%s => %s:%s (len:%s)" % (src, header.data.sport, dst, header.data.dport, len(header.data.data))
    #ICMP
    elif type(header.data) == dpkt.icmp.ICMP:
        print "ICMP %s:type %s,code %s => %s (len:%s)" % (src, header.data.type, header.data.code, dst, len(header.data.data))
    #その他
    else:
        print "%s => %s" % (src, dst)
    

#ペイロード
def payload(thex):
    #ペイロードの処理
    return

#メイン関数
if __name__ == '__main__':
    if (len(sys.argv) != 2):
        print "ファイルを指定して下さい"
        exit()
    #第2引数をファイル名にする
    filename = sys.argv[1]

    main(filename)

Fiddlerでレスポンスを止める方法 [ツール]

Fiddlerでレスポンスを変更する方法。

1 起動してキャプチャモード(左下の0101アイコンが表示状態)にする。
F12ボタンか左下の0101アイコンをクリックする。

2 Alt+F11でAfter Responsesとして、BreakPointを設定する。
メニューのRules→Automatic BreakPoint→After ResponsesをチェックでもOK。
(これで常にレスポンスが返ってきてブラウザに到達する前に止まる)

3 ブラウザ(IE)で接続する。

4 サーバからの応答が返ってきてブラウザに表示する前にブレークポイントで止まっているため、セッションが赤くなっている部分を選択する。
fid.PNG

5 右側のビューのInspectorsタブをクリック。

6 右側の下側のビューのText View又はRawタブをクリックする。

7 サーバから返ってきた文字列が表示されているので変更したい文字列に修正する。

8 右側の真ん中にあるRun to Completionボタンをクリックする。
fid2.PNG

9 ブラウザに変更された文字列が表示される。


AutoResponderと組み合わせる場合は、F11でBefore RequestsでRequest前にBreakPointを仕掛けるとうまくいきました。
そうすれば、相手サーバは不要になる。

これで、マルウェア解析で通信先から指令を受けるコマンドを送信すれば、解析が捗るハズ。


Googleの二段階認証 [技術]

Googleの二段階認証を設定するのに、携帯電話のアドレスを入力したのに、携帯に届かない。

スパムフィルタか?とも思いましたが、発信元アドレスが不明のためわからず。

どうしたら???



追記

noreply@google.com
から認証コードが届きました。
このドメインを迷惑メール対策から除外せよ、と書いてほしいものです。

JavaScript 難読化関係 [ツール]

JavaScriptの難読化はGumblar(Drive By Download)が流行った時に、話題になったと思います。


難読化に関するサイトをちょっと探してみましたので、メモっておきます。



難読化サイト
定番
http://dean.edwards.name/packer/
同じ
http://javascriptcompressor.com/
ただの圧縮
http://www.creativyst.com/Prod/3/


解読
整形サイト
http://www.mobilefish.com/services/javascriptformatter/javascriptformatter.php

こちらも整形サイト
http://www.javascriptbeautifier.com/

同じく整形サイト
http://www.dirtymarkup.com/

こちらはかなり解読してくれます
http://www.jspretty.com/

こちらもかなり解読してくれます
http://jsbeautifier.org/

VirtualBoxでホストOSからゲストOS上のプログラムを実行する方法 [ツール]

VirtualBoxで、ホストOSからゲストOSのプログラムを起動する方法。

VBoxManage guestcontrol "WinXP" execute C:\WINDOWS\System32\calc.exe --username [ユーザ名] --password [パスワード] --verbose --wait-stdout --timeout 5000

これは、WinXPというゲストOS上で、電卓を実行するコマンドです。
--wait-stdoutを入れないと実行されないみたいです。
タイムアウトはミリ秒で5秒後に強制終了できます。

文字列からMD5やSHA1を求める [技術]

文字列からMD5やSHA1を求める方法。

下記はloginという文字列からハッシュ値を求めています。

$ echo -n login|md5sum
d56b699830e77ba53855679cb1d252da -

$ echo -n login|sha1sum
2736fab291f04e69b62d490c3c09361f5b82461a -

zipファイルフォーマット [技術]

zipファイルのフォーマット解説。

http://www.pkware.com/documents/casestudies/APPNOTE.TXT

結構奥が深いです。

SonyのBluetoothのイヤホン(DRC-BTN40K) [製品]

スマートフォンに付けるBluetoothイヤホン(DRC-BTN40K)を約7,000円で購入。

http://www.sony.jp/headphone/products/DRC-BTN40K/

DRC-BTN40K_B.jpg

面白い機能に、NFC対応があり、おサイフケータイ機能があるスマートフォンであれば、
1 スマートフォンでアプリ起動
2 本イヤホンをおサイフケータイ部分にかざす
3 スマートフォンが振動する
4 スマートフォンのBluetooth機能がオンになり、使用可能になる

逆に、終了したい場合も
1 スマートフォンでアプリ起動
2 本イヤホンをおサイフケータイ部分にかざす
3 スマートフォンが振動する
4 スマートフォンのBluetooth機能がオフになる

ただし、オフの場合は、本イヤホンの電源部分はオフにならず、自動でオフになるのを待つか、パワーボタンでオフにする必要がある。


また、Bluetoothなので、電池の持ちが悪く、最大8時間しか持たない仕様になっている。

音質はまあまあ。

ノイズキャンセラも無いので、廉価な部類ですが、値段は安くないんですよね。

opensslを用いた文字列の暗号化・復号 [ツール]

opensslコマンドを使った文字列の暗号化と復号のまとめ

-aes-128-cbc:AES暗号、128ビット、CBCモード
-e:暗号化
-base64:表示をBase64で表示する。
-pass pass:test:パスワードフレーズとしてtestを使用
-p:saltやKey、IVを表示

#echo "TEST"|openssl enc -aes-128-cbc -e -base64 -pass pass:test -p

結果の表示
salt=F6BEF056BA3B3E00
key=0A1430ED15866E4907BB3F98EA19F463
iv =E2FC0CE7D64F5A86034F487E7E50A5B4
U2FsdGVkX1/2vvBWujs+AKB//Shqg1mdUOMFvoNyi/o=




復号
-aes-128-cbc:AES暗号、128ビット、CBCモード
-d:復号
-base64:入力をBase64で扱う。
-pass pass:test:パスワードフレーズとしてtestを使用
-p:saltやKey、IVを表示

#echo "U2FsdGVkX1/2vvBWujs+AKB//Shqg1mdUOMFvoNyi/o="|openssl enc -d -aes-128-cbc -base64 -pass pass:test -p

結果の表示
salt=F6BEF056BA3B3E00
key=0A1430ED15866E4907BB3F98EA19F463
iv =E2FC0CE7D64F5A86034F487E7E50A5B4
TEST

元に戻ったのを確認できました。


この暗号化の結果である
U2FsdGVkX1/2vvBWujs+AKB//Shqg1mdUOMFvoNyi/o=

は、Base64でありバイナリに直して文字列化すると

Salted__コ;>…

となり、
バイナリでは、
53 61 6C 74 65 64 5F 5F F6 BE F0 56 BA 3B 3E 00 A0 7F FD 28 6A 83 59 9D 50 E3 05 BE 83 72 8B FA
と表示できます。


最初の16バイトはSaltです。

53 61 6C 74 65 64 5F 5F = S a l t e d _ _
なので、
Salted__F6 BE F0 56 BA 3B 3E 00
であり、除外する必要があります。


Saltの部分を取り除くと本来の暗号化バイト列は、
A0 7F FD 28 6A 83 59 9D 50 E3 05 BE 83 72 8B FA
です。


よって、これを復号するためには、
暗号化バイト列
A07FFD286A83599D50E305BE83728BFA


key=0A1430ED15866E4907BB3F98EA19F463

IV
iv =E2FC0CE7D64F5A86034F487E7E50A5B4


AES暗号、128ビット、CBCモード、パディングはPKCS7かな?

TEST

が出てきます。



バイト列に直すと、
54 45 53 54 0A
なので、改行文字列が含まれていました。


#echo "TEST"
は改行が入るのですね。



続いて、KeyとIVを直性指定し、Saltを使用しない方法

-aes-128-cbc:AES暗号、128ビット、CBCモード
-e:暗号化
-base64:表示をBase64で表示する。
-K:keyバイト列
-iv:IVバイト列
-p:saltやKey、IVを表示
-nosalt:Saltを使用しない


#echo "TEST"|openssl enc -aes-128-cbc -e -base64 -K "A48C3157CF75EC0A1DBA46B6622F5585" -iv "D526E07AA918B6E57123C390E5C90C24" -nosalt -p

結果の表示
key=A48C3157CF75EC0A1DBA46B6622F5585
iv =D526E07AA918B6E57123C390E5C90C24
DhRA4JXmeddc5Apquyer8w==




これを復号します。

-aes-128-cbc:AES暗号、128ビット、CBCモード
-d:復号
-base64:入力をBase64で扱う。
-K:keyバイト列
-iv:IVバイト列
-p:saltやKey、IVを表示
-nosalt:Saltを使用しない


#echo "DhRA4JXmeddc5Apquyer8w=="|openssl enc -aes-128-cbc -d -base64 -K "A48C3157CF75EC0A1DBA46B6622F5585" -iv "D526E07AA918B6E57123C390E5C90C24" -nosalt -p

結果の表示
key=A48C3157CF75EC0A1DBA46B6622F5585
iv =D526E07AA918B6E57123C390E5C90C24
TEST

復号できたのが確認できました。



opensslがどうやって鍵を生成しているかは、以下のサイトが参考になります。
http://alpha.mixi.co.jp/2007/10639/

wiresharkの統計情報 [技術]

wiresharkの統計情報で、IPアドレスごとの取り方がwiresharkのCUI版であるtsharkのDocumentには書いてありませんでした。

wiresharkは色々表示できるのに、ファイルに出力する方法がなくて苦労します。

wiresharkなら、このような画面になるのをtsharkで表示する方法。
ip.PNG

読み込みたいpcapファイルをtest.pcapとすると、

>tshark.exe -r test.pcap -n -q -z ip_hosts,tree
とすることで表示されます。

test.txtに保存するなら
>tshark.exe -r test.pcap -n -q -z ip_hosts,tree > test.txt
ですね。


表示結果
result.PNG

emlファイルから添付ファイルを抽出するスクリプト2 [プログラム]

昨日作ったのを改良しました。

複数のファイルをドラッグ&ドロップしても大丈夫です。

emlファイルから添付ファイルを抽出するスクリプト

当該スクリプトをvbsファイルに保存し、複数のemlファイルをドラッグ&ドロップでデスクトップに添付ファイルが保存されます。
添付ファイルは受信日時と添付ファイル名がくっつくようにしています。



*********ここから***************

Option Explicit
Dim EmlFileName
Dim Message,Stm,Attachment,Dtime,strDtime
Dim SaveFile,objShell

Set Message = CreateObject( "CDO.Message" )
Set Stm = CreateObject( "ADODB.Stream" )
Set objShell = WScript.CreateObject("WScript.Shell")

For Each EmlFileName In WScript.Arguments

    'emlファイルを開く
    Stm.Open
    Stm.LoadFromFile EmlFileName

    Message.DataSource.OpenObject Stm, "_Stream"

    '受信日時の取得と変形
    Dtime = Message.ReceivedTime
    strDtime = FormatDateTime(Message.ReceivedTime, vbShortDate)
    strDtime = Replace(strDtime, "/", "")

    '添付ファイルを日時とファイル名を付してデスクトップに保存
    For Each Attachment In Message.Attachments
        SaveFile = objShell.SpecialFolders("Desktop") &_
            "\\" & strDtime & "_" & Attachment.FileName
        Attachment.saveToFile SaveFile
    Next
    Stm.Close
Next

WScript.Echo "終了"


****************ここまで*****************

emlファイルから添付ファイルを抽出するスクリプト [プログラム]

emlファイルから添付ファイルを抽出するスクリプト

当該スクリプトをvbsファイルに保存し、emlファイルをドラッグ&ドロップでデスクトップに添付ファイルが保存されます。
添付ファイルは受信日時と添付ファイル名がくっつくようにしています。



*********ここから***************

Dim EmlFileName
Dim Message,Stm,Attachment,Dtime,strDtime
Dim SaveFile,objShell

'第一引数をemlファイルとして読込
EmlFileName = WScript.Arguments(0)
Set Message = CreateObject("CDO.Message")
Set Stm = CreateObject("ADODB.Stream")
Set objShell = WScript.CreateObject("WScript.Shell")

'emlファイルを開く
Stm.Open
Stm.LoadFromFile EmlFileName

Message.DataSource.OpenObject Stm, "_Stream"

'受信日時の取得と変形
Dtime = Message.ReceivedTime
strDtime = FormatDateTime(Message.ReceivedTime, vbShortDate)
strDtime = Replace(strDtime, "/", "")

'添付ファイルを日時とファイル名を付してデスクトップに保存
For Each Attachment In Message.Attachments
    SaveFile = objShell.SpecialFolders("Desktop") &_
        "\\" & strDtime & "_" & Attachment.FileName
    Attachment.saveToFile SaveFile
Next
Stm.Close


****************ここまで*****************

Virtual Boxのエラー [ツール]

Virtual Boxのバージョンを挙げるといくつか不具合が発生しました。

最たるものは、再起動したらエラーが出てログオンできないこと。

FATAL: Could not read from the boot medium! System halted.


なぜか、いったん、終了した後、起動すればこのエラーは出ません。

すなわち、
×再起動
○終了→起動
です。

もしトラぶっていたなら参考にしてください。

Remnux [プログラム]

時刻
$sudo cp /etc/localtime /etc/localtime.bak

$sudo cp /user/share/zoneinfo/Asia/Tokyo /etc/localtime

キーボード
setxkbmap jp

これを.bashrcに追加すれば日本語キーボードがロ グイン時に使える。 ターミナルで打てばすぐに反映される。

http://zeltser.com/remnux/

国民審査 [法律]

最高裁判所裁判官の国民審査が明日の投票日(期日前投票などの場合は既に投票済みの人もいるかと思いますが)に行われます。


この制度は、憲法79条2項、3項に基づくもので、最高裁判所裁判官に任命後、初の衆院選で国民審査に付され、罷免の判断を受けます。
なので、前回の衆院選以降に任命された裁判官が対象で、かつ、前回の国民審査に付された時から10年が経過していた人が対象です。


長官が1名、判事14名の15名からなら最高裁判所ですが、そのうち公報を見ると今回は10名が対象です。
10名全員が初の国民審査であり、2度目の国民審査の裁判官はいません。


名前と出身大学を挙げますと、

1 須藤正彦裁判官 中央大学法学部卒
2 千葉勝美裁判官 東京大学法学部卒
3 横田尤孝裁判官 中央大学法学部卒
4 白木勇裁判官  東京大学法学部卒
5 岡部喜代子裁判官 慶應義塾大学大学院修了
6 大谷剛彦裁判官 東京大学法学部卒
7 寺田逸郎裁判官 東京大学法学部卒
8 大橋正春裁判官 東京大学法学部卒
9 山浦善樹裁判官 一橋大学法学部卒
10 小貫芳信裁判官 中央大学大学院修了

です。


http://www.h24syuugiinsen.metro.tokyo.jp/examination/images/kouhou.pdf


判決をした詳細は上記公報に載っていますので、じっくり見るといいと思います。

最高裁判所裁判官の国民審査制度は、解職制度と解されていますが、内閣による任命後の国民審査によって正式に国民にも任命されるとする見解も存在します。

三権分立に対して唯一国民が直接司法に対して物申す制度ですので、しっかり見極める必要があると思います。

MySQL [ツール]

phpMyAdminをバージョンアップしたら稼働状況グラフが表示されるようになっていました。

前からなのか知りませんが、便利になりました。

mysql.PNG

wiresharkのフィルタリング [ツール]

wiresharkのフィルタリング機能ですが、いつのバージョンからか変更されていました。

wiresharkのフィルタリングにはキャプチャフィルタリングとディスプレイフィルタリングがあり、通常よく目にするのはディスプレイフィルタリングだと思います。

しかし、ディスプレイフィルタリングはその名の通りパケットはバックグラウンドで取り続けているので、たくさんのパケットが流れている際は非常に重くなります。

そこで、最初からパケットを取らないのがキャプチャフィルタリングです。

しかし、以前はインターフェースを選択するときに入力することができたのに、最近のバージョンはありません。
wire2.PNG


なんじゃ~??と思って探すと、キャプチャフィルタリング自体の追加、編集、削除はツールバーのCpatureの「Capture Filters」で表示され、できます。
wire1.PNG

しかし、肝心の当該インターフェースにこのキャプチャフィルタリングをそもそもどうやって反映させるかが不明でした。
色々探すと、さきほどの画面上部のインターフェースをダブルクリックすると出てきました。
wire3.PNG

ここで、キャプチャフィルタリングをしたい項目を選択してOKをクリックすると下図のようになります。
wire4.PNG

これで、OKをクリックしてCapture Optionsに戻ると、インターフェースの右側にCapture Filterと記載されたところに選択したキャプチャフィルタリングの名称が記載されました。
wire5.PNG
これでキャプチャフィルタリングが適用されました。


ちなみに、ディスプレイフィルタリングとキャプチャフィルタリングは書き方が異なります。

tcpdumpの起動時オプションで書くのがキャプチャフィルタリングなので、IPアドレスを指定するときは、
ディスプレイフィルタリングだと
ip.addr==192.168.0.1
なのに対して、キャプチャフィルタリングだと
host 192.168.0.1
となりますので、注意が必要です。

ドコモの携帯に韓国の電子マネーを対応させるとか [製品]

ドコモの携帯に韓国の電子マネーを対応させるらしいです。

http://hamusoku.com/archives/7504581.html

これ、開発費を購入者に負担させようってことでは?

日本にいる人の大半は何のメリットもありません。

次の製品が出たら買い替えようと思っていましたが、ドコモ自体を買い替えることも考え始めました。
12年目ユーザですが。

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。