Shibuya Perl Mongersテクニカルトーク#14

IPAJPAは違う団体です

楽しみにしていたShibuya.pmに参加してきました。
ちゃんとメモを取っていたわけではありませんので、内容というより感想&自分のための整理です。


詳細な内容や感想はすでに書かれている方がおられますのでそちらを参照ください。

Perl 6 Language Update - 小飼弾さん

  • LL Tigerの時と同じく、ちょうど着いたのがセッションの終わりの方だったので、内容がよくわからないまま終わってしまいました。残念。。
  • Perl 6」どうなっていくんだろう??

ぼくのかんがえたさいきょうのYAPC::Asia - 櫛井さん

  • YAPC::Asia 2010はこんなに楽しい!といったお話で行くのがとても楽しみになりました。
  • MacBook Proがどなたの手に渡るのか楽しみです。
  • チケット再販してるので、買ってね!とのことでした。
  • blog + スライド

JPA活動報告 - 牧さん

  • タイトルの通りJPAの活動報告で、Perlを多くの方に利用してもらうために教育をはじめ様々な普及活動を行われているんですね。
  • Catalyst研修など面白そうですね。
  • やはりまだまだ古いPerlの印象を持っている人が多いと思います。そういう人たちに向けてのこのような活動が伝わっていくといいなと思いましたし、現在Perl使っている人にもその素晴らしさがさらに伝わるといいなと思いました。
  • Web+DBプレスの連載毎月楽しみにしています!
  • 今後のJPAの活動や企業やコミュニティと連携したイベントなどこれからも目が離せないなと思いました。
  • スライド。

memcached injection - 佐名木智貴さん

  • memcachedのキーに対するエスケープのお話でした。memcachedに対するインジェクションについては知らなかったので興味深かったです。
  • キーに対するエスケープがプロトコル仕様で定義されていないので、エスケープを行うにはアプリ側で実装する必要があるとのことですが、果たしてエスケープ処理が必要になる場面はあるのか?ということでした。その他の例として出されたSQLカラム名に対するエスケープも興味深かったです。

memcachedの運用監視ノウハウ - 長野雅広さん(ライブドア

  • gumistudyに続き、kazeburoさんのお話をまたまた聞かせて頂きました。
  • memcachedがますます重要なコンポーネントになる中で、運用、監視が大事になるということでした。
  • PDCAサイクルを回して、どんどん改善していくことが重要になるというのはその通りだなと思いました。
  • 「監視は継続的なテスト」という奥一穂さんの言葉、その通りで素晴らしいと思いました。
  • それには、「自動化」と「可視化」が必須になるということで、その方法を具体的に紹介くださりました。
    • プロセスやstatus、uptime、コネクション数の確認をpgrep、cronlog、nc、Nagios Pluginなどを使って監視していく。
      • 個人的には、gumistudyでこの辺りの話は聞いていたので理解しやすくてよかったです。
  • また印象に残ったのは、メールなどで通知する際は本当にエラーになっているものだけを送るようにしないと大変という話でした。
    • 確かに自分も某システムに障害があったら携帯にメールが飛んでくるようになっているのですが、本当どきどきしますし、クリティカルでもないのに頻繁に飛んでくるとそれはそれで気にしなくなってしまうこともあるかなと思います。
  • CloudForecastの話はYAPCで聞けるそうです!
  • blog + スライド

身につけておきたい、今そこにあるシステムの救命措置(パネルディスカッション IPA 園田さん+)

  • IPAShibuya.pmでというとても興味深い組み合わせで、とても楽しみにしていました。
  • 園田さんと竹迫さんがいると、セキュリティ・プログラミングキャンプ・キャラバンに行ったことを思い出しました。
  • 紹介されたデータの中では、時系列の脆弱性報告状況の資料にあったカミンスキーアタック特需にはビックリしました。あんなにグラフが跳ね上がるとは。。
  • 内容としては、稼働中のシステムで脆弱性が見つかった場合の対応についてのディスカッションが多かったように思います。
    • 脆弱性があることをIPAが報告しても、そのまま何年も放置しておくといったことが結構あることはビックリですね。開発を外注しているような会社だと、金銭面やそもそも開発会社がなくなったなどの理由でそのような状況になってしまうのかなと思いました。
    • また、そのような放置する組織については公開した方がいいのではないかという考えや、IPAがランダムに稼動しているシステムに対して脆弱性スキャンをかけたらいいのではないかといった話など色んな考え方が出て面白かったです。
    • セキュリティに関する知識は、開発者にとって運転免許のようなものだと思うので教育を行き渡らせることが大切なのかなと思いました。あくまで想像ですが、大半の脆弱性は単純なミスや基本的な知識不足が原因となっている気がしますので。
      • 「安全なウェブサイトの作り方」読みましょう!
  • ハッカーの方々のセキュリティについての考えが目の前やTwitter上でどんどん流れていて、本当に面白くてすごい時間でした。
  • together

Perl 1,2,3,4 の歴史 - 前田薫さん

  • Perl5より前という自分にとっては未知な世界の話でとても面白くて勉強になりました。
  • Tokyo.pmの功績はmiyagawaさんにShibuya.pmを作らせたことという話もあったりと、PerlはもちろんですがPerlコミュニティの歴史を感じることが出来、その深さを感じることが出来たセッションでした。
  • スライド

Scripting Layer for Android + Perl - 伊藤直也さん (グリー株式会社)

  • 事前の告知ではどんな話をされるのか分からなかったのでとても楽しみでした。Twitter上のTLでも盛り上がっていたように思います。
  • 内容は「Scripting Layer for Android」を使ってAndroid端末上でPerlを動かすというものでした。
  • Androidを持っているのにこんなものがあることは知らなかったので、是非試してみたいと思いました。ただ、Android端末でのコーディングは罰ゲームだと思いますが。。(なのでadb pushというコマンドを使って端末にスクリプトを送信するそうです。)
  • Pure PerlCPANモジュールなら動作させることが出来、紹介されていたようにHTTP::Server::Simple::PSGIを使ったサーバーを立てることが出来るなんて面白いなと思いました。
  • Androidならではの自由さがいいなと思いました。
  • 実際のPerlスクリプトもシンプルで簡単に色々遊べそうなに感じました。うまく動作しなかったようですが、実際にカメラを操作できたりすれば更に楽しくなりそうですね!
  • blog + スライド

Data::Message::Pack - tokuhiromさん

  • Data::Message::Packという言葉は時々耳にしていたのですが、今回のお話を聞いてそういうものだったのかととても勉強になりました。
  • JSONやStorableよりもデータが小さくて高速に動作し、バイナリデータで様々なプログラミング言語で扱えるということで、今までJSONが使われていたような場面でData::Message::Packが使われるようになるのかなと思いました。
    • JSONに対する欠点・・・バイナリなので人間が読めない。
    • Storableに対する欠点・・・blessされたデータは扱えない。
  • JSONでもXMLと比べてデータが小さいなぁと思っていたら、さらにそれよりも小さなデータを高速に扱えるフォーマットが出てきて、ホントすごい世界だなと思いました。
  • gfxさんによる高速化の話やmakamakaさんによるPure Perlサポートの話など、Perlコミュニティのすごさも感じました。

re RainbowTwtr - 構造化テキストの安全なエスケープ手法について - 奥一穂さん(サイボウズ・ラボ)

  • TwitterXSSのこともあって、如何に構造化テキストを安全にエスケープするかというお話でした。
  • 本当に説明がわかりやすく、まさに説法を聞いているようでとても勉強になりました。
  • 構造化とエスケープを同時に行うのではなく、構造化を行った後にエスケープ処理を行う。
    • 言葉にしてみるとシンプルですが、なんだか目から鱗が落ちた気がしました。
    • Twitterの場合だと、まずユーザー名なのかハッシュタグなのかリンクなのかなどを構造化した後に、それぞれに対してHTMLエンコード処理を行う。HTMLエンコード自体は簡単なのだからXSSになることはないということでした。
    • バグ(構造化のミス)があってもいいから、セキュアなプログラムをとのことで、それぞれを分けて考えるというのはとてもシンプルになりいいなと思いました。
  • また、Test::Xslateのような型ベースのエンコード機能を備えたものを使う、DBアクセスについてはORMやプレースホルダなど、ミドルウェアで用意されている仕組みを積極的に使うのがいいとのことでした。
  • 勉強になりました。
  • blog + スライド

Perl Parser Hacks vol.2 - 藤吾郎さん(gfx)

  • 正直自分のレベルでは内容が理解出来たとは言いがたかったですが、とても興味深かったです。
  • perl 5.13から使えるという下記のようなパッケージの書き方はいいなぁと思いました。
package Foo {

}
    • 最後に「1;」をつけなくてよくなるのはいいですね。
  • gfxさんのPCカッコよかったです!
  • Text::Xslateの話も是非聞いてみたいなと思いました。
  • blog

まとめ

  • 今回はPerlの話もありましたが、IPAとのコラボによるディスカッションや奥さんのXSSの話などセキュリティについての印象が強く残った気がします。セキュリティの話はセキュリティ系の勉強会に行ったりして聞くことはあるのですが、ハッカーの方がどう考えているのかなどはなかなか聞けないと思いますのでとても興味深かったです。
  • それと同時に、Perlの話をたっぷり聞けるYAPCがさらに楽しみなりました。
  • 発表者の皆様、Shibuya.pmの皆様、IIJ様ありがとうございました。
    • 帰って録画を少し見たのですが、映像と音のよさに驚きました!
  • また、「安全なウェブサイトの作り方」ありがとうございました!
    • PDFダウンロードして読んではいたのですが、この機会に改めて読んでみたいと思います!