タグ

JSONに関するsasaplus1のブックマーク (16)

  • PHPのJSON HashDosに関する注意喚起

    4年前にHashDos(Hash Collision Attack)に関する効率的な攻撃方法が28C3にて公開され、PHPを含む主要言語がこの攻撃の影響を受けるため対策を実施しました。しかし、PHP以外の言語が、ハッシュが衝突するデータを予測困難にする対策をとったのに対して、PHPは、GET/POST/COOKIE等の入力データの個数を制限するという対症療法を実施したため、PHPにはHashDosに対する攻撃経路がまだ残っているということは、一部の技術者には知られていました。例えば、以下の様なつぶやきにも見ることができます。 だって、 hashdos 脆弱性の時、 Python とかの言語が、外部入力をハッシュに入れるときに衝突を狙えないように対策したのに、phpだけPOST処理で対策したからね? json を受け取るような口もってるphpアプリのほとんどがhashdos残ってるんじゃない

  • HerokuのつくってるAPI関係の便利なやつ - ✘╹◡╹✘

    JSON Schema for the Heroku Platform APIでも紹介されているように、HerokuAPIはJSON schemaで記述されたAPIの仕様を返すようなAPIがあって(ややこしい)、Auto-generating a Go API client for Herokuのようにこれを利用してAPIクライアントを自動生成するようなこともやってる(単なるアート作品じゃなくて実際に運用されているので偉い)。Herokuが出してるAPI関連作品の1つにcommittieというのがあって、JSON schemaを利用してAPIの仕様を定義して、それをRack middlewareで利用しようというもの。前に試しに似たようなのつくってたので良いのが出てきて良かった。 Committieは大きく分けて3種類の機能を提供していて、1つは番環境で普通に使うやつで、リクエストをv

    HerokuのつくってるAPI関係の便利なやつ - ✘╹◡╹✘
  • JSON5をJSONにするGruntプラグインを作った - console.lealog();

    そのまんまです。 参考:leader22/grunt-json5-to-json 参考:grunt-json5-to-json 時間ないのとあまり自信あるコードじゃないのでnpmには上げてませんので、需要がある場合はGithubから。 偉大なる先輩に後押しいただき、さきほどnpmデビューしました。 そもそもJSON5とは 参考:JSON5 by aseemk このリンクのExample見るのが早いです。 普通にJSON書いてて辛いなーと思うであろう、 コメントかけない 改行できない 全部ダブルクオートする面倒さ ケツカンマ勢の発狂 みたいな諸問題を解決してくれるやつです。 コメントかける 複数行の文字列かける jsのObjectみたく、キーにクオートがいらない ケツカンマしても怒られない そんなやつです。 もはやYAML使えみたいな声は、家に言ってください( このプラグインについて コー

    JSON5をJSONにするGruntプラグインを作った - console.lealog();
  • GeoJSON

    GeoJSON GeoJSON is a format for encoding a variety of geographic data structures. { "type": "Feature", "geometry": { "type": "Point", "coordinates": [125.6, 10.1] }, "properties": { "name": "Dinagat Islands" } } GeoJSON supports the following geometry types: Point, LineString, Polygon, MultiPoint, MultiLineString, and MultiPolygon. Geometric objects with additional properties are Feature objects.

  • 機密情報を含むJSONには X-Content-Type-Options: nosniff をつけるべき - 葉っぱ日記

    WebアプリケーションにおいてJSONを用いてブラウザ - サーバ間でデータのやり取りを行うことはもはや普通のことですが、このときJSON内に第三者に漏れては困る機密情報が含まれる場合は、必ず X-Content-Type-Options: nosniff レスポンスヘッダをつけるようにしましょう(むしろ機密情報かどうかに関わらず、全てのコンテンツにつけるほうがよい。関連:X-Content-Type-Options: nosniff つかわないやつは死ねばいいのに! - 葉っぱ日記)。 例えば、機密情報を含む以下のようなJSON配列を返すリソース(http://example.jp/target.json)があったとします。 [ "secret", "data", "is", "here" ] 攻撃者は罠ページを作成し、以下のようにJSON配列をvbscriptとして読み込みます。もちろ

    機密情報を含むJSONには X-Content-Type-Options: nosniff をつけるべき - 葉っぱ日記
  • jqコマンドが実は高性能すぎてビビッた話

    GWが始まりましたが、鎌倉のGWは観光客多すぎて逆に住民はげんなりして外に出なくなる感じです。とはいえ路地まで観光客が攻め込んでくることは少ないので、路地を散歩する分には天気がよくていい感じですね。ちなみに人力車のおにーさんはそういう味のある路地を知り尽くしているので人力車で移動するのはそこそこオススメです(ぼくは乗ったことないけど「こんなところも通るんだ!」ってところで見かけたりします)。 さて、jqというコマンドをご存じでしょうか。 jq jq is a lightweight and flexible command-line JSON processor. と書いてあるとおり、コマンドラインでJSONを扱うことができるコマンドです。で、今まさに仕事で巨大JSONと戦うことが多く、このコマンドが大活躍です。 とはいえ、ぼくの使い方としては「巨大JSONをキレイに整形して表示する」とい

    jqコマンドが実は高性能すぎてビビッた話
  • GoogleのJSON(モドキ)の先頭にwhile(1); がつく理由 - 葉っぱ日記

    なぜGoogleはJSONの先頭に while(1); をつけるのか #JavaScript #HTML #Ajax #StackOverflow - Qiita これはクロスサイト・リクエスト・フォージェリ対策。違うよ!全然違うよ! 攻撃者の作成した罠ページにてJSONを<script src="target.json">みたいに読み込んで、ゴニョゴニョやることでJSON内の機密情報に攻撃者がアクセス可能というのは合ってるけど、それを「クロスサイト・リクエスト・フォージェリ」とは言わない。無理に何か名前をつけて呼ぶとすれば、「JSON Hijacking」という俗称や、あるいは単純にクロスサイトでの情報漏えい、程度ですかね。 ちなみに、ArrayコンストラクタやObjectでのアクセサを定義してJSONをJSとして読み込んで内部にアクセスする手法は、現在のところ公にされているところでは古

    GoogleのJSON(モドキ)の先頭にwhile(1); がつく理由 - 葉っぱ日記
  • なぜGoogleはJSONの先頭に while(1); をつけるのか - Qiita

    while(1);[['u',[['smsSentFlag','false'],['hideInvitations','false'],['remindOnRespondedEventsOnly','true'],['hideInvitations_remindOnRespondedEventsOnly','false_true'],['Calendar ID stripped for privacy','false'],['smsVerifiedFlag','true']]]] これ以外にもGoogleのサービスでは &&&START&&& とか while(1); &&&START&&& てのが先頭に入ってたりするんだけど、これは一体何? 解答 これはクロスサイト・リクエスト・フォージェリ対策。 例えばGoogleが gmail.com/json?action=inbox というURL

    なぜGoogleはJSONの先頭に while(1); をつけるのか - Qiita
  • freshbrewedcode.com

    This domain may be for sale!

  • HaskellでJSON Web APIを作ると幸せになれるかもよ - Fujimura

    先日Yesod勉強会第2回でHaskellでJSON Web APIを作る話しをしました。 内容的には下記のような感じです。 Web開発はクライアントサイドの技術が発達して、Web APIを作る機会が多くなった最近のフロントエンドは難しいし、分業したほうがいいっぽいYesodは独自技術&フルスタックすぎて分業辛いではscotty + persistent + aesonでJSON Web API作ろうぞなんか想像以上の相性の良さ。幸せになれそうなイキフンがビシビシ来てる発表資料はこちら。 ちなみにscottyはsinatraみたいな奴、aesonはJSONライブラリ、persistentはORマッパーです。 何しろaeson + persistentの相性がバッチリでした。発表後に@thimuraさんが見つけた じつは persistent のスキーマ定義で、テーブル名の横に js

    HaskellでJSON Web APIを作ると幸せになれるかもよ - Fujimura
  • 設定ファイルは relaxed JSON でいいんじゃないかとおもった話 - tokuhirom's blog

    設定ファイルは relaxed JSON でいいんじゃないかとおもった話 JSON.pm の relaxed モードについて Perl5 の JSON.pm/JSON::XS では relaxed JSON というものがサポートされている。これは JSON 仕様をゆるくしたもので、 shell style のコメント(# 以後がコメントとなる)のサポートと、ケツコンマのサポートが含まれている。 JSON が設定ファイルとしてつかいづらいといわれる所以はたいがいコメントがつかえないことなので、まあこれなら許容範囲かな、と。mobirc の設定ファイルもこれにしてみました。 JSON の場合は、JS がわかる人なら手でかけるのと、まあわからなくても覚えることがすくないし、覚えても損がない感じがイカス!とおもいました。 他の選択肢 その他の選択肢としては ini や yaml が考えられます。

  • GitHub - kristopolous/TickTick: JSON in your Bash scripts

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - kristopolous/TickTick: JSON in your Bash scripts
  • Amon2とJSONとセキュリティ - tokuhirom's blog

    Amon2とJSONとセキュリティ [1]http://d.hatena.ne.jp/ockeghem/20110907/p1 [2]http://www.atmarkit.co.jp/fcoding/articles/webapp/05/webapp05a.html [3] http://msdn.microsoft.com/ja-jp/asp.net/ff713315 [4] http://labs.cybozu.co.jp/blog/kazuho/archives/2007/01/cross-site_including.php あたりをよんで、JSON とセキュリティについてかんがえてみた。 ここで、有効とされている対策のうち while(1); を先頭に付与する POST ですべて処理する といったあたりは、RESTful でないし、BK 感がひどいというか質的ではないのででき

  • JSONのエスケープをどこまでやるか問題 - 葉っぱ日記

    Ajaxなアプリケーションにおいて、サーバからJSONを返す場合に、JSON自体はvalidであるにも関わらず、(IEの都合で)エスケープが不足していて脆弱性につながってる場合があるので、書いておきます。 発生するかもしれない脆弱性 JSONのエスケープが不足している場合に発生する可能性のある脆弱性は以下の通りです。 JSON内に含まれる機密情報の漏えい XSS それぞれの詳細については後述します。 開発側でやるべきこと 文字列中のUnicode文字は "\uXXXX" な形式にエスケープするとともに、ASCIIな範囲であっても「/」「<」「>」「+」も同様にエスケープすることにより、前述の脆弱性を防ぐことができます。 Perlであれば、以下のような感じになります。JSON->ascii(1) に続けて、JSON文字列を正規表現で置換しているあたりがキモになります。 use utf8; u

    JSONのエスケープをどこまでやるか問題 - 葉っぱ日記
  • CA2011.com - The Official Website of the Copa América 2011

    Health These insects carry enough bacteria to the cause Ezio Palermo June 30, 2019 5246 Struggling to sell one multi-million dollar home currently on the market won’t stop actress and singer Jennifer Lopez from expanding her property collection. Lopez has reportedly added to her real Health Morning people may have the lower breast cancer risk Ezio Palermo June 30, 2019 5478 Struggling to sell one

    CA2011.com - The Official Website of the Copa América 2011
  • subsetじゃない悲しい話 (JSON編) - 枕を欹てて聴く

    https://tc39.github.io/proposal-json-superset/ JSON編以外はありません. Edge case "JSON: The JavaScript subset that isn't Timeless" URL 2011-05-16 15:49:26 via PNBT このような記事が JSON: The JavaScript subset that isn't — Timeless つまり, LineTerminatorに\u2028 / \u2029が含まれない(JSON)ので, StringLiteralがうっかりJSONの方が許容範囲が広がってしまっているという話です. eval('"\u2028"'); // SyntaxError JSON.parse('"\u2028"'); // OK 自作ECMAScript Engine, lv5

  • 1