binary 2.0 (ライトニングトークス)

大和さん@RedHat

Binareal - バイナリファイルの構造と解釈

野首さん

いけないお化粧magic(5)

  • swfによるプレゼンテーション!
  • 「タイトルの由来がわかる人はお年です」
  • magic(5)はfile(1)のDB形式
  • 「こんなバイナリはいやだ」⇒爆笑
  • トリビア: .Netのバイナリをfileすると、MS-DOS executable にみえる」⇒へぇ〜

鵜飼さん

livepatch - 概念と技法

  • timer+progress barで自動でページがめくられるプレゼン!
  • 別プロセスのメモリをいじる
    • カーネルパッチ不要
    • ptraceでattach→peek/poke→detach
    • 同一ユーザならいける
  • .soを送り込むこともできる
    • 送り込むためのメモリを確保するために、ターゲットのプロセス上でmmapを呼ぶ
    • vma

ごとむさん

斜め下を行くバイナリ書き換えの探求

  • 実行中のプロセスのファイルを書き換えようとすると、ETXTBUSYといわれる
    • なんでよ!→カーネルにパッチ(2行)
    • Solarisは最初から書き換え可能らしい
  • if(1)で無限ループしているプロセスをbreakする実例
  • .text以外はマップされていないから、書き換えできない(.bss, stack, heap ..)
  • 「beavは保存先は別inodeなので、実行前に開いてないとダメ」→笑
  • 「bviはファイルをO_TRUNKする。出入り禁止」→爆笑

よしおかさん@ミラク

Cache Pollution Aware Patch

  • メモリアクセスのコストは年々向上している。CPU速度の向上に追いついていない
  • 時間的局所性がないなら、CPUのキャッシュを使わない(更新しない)ほうが良い場合もある
  • __copy_from_user_ll() で movnti を使ったら10%の速度向上

Beroさん

Inside QEMU

g新部裕さん

GNP --- 'g' Network Protocol-Stack (for Boot Loader)

  • 「普通のやつらの下を行け!」
  • M32R用のブートローダのお話
  • 「グワシ(楳図かずお)を見たら0x14だと思えるようにならないとダメ!」

その他

  • IIJの会議室に行くのは確か3回目ですが、トイレの洗面台の自動石鹸マシーンが素敵だということに初めて気がつきました。石鹸が泡状になって出てくるんですねえ〜。さすが。
  • いま思えば、thinkgeek"binary people" Tシャツを着ていけばよかった(持ってます)

いや〜。最高のカンファレンスでした。特に、プレゼン全体を通して会場が笑いっぱなしだったのが、和やかでよかったと思います。