Upgrade to Pro — share decks privately, control downloads, hide ads and more …

FOSDEM2017行ってきた

nzzy
March 04, 2017

 FOSDEM2017行ってきた

第26回PORTもくもく会

nzzy

March 04, 2017
Tweet

More Decks by nzzy

Other Decks in Technology

Transcript

  1. FOSDEM行く意義 • OSSの中の人は、先生でも神でも何でも無く、実はつまんない事に悩む普通 の人であり、実はいろいろな雑事でも困っていることがわかれば大きな収穫。 • Face-to-Faceで開発してる側と話やらキーサインができると、あとでMLとか での自分の扱いが良くなることがある。(だって、お互い人間だもの!) • MLとかの公の場ではなかなか見えてこない問題とか、どうしてこうなの?(と ても公の場では聞けないような)事柄を直接質問したりできる。

    • 開発者らの熱意(パッション、熱量)を直接知り、モチベーションなどを直接知 ることができる。 • CXXC3(XXは数字)、BlackHat、DEFCON登壇常連という、いわゆる Hackingに関する技術分野で大変な偉業を果たした正真正銘のスーパーハ カーもリアルに会える!話せる。実際、リバースエンジニアリングの技術とかも 大真面目に取り扱っているので当然といえば当然。CCCの連中も見かけた。 (Valgrind devroomあたりで出没。)
  2. FOSDEM特徴 特徴: a)非常に多くのOSS関係者らによる沢山のセッション。実に645セッション。 b)来場者は8,000人以上。 c)各OSSコミュニティらのブース出展。Tシャツとか、USBメモリとか、シールと かのグッズ販売も。 d)Hackスペースとか、食堂や、ブース、ビヤガーデンでFace to Faceで開発 者らと直接会話できる。

    e)キーサインパーティーとかも当然ある。 参考:キーサインパーティーとは:    http://miniconf.debian.or.jp/ksp.html f)大体のセッションは大抵ビデオが公開。 ビデオ:https://video.fosdem.org/2017/   公用語: 英語。なお、ヨーロッパ圏なので、英語ネイティブな人は少数派。なので、多少 英語に自信なくてもダイジョウブ!また、英語が下手でもコミュニケーションは 上手!という神業をみることもできる。
  3. Applying Profilers to MySQL Mysqlのバグを直しまくっているMariaDB側のエンジニ アのMySQLのパフォーマンス問題についての発表。 概要:  MySQLの持つPerformance Schemaはいろいろ役 に立たない状況がある。このときのパフォーマンス問題

    解析に、pt-pmp、oprofile、perfを利用する話。最後 は、Facebookの開発したMyRocksというフラッシュスト レージ向けのストレージエンジンのパフォーマンス問題を 解決した例を紹介。各手法でパフォーマンス計測を行っ た場合の計測対象へ与える速度影響についても比較。
  4. Applying Profilers to MySQL 結論: a)MySQLの持つPerformance Schemaは、元々組み込まれて いないとか、MySQLサーバ動かしている時に有効になってな いとか、3rd PartyのプラグインではPerformace

    Schemaと 連結してないとか、利用にあたりいろいろ問題有り。 b)percona-toolkitのpt-pmpはMySQLがハングするような状況 で、停止している部分のスタックトーレスを集めるのに便利。 c)linux kernelの支援を使ってパフォーマンス情報を集める oprofile < perfの順で使い勝手が良い。 プレゼンとビデオ: https://fosdem.org/2017/schedule/event/profilemysql/
  5. Cloud ABI いろんなOSにて、プロセスをSandBox上で動作させるのを効 果的にエレガントかつ、効率的に実装する仕組みとしてCloud ABIを開発&提案。作った人が自ら発表。 概要:  プロセスをSandboxな環境で動作しているようにするのがセ キュリティ上イケてる実装。でも、こういうプログラムを地道に作 るのは既存技術の元ではプログラマにとっても超面倒!そこで、 FreeBSDのCapsicumの仕組みをヒントに、libcの各関数を最

    初からSandbox状態で動くものに差し替えたlibcを開発してし まえばエレガントに高いセキュリティを実現できるやんけ!という 内容。実際、使うのも簡単で、プログラマは自分のプログラムを libcとリンクさせる代わりにcloud-abi-libcとリンクさせるだけで セキュリティ上とてもイケてる状態に早変わり!
  6. Binary analysis with angr バイナリ解析のフレームワークのvalgrindの心臓部であるlibVEXを 再活用(一部再実装)し、Pythonと相性の良いバイナリ解析ツール を作ったスーパーハカーな業績を上げた人のプレゼン。 なお、angerを使いShellfishというチームがDARPA Cyber Challenge

    Contest(以下CGC)の「自動でシステムの脆弱性を見 つけ、修正するというボット」のコンテストに出場。数々のセキュリ ティ対策の会社を打ち負かし3位に入賞。成果は全部githubで公 開している。 Shellfish: http://shellphish.net/cgc/ 本偉業についてのニュース: http://www.theregister.co.uk/2016/08/22/mechanical_phish_au toexploit_autopatch_kit_lands_on_github/
  7. Binary analysis with angr 概要: angerはvalgrindの持つ静的・動的バイナリ解析の心臓部 (libVEX)を利用し、また、機能拡張を大幅に行ったPython bindingなバイナリ解析フレームワーク。 静的解析、動的解析、コールツリー生成なども出来る。他にも バイナリ解析のための機能(与えた制約のもとで、条件を満た

    す整数・ビットベクタの値を推論するClarypyとか)を多数もつ。 angerが行う解析のアルゴリズムや、libVEXのイケてない部分 をどう直したか?(成果を取り込んでくれとも言っていた)、ま た、将来のangerの開発方針について述べている。