タグ

RailsとPHPに関するraimon49のブックマーク (11)

  • DNSリバインディング(DNS Rebinding)対策総まとめ

    サマリ DNSリバインディングが最近注目されている。Google Chromeは最近になってローカルネットワークへのアクセス制限機能を追加しており、その目的の一つがDNSリバインディング対策になっている。Googleが提供するWiFiルータGoogle Nest WiFiはデフォルトでDNSリバインディング対策機能が有効になっている。 DNSリバインディング対策は、攻撃対象アプリケーションで行うべきものであるが、ブラウザ、PROXYサーバー、リゾルバ等でも保護機能が組み込まれている。稿ではそれら対策機能の状況と対策の考え方について説明する。 DNSリバインディング(DNS Rebinding)とは DNSリバインディングはDNS問い合わせの時間差を利用した攻撃です。DNSのTTL(キャッシュ有効期間)を極めて短くした上で、1回目と2回目の問い合わせ結果を変えることにより、IPアドレスのチ

    DNSリバインディング(DNS Rebinding)対策総まとめ
  • 株式会社ドワンゴを退職しました

    ex-dwango.md 株式会社ドワンゴを退職しました 2011年3月15日に就職してから今日で8年と3ヶ月半・・・月にして99ヶ月・・・日数にして実に3033日 と・・・計算している間にも23秒が過ぎてしまったわけですが、株式会社ドワンゴを退職しました。 7月からはクックパッドで働きます。 ドワンゴでやってきたこと 2011年に入社して最初は今は亡きニコニコ静画(電子書籍)のバックエンドの開発をしました。 当時はphp縛りだったので仕方なくphp、こっそり gitを導入して会社の公式リポジトリであるsvnには定期的に git-svn でコピーする仕組みを作ったりしてました。 当時CIはちょっと導入されていたもののCDの概念は存在しなかったので、capistranoでphpをデプロイする仕組みを作ってそれも こっそり 運用していました。 浜町時代からドワンゴ社員御用達 BROZERS'

    株式会社ドワンゴを退職しました
    raimon49
    raimon49 2019/07/01
    自分の思い入れあるサービスが終了するからって退職理由、とても明快で良いな。
  • Mastodon が普及しつつあるけど、元 GNU Social 勢として思うこともありまして

    この記事は、 Mastodon Advent Calendar 2017 の15日目の記事である。 前日の記事は『どうすれば変化するAPIと上手く付き合っていけるのか – Tootle Inside – Medium』、 翌日の記事は『Mastodon フロントエンド改造入門 | THE BOSS's blog』である。 あんただれ GNU Social GNU Social 個人用インスタンス勢 (gnusocial.cardina1.red) nightly 追従勢 クソザコ PR を送ったことはあるが、コードそのものに手を入れたことはない 周辺プラグイン (Qvitter 等)に PR 送ったことはある Mastodon Mastodon 個人インスタンス勢 (mastodon.cardina1.red) master 追従勢 PR とか issue は書いたことなし(純粋なユーザ)

    Mastodon が普及しつつあるけど、元 GNU Social 勢として思うこともありまして
  • PHP 5.0.0が10周年を迎えました - Engine Yard Blog

    記事は英語版ブログで公開された記事の翻訳版です。 10年前の昨日、2004年7月13日、PHP 5.0.0が世界に向けて公開されました。Zend Engine 2を搭載し、実質的に生まれ変わったPHPです。 Zend Engine 2自体はPHP 4.3.0のいくつかのアルファ版から(試験的にですが)すでに公開されていました。一般的なユーザーにとって目立つ大きな違いは、オブジェクトの参照渡しがデフォルトになったことと、新しいオブジェクトモデルのサポートです。細かいことはさておき。 実は、PHP 4以前のPHPは基的に手続き型言語で、クラスやオブジェクトをサポートしてはいましたが、いずれも後付けの機能だったのです。その歴史は現在でもデフォルト機能セットの多くに――最近追加されたパスワードハッシュAPIなどの新機能にさえ――見てとることができます。 それでも、いざ格的な(「マシになっただ

    PHP 5.0.0が10周年を迎えました - Engine Yard Blog
    raimon49
    raimon49 2014/07/28
    >PHP 6.0ブランチが作成される 2005年8月9日 / 黒歴史や……。
  • 正規表現によるバリデーションでは ^ と $ ではなく \A と \z を使おう

    正規表現によるバリデーション等で、完全一致を示す目的で ^ と $ を用いる方法が一般的ですが、正しくは \A と \z を用いる必要があります。Rubyの場合 ^ と $ を使って完全一致のバリデーションを行うと脆弱性が入りやすいワナとなります。PerlPHPの場合は、Ruby程ではありませんが不具合が生じるので \A と \z を使うようにしましょう。 はじめに 大垣さんのブログエントリ「PHPer向け、Ruby/Railsの落とし穴」には、Rubyの落とし穴として、完全一致検索の指定として、正規表現の ^ と $ を指定する例が、Ruby on Rails Security Guideからの引用として紹介されています。以下の正規表現は、XSS対策として、httpスキームあるいはhttpsスキームのURLのみを許可する正規表現のつもりです。 /^https?:\/\/[^\n]+$/

    raimon49
    raimon49 2014/03/04
    >Rubyの正規表現機能は、デフォルトで複数行モードである / ひー。知らなかった。PHPも末尾が改行コードだと挙動が変わる。
  • はじめの言語の賞味期限 - Kato Kazuyoshi

    ライブドアブログの PSGI 化の話 は良いはなしだと思う。一方で、私はあんまり Perl が好きじゃないので、10年にわたって生き続けた Perl アプリケーションが、次の10年にむけてアップをはじめているのは、ちょっとしたホラーでもある。 TwitterRuby と JVM ライブドアブログが、将来に向けて mod_perl から PSGI + Starlet にかえたように、将来に向けてプログラミング言語をかえる人達も存在する。最近の事例で有名なのは、TwitterRuby から JVM 言語群への移行だろう。 OSCON Java 2011 の Twitter: From Ruby on Rails to the JVM では、JVM への移行に至った理由として Ability to handle server workloads A real concurrency

    raimon49
    raimon49 2013/10/03
    >Hack は PHP の文法そのものを拡張し、メソッドの引数や戻り値の型を明示できるようにした言語と、それに対する静的なチェックを行うソフトウェアで構成される / 何じゃこりゃー
  • Selfkleptomaniac — register_globals?そんなのデフォルトでオフですよ

    Blogging is a disease: selfkleptomania, your normal condition. About GPG Public Key Ruby on Railsのmass assignment絡みの脆弱性について、すごくよくまとまった記事。Railsで開発している人は必見ですね。 かつてPHPにはregister_globalsというこれと似た機能があり、現在はデフォルトでオフかつ5.4以降は廃止されたのですが、それまでは散々恐ろしい問題を引き起こしていました。PHPのウェブアプリケーションにセキュリティ問題が多いという評判が定着してしまったのは、これが主な原因といっても過言ではありません。PHPは何年もかけてようやく負の遺産を返済することができたのですが、Railsにはこのregister_globals相当の機能があり、今回見つかった脆弱性はかつてPH

    raimon49
    raimon49 2012/03/05
    歴史は繰り返すw
  • PHPプロジェクトの80-90%は巨大なクソの山であるという事実 : candycane development blog

    面白いエントリを見つけたので和訳しました。PHPが使われていた歴史が古い事や開発者のコミュニティの観点から見たPHP論。読みやすいので早速どうぞ。 なお画像は「各プログラム言語からは各言語オタクがどう見えるか?」です。 原文 Why PHP Was a Ghetto http://codefury.net/2011/04/why-php-was-a-ghetto/ なぜPHPはゲットーだったのか ダンボ地区のかなりクールなス​​タートアップの創始者と私は世の中の多くのPHPの開発者でない人たちがPHPとその周囲のコミュニティを軽蔑するのかについて話していた。彼はとても興味深い点に言及した事が私の印象に残った。なぜなら私はこれまで聞いた事がない点だった。 お気づきかもしれないが、開発者がPHPに対して通常抱く不満は、だいたい以下の通りである: 醜い構文 他の言語が備えているいくつかの必要な

    raimon49
    raimon49 2011/10/04
    Railsの影響でフルスタックのMVCフレームワーク隆盛の時代に入ってからはまともになりつつあるけど、そもそもそれってPHPを作ったRasmusの意図する使われ方とは違うよねという話。個人的にはRubyにもRails以前の時代というの
  • どの言語で書いてもおかしなコードを書く奴は書く

    (Last Updated On: 2013年12月1日)# 書きかけです。後で編集予定 「Web屋のネタ帳」のどの言語で書いてもおかしなコードを書く奴は書くに対するコメントです。その記事にはRubyのまつもと氏のブログの引用もあるのでそちらにも対するコメントでもあります。 言語が良いコードを書けるようサポートする事はできると思います。しかし、言語だけによって良いコード(安全なコード、メンテナンスし易いコードなど)が書けるようにはならないのではないでしょうか? 言語だけでは不十分だからです。 「どの言語で書いてもおかしなコードを書く奴は書く」とは昔から言われてきた事です。同じ人がおかしなコードを書きつづける場合もあるとは思いますが「どの言語のユーザでもおかしなコード(危険なコードであったり、メンテナンスが難しいコード、無駄が多いコード)を書く人はいるものだ」の意味で使われていると思います。

    どの言語で書いてもおかしなコードを書く奴は書く
    raimon49
    raimon49 2008/02/03
    言語としての柔軟さ。
  • Ruby on Railsは万能薬ではない | スラド

    家/.の記事より。O'Reilly Rubyブログに、2 年後私がRuby on RailsからPHPに戻った7つの理由という記事が載り話題に なっている。オンラインCDショップCD Babyの創業者であるミュージシャン兼プログラマのDerek Sivers氏が書い たもので、優秀なRailsプログラマを雇って一緒に2005年から2年間CD Babyのリ ニューアルに取り組んだがうまくいかず、試しに慣れたPHPで書き直してみたら2ヶ月 でローンチできた、という内容。Railsから学んだことも多く、言語として Rubyがダメというわけではないが、古いコードを捨ててRailsに飛びつく前にい ろいろ考えるべきことがある、と結んでいる。

  • 【レポート】Ruby/PHPもサポート! - 開発ツールベンダとして独立したCodeGearの新製品群 (1) スクリプト言語に足りなかった部分の補完 | エンタープライズ | マイコミジャーナル

    米CodeGear アジアパシフィックバイスプレジデントのマルコム・グローヴス氏 27日、米CodeGear アジアパシフィックバイスプレジデントのマルコム・グローヴス氏が来日し、CodeGearが提供する各種新製品の概要とロードマップを発表した。 米CodeGearは、昨年11月にボーランドから独立した開発ツールベンダ(ただし、国内ではボーランドの社内分社として事業を運営)。Delphi、C++Builder、C#Builder、JBuilder、Turbo、Interbaseなどの製品をボーランドから引継ぎ、開発/販売している。 今年3月には、PHP向けの統合開発環境「Delphi for PHP」をリリース。さらに、Ruby向け開発環境を開発中であることも明かしており、独立後は以前を凌ぐ勢いで製品ラインナップの拡充に取り組んでいる。 以下、グローヴス氏の話を基に、CodeGearの新

  • 1