タグ

セキュリティとRubyに関するbluedayのブックマーク (3)

  • 正規表現によるバリデーションでは ^ と $ ではなく \A と \z を使おう

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

    blueday
    blueday 2014/03/08
    「Rubyの正規表現機能は、デフォルトで複数行モードである」
  • github の mass assignment 脆弱性が突かれた件

    Github に脆弱性。やった人は Rails に有りがちな脆弱性を issue に挙げていたが相手にされず、実際にそれを突いてきた。一見 childish だが、それだけ簡単に脆弱な実装がなされてしまうということだ。週明けの今日、Rubyist はまず関連情報に一読を。 — Yuki Nishijima (@yuki24) March 4, 2012 気になって調べたのでメモ。自分も気をつけないとなー。 Public Key Security Vulnerability and Mitigation - github.com/blog/ github に脆弱性があってそれが突かれたらしい。 Rails アプリにありがちな脆弱性の一つ、Mass assignment とかいうタイプの脆弱性である。 mass assignment 脆弱性とは mass assignment 脆弱性とは何か、

    blueday
    blueday 2012/03/05
    Rails使った事無いけどメモ。
  • WEBrickの非公開ファイルにアクセスされる脆弱性について

    Posted by Shugo Maeda on 3 Mar 2008 Rubyに標準で添付されているWEBrickライブラリにおいて、 このライブラリに含まれるローカルファイルシステム上のファイル (およびディレクトリ)を公開する機能を使用した場合に、公開を意 図していないリソースにアクセスが可能となる問題が発見されました。 特に、Windowsでこの機能を利用した場合には、ディレクトリトラ バーサルにより、プロセスの権限で読み取り可能な任意のファイル に対するアクセスが可能となります。 影響 この脆弱性は以下の状況で発生します。 WEBrick::HTTPServer.newの引数として、 :DocumentRootを指定してファイルを公開する場合 WEBrick::HTTPServlet::FileHandlerサーブレットを 利用してファイルを公開する場合 この脆弱性は以下の環境で

  • 1