ユーザ用ツール

サイト用ツール


サイドバー

ctf:lesson:第3回

第3回資料

  • 2018/6/12
  • 講義役は17:30まで用事で不在です
  • 資料書いたのに消えちゃったよおおおお(泣
  • …テスト終わったね、おつかれ
  • 大人の事情でWikiに資料を写しました
    • ぜひ登録してガンガン書いてください、読書メモでも映画のネタバレでも自作言語の仕様でもいいです
  • CTFは範囲が広いので、逆に言えば何やってもCTFにこじつけられます
    • 週1じゃ足りねえ

Linuxをインストールする

Linuxをはじめようを参考にどうぞー

Wiresharkのインストール

  • 今回はWireshark (わいやしゃーく)というソフトウェアを使います
  • インストールしておいてください
    • Ubuntuならここに書いてあるコマンドを順に実行すれば入るはず
    • Windows, macOSは公式のダウンロードページからStable ReleaseからWindows Installerを選択、あとはNextをポチポチと
      • 自分のPCが64-bitか32-bitかわからない場合は32-bitを選択してください

USBの通信を覗いてみる

  • data.pcapをWiresharkで開いてみましょ
    • .pcapというのはいくつかのパケットをまとめたファイルです
    • パケット (packet)は小包という意味で、USBとPC・スマホとサーバなどネットワークを介してデータをやり取りするときは、いくつかのパケットの分けて送信します
      • パケットの送り方にはいろいろあって、IPアドレスでおなじみIP(Internet Protocol)もその一つです
    • このファイルはPCとUSBキーボードの通信を読み取ったものです
  • 以下の画像の1行1行がパケットに対応しています
    • ProcotolがUSBになっているのがUSBのパケットです
    • 検索窓(上のApply a display filter…とあるところ)にusbと入れると、USBのパケットに絞って表示できます
    • クリックすると下側に詳細な情報が表示されます
    • 一番下にあるのは、そう、バイナリ表示(パケットの生のデータ)です
  • パケットの情報からLeftover Capture Dataを探してみましょう
    • Leftover Capture Dataには押されたキーの情報が含まれています
    • 00:00:04:00:00:00:00:00 ← 04がキーの印字に対応します
    • 00:00:04:00:00:00:00:00ならAキーですね
    • USBの仕様書の53ページ以降にこの表が載っています

実はこれはpicoCTF 2017のJust Keyp Typingという問題だったりします。すべての文字を判別するとFLAGが出てきます。 write-up(解説)はここから

CTF班だし、そろそろ解きたいよなあ〜とか思ったので。

類題(時間があまれば)

  • Google CTF 2016: For2
    • write-up(解説) pcapもここからDLできます
      • なんとか.pcapngってリンクね
    • USBで通信しているのは同じっぽいが…? tshark, scapyを調べてみましょう
    • 希望があれば次回解説書きます
ctf/lesson/第3回.txt · 最終更新: 2018/08/15 16:49 (外部編集)