タグ

ブックマーク / jovi0608.hatenablog.com (9)

  • Node.jsにおけるプロトタイプ汚染攻撃とは何か - ぼちぼち日記

    1. はじめに 最近わけあってNodeのセキュリティ調査をしているのですが、今年の5月に開催された North Sec 2018 でセキュリティ研究者の Olivier Arteau 氏による 「Prototype pollution attacks in NodeJS applications」という面白い発表を見つけました。 この発表の論文や発表資料、デモ動画などもgithubで公開されていますし、ちょうどタイミングよくセッション動画も最近公開されました。 github.com Olivier Arteau -- Prototype pollution attacks in NodeJS applications この発表で解説されているのは、悪意のある攻撃者が、JavaScript言語固有のプロトタイプチェーンの挙動を利用して、Webサーバを攻撃する方法です。 発表者は、npmからダ

    Node.jsにおけるプロトタイプ汚染攻撃とは何か - ぼちぼち日記
    punitan
    punitan 2018/10/19
  • 新しいTLSの暗号方式ChaCha20-Poly1305 - ぼちぼち日記

    Disclaimer エントリは、近々IETFで標準化される予定の新しいTLSの暗号方式 ChaCha20-Poly1305 について解説したものです。 来なら、新しい暗号方式を紹介するいうことは、その暗号の安全性についてもちゃんと解説しないといけないかもしれません。しかし一般的に暗号の安全性評価はとても難しく、専門家でない者が暗号の安全性について軽々しく書くわけにはいかないなとも思いました。いろいろ悩みましたが、結局無用な誤解を避けるため、エントリーでは ChaCha20-Poly1305 の安全性に関する記載を最小限に留めています。 今回紹介する ChaCha20-Poly1305 は、これまでも様々な暗号研究者の評価を受けている暗号方式ですが、まだNISTの標準や某国の推奨暗号リストに掲載されるといった、いわゆる特定機関のお墨付きをもった暗号方式ではありません。記載内容が中途半

    新しいTLSの暗号方式ChaCha20-Poly1305 - ぼちぼち日記
    punitan
    punitan 2016/04/04
  • Service WorkerとHTTP/2が切り開く新しいWeb Pushの世界 - ぼちぼち日記

    この記事は、HTTP2 Advent Calendar 2014の6日目のエントリーです(2日前にフライイング公開してます)。 1. はじめに、 HTTP/2仕様の標準化作業は、WGラストコールも終わり、今後IESGレビューやIETFラストコール等の大詰めの段階に来ました。来年のRFC化に向けてまだまだ予断を許しませんが、プロトコル設計自体の作業はほぼ完了し、後はすんなり行くことを祈るばかりです。 こんな状況なのに気が早いですが、もう既に標準化後を見据え、HTTP/2の機能を使った新しい仕組みを作る動きが始まっています。 そこで今回はHTTP/2技術の応用として、HTTP/2の「サーバプッシュ機能」と今ホットなブラウザの新技術「Service Worker機能」を組み合わせた次世代のプッシュ機能「Web Push/Push API」について書いてみたいと思います。 ただ、個人的に色々タスク

    Service WorkerとHTTP/2が切り開く新しいWeb Pushの世界 - ぼちぼち日記
    punitan
    punitan 2015/03/20
  • 華麗なる因数分解:FREAK攻撃の仕組み - ぼちぼち日記

    1. はじめに ちょうど今朝 OpenSSLをはじめとした様々なTLS実装の脆弱性の詳細が公表されました。 この InriaとMSRのグループは以前からTLSのセキュリティに関して非常にアクティブに調査・検証をしているグループで、今回も驚きの内容でした。 このグループは、TLSのハンドシェイク時の状態遷移を厳密にチェックするツールを開発し、様々なTLS実装の脆弱性を発見・報告を行っていたようです。 特にFREAKと呼ばれるOpenSSLの脆弱性(CVE-2015-0204)に関しては、ちょうど修正直後の1月初めに Only allow ephemeral RSA keys in export ciphersuites で見ていましたが、具体的にどのように攻撃するのかさっぱりイメージできず、あのグループだからまた超絶変態な手法だろうが、まぁそれほど深刻じゃないだろうと見込んでいました。 今回

    華麗なる因数分解:FREAK攻撃の仕組み - ぼちぼち日記
    punitan
    punitan 2015/03/06
  • Node-v0.12からデフォルトでES6の一部が使えるようになった(WeakMap解説編) - ぼちぼち日記

    このエントリーは、4月24日(木)に行われる「東京Node学園 12時限目」の発表ネタを先出ししたものです。 1. はじめに、 過去2回、Node-v0.12における ES6(ECMAScript6)関連のエントリー*1を続けて書きました Node.jsにPromiseが再びやって来た! Object.observe()とNode.jsのイベントループの関係 いつNodeでES6の機能がデフォルトで使えるようになるのか…と夢見てたのですが、なんとすぐその時がやってきました。 パチパチ! Angular2.0 の開発のため Chrome M35 の機能として先行的に一部ES6対応したようです。 *2 Googleさん、えらい。 Nodeの現リーダTJも、最初はこのV8アップグレードに”ちょっと待った”をしていたみたいですが、今では”現状容認”に変わりました。 今後、V8 3.25で何か問題が

    Node-v0.12からデフォルトでES6の一部が使えるようになった(WeakMap解説編) - ぼちぼち日記
    punitan
    punitan 2014/04/21
  • Node.jsにPromiseが再びやって来た! - ぼちぼち日記

    tl;dr サンプルコードを付けたら記事がかなり長くなってしまったのでご注意下さい。 Node.jsの current master で V8がアップデートされ ES6の Promise が使えるようになりました(要オプションですが)。Promise を使うと Node.jsの非同期処理がどのようになるのか、Stream と Promise を組み合わせた使い方なども含めて紹介します。 1. はじめに Nodeの次期安定版 v0.12は、すぐ出ると言われながら既に v0.10のリリースから1年が過ぎてしまいました。 現在、v0.12の主要な新機能の実装は完了していますが、まだ安定版のリリースに向けて手当できていない部分が残っている感じです。そんな残っている部分の一つだった V8 のアップデートが先週末に行われました。 deps: update v8 to 3.24.40 (3/19現在は

    Node.jsにPromiseが再びやって来た! - ぼちぼち日記
    punitan
    punitan 2014/04/09
  • 隠れていたNode.jsの4バイトメモリリーク、Walmart問題の解決 - ぼちぼち日記

    この記事は、 Node.js Advent Calendar 2013 - Adventar の12日目です。 1. ありがとう Ben Nodeの情報に普段アンテナを張っている人は既にご存じでしょうが、Nodeコア開発の中心的エンジニア Ben Noordhuis がNodeのコアチームから離れました。Node.jsの公式ブログに「Ben Noordhuis's Departure」としてアナウンスされています。 なぜ彼がNodeの開発を止めなければならなかったのかその経緯をここで述べることは控えますが、彼のこれまでの貢献なしでは今のNodeは存在し得なかった、と言えるほど彼は重要な存在でした。Benは、Nodeやlibuvのコードの開発だけでなく、github の issue の回答やPRのレビュー、 MLの質問の返答などNodeコミュニティにも精力的に対応し、去年来日した isaac

    隠れていたNode.jsの4バイトメモリリーク、Walmart問題の解決 - ぼちぼち日記
    punitan
    punitan 2013/12/14
  • Googleの新プロトコルQUICを試す - ぼちぼち日記

    1.QUIC仕様の公開 以前、「Googleが仕掛ける新プロトコルQUICとは何か」のブログエントリーを書いたのが2月末の事でした。それから4か月経ち、今朝Googleが初めてQUICの公表(Chromium Blog: Experimenting with QUIC)を行いました。 IE11のSPDY/3対応が判明した直後でした。なんというタイミングでしょうか。 また、近いうち(来週?)には HTTP/2.0 の Implementation Draft が公開される予定です。8月上旬には、GoogleMicrosoft等が集まって初めての HTTP/2.0 の相互接続試験を行う予定です。ただ今HTTP関連のプロトコルが急激に進化する真っ最中です。目が離せません。 2. で、QUICとは何なのか? 先のChromium BlogのエントリーでQUICは、 「Quick UDP Inte

    Googleの新プロトコルQUICを試す - ぼちぼち日記
    punitan
    punitan 2013/06/29
  • HTML5で Speed Test, Navigation Timing APIによる性能データ収集 - ぼちぼち日記

    今日は、HTML5 Advent Calendar 2011 9日目です。 何を書こうかネタに迷い、ひたすらHTML5のマイナーなAPIをあさっておりました。 FullScreen API/Page Visibility API も既に 登場してしまい、 @sada_h さんから Quota Management API はいかがとお奨めを受けましたがさすがに Quota管理だけでネタを展開するのは辛く、途方に暮れていました。 そんな折、ふと見かけたのが「Navigation Timing API」。マイナーだと思いますねぁ。今回このAPIの紹介とデモをさせていただきます。 Navigation Timing API 「いったい Navigation Timing API は何をするAPIか? 」単純です。 「ブラウザーがWebの画面を表示する時にどこにどれだけ時間がかかているか知るAPI

    HTML5で Speed Test, Navigation Timing APIによる性能データ収集 - ぼちぼち日記
    punitan
    punitan 2012/10/06
  • 1