力尽きました


間違ってるとこそのたあればごいっぽういただきたく...

主催者挨拶(村地彰さん)

プログラム
  • 主催者挨拶
  • 発刊にあたって
  • 今日から使うFiddler
    • 監訳者- 物江修さん
  • 参加者発表
  • 閉会
今日の参加者
  • プロフィール
    • 開発者48.7%
    • 学生7.7%
    • ITプロフェッショナル 17.9%
    • その他 2.6%
    • その他のIT関連職種 15.4%
    • その他の社会人5.1%
    • デザイナー 2.6%
Fiddlerの利用経験
  • 1年未満 38.5%
  • まだ使ったことがない 35.9%
  • 3年未満 12.8%
  • 5年以上 5.1%
  • 5年未満 7.7%
  • 初心者向けの内容なのでちょっと物足りないかも...
  • MLなどで経験者は語るということで事例を共有してほしい
Fiddler本を買いましたか?
  • 原書(書籍)を買った→2名
  • 原書(電子版)を買った→1名
  • 邦訳を買った→のこり?
  • まだ買ってない→半分くらい?
  • 業務として翻訳されたらしい...ので買ってもらっても利益がない
Fiddlerユーザグループ
  • MSなのにGoogleGroupはおかしいかもしれないがMSのは使いにくい...
  • そのうち勉強会とかやっていきたい

発刊にあたって(マイクロソフトInternetExplorerプロダクトグループマネージャ溝口宗太郎さん)

  • 担当なのでIE10のTシャツを着ている
  • Fiddler本出版の経緯とかIE11の簡単な紹介など
    • 8.1のことはあまりしゃべれない...
    • ベータ版の商品をお客さんに紹介する場合はきちんとガイドラインがあって内容も決まってる
    • そもそもしゃべれるひとが決まっている
    • 今回はIE11について語る
(前半)Fiddlerの本を出すに当たり
  • Eric Lawrence
    • つい最近MSやめてFiddlerを売る会社を始めちゃった
    • MSとしてがんばってるが開発者に製品のことをうまく伝えられていない
      • MS部署間の連携が取れてないから?
    • FiddlerやVSのことをIEのユーザグループで伝えてはいるんだが草の根運動になっててうまく伝えられていない
    • そもそも誰が作ってるんだ?ってことで調べたらIEのトップの人だった
      • 我々下々のものが直接やりとりできない...
    • IEのアカウントでtwitter経由で日本版だしたいんだけどいい?って聞いた
    • エリックも出したいがいい日本の出版社みつからないって話で相思相愛
    • Web開発者いっぱいいるから大丈夫だよ!
    • その間にエリック会社やめちゃってFiddler売る会社に...
  • Windows8.1の新しいIEは下にタブが出る全部下にまとめた
  • 今回訳のクオリティが高い、よい本
    • そんなに高い本じゃないから買ってw
後半(IE11)
  • IE11入れた人→6人
  • ISOイメージも用意されました
  • プレビュー版入れると製品版入れるときクリーンする必要があるから...
  • サービスパックじゃない(そもそもサービスパックはhotfixとセキュリティfix)
  • サービスパックにはブラウザなんか入れられない
  • 開発者向けガイドがある
    • 日本語化
    • F12ツール
    • インタフェースがazureっぽい...
    • 先端技術を追い求める方にはよいかも
    • jsのエンジンがすごくよくなった
    • 先読み機能も実装された
    • http://msdn.microsoft.com/ja-jp/ie
  • フィードバックほしい
    • 簡単な英語でいいので...
    • 早めにフィードバックしたもの勝ち
質疑
  • 下にタブが出たりURLが出てましたけど上に切り替えられますか?
    • →たぶんできない
    • URLを常時出す出さないはできるが...
  • なんで上にあったものを下にしたのか?
    • 画面のUIで統計とってたら下に集まっていたからか?
      • 決してうちのデザイナーのエゴでやったわけじゃないw
      • 使い慣れてない人は下にまとめちゃったほうがわかりやすいんじゃないの〜?(ってむらちさんは思っているそうです)
    • 但しフィードバックで上にしろって声がでかければなおせるかもよ〜
  • 懸賞金とフィードバックは?
    • セキュリティのみにお金が出る
    • 専用の連絡先があったはず...日本だとIPA経由とかで
    • 昔のBlasterみたいなのみつけると最大1,000万円
    • IEを利用した攻撃手法とか見つければ...

今日から使うFiddler

  • 監訳とあるが実際のところ訳がすばらしく、正しく動くかどうか確認するだけだった...
  • スライドは後でシェアします
Fiddlerとは
  • Webをプロトコルレベルデバッグする
  • 生のデータをみるために使う
  • プロキシ型
  • データの監視、書き換え、ルーティング(向き先かえる)が出来る
  • FiddlerはHTTP、HTTPSFTPしかできない
  • jsonとかをきちんと階層構造で見れる
  • 画像音楽のようなバイナリデータをFiddler上で再生できる
  • 暗号化されていないデータがFiddlerでダウンロードできるので使わないでくださいw
  • プラグインが豊富
  • .Netで開発できる
  • Fiddler自体を.NETのコンポーネントとして使える
  • 詳しいライセンスはEULAを見てほしいが基本的違法じゃなけりゃ好きに使ってよいというもの
Fiddlerの入手
  • Fiddler downloadで出てくるものは不要なアプリケーションがついている
    • 有償製品のお試し版とか
    • なのでちゃんとfiddler2.comから落とせ
    • .NET2なんでWindows7なら普通に使えるかなぁ...
  • ベータバージョンは若干動かない機能があることがあるんでFiddler2のほうが安定版
  • Eric Lawrence
    • MSの社員
    • Office Onlineの開発しててHTTPのデバッグのためにつくった
    • 昨年やめて今はFiddlerを広める仕事している
基本的な使い方
UI
  • ?css とかいれるとcssってつくものが選択される
  • select js だとjsが選択される
  • 詳細はFiddler本28ページ
キャプチャの開始
  • File→。。。
  • [F12]
  • ステータスバーの左クリック
  • 右側のタブ
  • add on を入れると増える
  • statics
    • 割合が見れる
      • ほとんど全部Headerだった...
  • Inspectors
    • クッキーの内容とか...
    • Jasonの構造とか...
    • XMLも構造化してみれる...
  • Filter

セッションの絞込みとか

    • ブラウザからPOSTする直前サーバに投げる前にFiddlerで見たりデータ改ざんできる
  • Timeline
    • ウォーターフォールダイアグラム
    • 画像をダウンロードした割合とか
    • データのタイミング、どうやって呼ばれるかについては
    • IEのF12ツールのほうがよくみえるかも...
    • copy chartでbitmapでグラフ保存できる...
  • AutoResponder
    • リクエストに対する振る舞いを決めることが出来る
    • chromeだとうごくけどIEだと動かないといった事例...
    • キャプチャするとどういうjSつかっているかとかがわかる
    • Jqueryが古いのでうごかない→古いJSを新しいのに置き換えて動くかどうか確認できる
    • jquery-1.4.1.jsのリクエストが来たらローカルのjquery-1.7-min.jsを参照させる
    • jquery-1.4.1-ui.jsの1.8.5
  • 合致させてるときは厳しくせずURLのパスをのぞいてファイルだけにしてた...
    • クラウディアさんに置き換えてた...
  • すべてのプロセスキャプチャ
  • あるものだけキャプチャさせたい
  • Google Chromeのタブだけをキャプチャできる
  • 特定のプロセスだけを指定できる
  • マウスカーソル合わせるだけでいける...
  • Webサーバでも使える
  • リバースプロキシ
  • 逆プロキシの書き方は本読んでください
  • fiddlerは8888でリッスンしてる
  • firefoxはwininet使ってない
  • fiddler入れた後firefox入れるとadd onがひそかにインストールされる
  • fiddlerHockを有効化させるとキャプチャできるようになる
  • 他のツールとの組み合わせ
  • Compat Inspector
  • Webコンテンツを最新のIEに対応させるためのツール
  • 間違い見つけられる
    • 英語の解説はURLをja-jpに変えればよい(我々がお金出したからです)
質疑
  • レスポンスを書き換える場合ファイルを置くのではなく直接書き換えはできますか?
  • パフォーマンス
    • ネットワークのやりとりになるとサーバ側とは違う、大域とか
    • あくまでもFiddlerがみれるのはやり取りのスピードでありサーバの中身ではない
    • 単純にレスポンスとかスピードはわかるかも
  • Azureに設置は→できない、やり方による VMインストールして...公開プロキシになる
    • Webロールでもリモートデスクトップつなげられるけど...
    • Openプロキシになる
    • Azureポートがよくわからん
    • 常設は難しいかも
    • 外部接続
    • Fiddlerがもてるメモリは2Gbyte
    • どのくらい接続できるかというとわからん...
    • 常設して大量に接続させるというものではない
  • Burpsuite
    • つかったことないからわからん...

今からはじめるFiddler Script

村地彰さん

8章9章から急に難しくなる

Fidler Script

→正確にいうと、「あった」(過去形)
JavaScriptIEにおける実装

JScript.NET ???
MSDN
  • JScript.NETの紹介
  • JSript
    • 2005、2003に関するドキュメントのみ
    • IE用のJScriptについてはVSでサポートしている
    • おぶそりゅーと
    • がんばってリファレンスか本読むか...
    • Fiddler Scriptでしか使えないのでお勧めできない
正直言って
  • (今となっては)体系的学習が難しい
    • リファレンスが乏しい
  • 「やってみなはれ」の世界
とりあえず初めてみる
  • Fiddlerを起動する
    • [Rules]-[CustomizeRules]
    • 現在読み込まれているCustomRules.jsが立ち上がる
    • UserProfileにCustomRules.jsが入っててそれが立ち上がる
    • 書き換えられるとこれが再度読み込まれる→再起動しなくてよい
エディタの設定
  • tools→Fiddler Options で指定できる
    • [Tools]タブで
    • VIM使いたい人は...
FiddlerScriptのリセット
  • 記述に失敗してFiddlerが起動しないなどトラブルが起きたら
    • 起動しているFiddlerを終了
      • %UserProfile%\Documents\Fiddler2\ScriptsにあるCustomRules.jsを削除
    • Fiddlerを再起動
      • この操作でCustomRules.jsがリセットされます
後は
  • 「実践Fiddler」第8章を読みましょう
  • 現在もっとも確実なFiddlerScriptの解説です
  • Javascript書いたことない人はつらいかも
  • JavascriptC#のあいのこみたいな
  • わりとわかりやすいはず
試してみなはれ
  • 僕の知る限りFiddlerScriptをいろんなことやってるひとは三人くらいいる
  • 今度機会を作りたい

HTTPSをキャプチャする

MITM
  • 中間者手法
  • 通信の各エンドポイントの「中間」に介入して通信内容を操作する手法
  • Decrypt HTTP trafficのチェックいれると
  • ブラウザに証明書をつっこむので警告が出る
  • DO_NOT_TRUST_FiddlerRoot
  • この証明書は誰でも使えるので入りっぱなしだと安全だとはいえない!
  • FiddlerのUIで簡単に削除できるようになっている
  • Decrypt HTTP trafficのチェックはずせば削除されるはず→されました
質問
  • FiddlerScriptとAdd onどっちが早い?
    • FiddlerScriptとはFiddlerの動作を操作するもの
    • ASP.NETなどAdd on で実装されたもの
    • .NETで実装したほうが早いはず